@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');
/*====================
 全体設定 
 ====================*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Noto Sans JP",sans-serif,"Shippori Mincho B1", serif;
    font-weight: 400;
    font-size: 100%;
    line-height: 2;
    list-style: none;
    text-decoration: none;
    color: #202124;
}

img, video {
    width: 100%;
    margin: 0 auto;
}

head,body,footer {
    justify-content: center;
    align-items: center;
    text-align: center;
}

section,footer {
    width: 100%;
}

/*====================
PC TOP - header
 ====================*/
.swiper {
    position: relative;
}

.swiper_PC {
    display: block;
}

.swiper_SP {
    display: none; 
}

.swiper-pagination {
    z-index: 5;
    margin-bottom: 60px !important;
}

.swiper-pagination-bullet {
    width: 11px;
    height: 11px;
    margin: 0 12px !important;
}

.swiper-toplogo {
    z-index: 1;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
}

.swiper-topblur img {
    z-index: 2;
    position: absolute;
    top: 2px;
    left: 0;
}


.swiper-wrapper img, .swiper-toplogo img,.swiper-topblur img {
    height: auto;
    background-size: cover;
}

.swiper-slide {
    color: #ffffff;
    height: auto;
    text-align: center;
}

header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: flex;
    height: 72px;
}

.top_logo {
    top: 0;
    left: 0;
    position: absolute;
    z-index: 3;
    width: 300px;
    margin-left: 18px;
    margin-top: 18px;
    position: fixed;
    line-height: 0;
    text-align: left;
}

.top_logo p:first-child {
    color: #ffffff;
    font-family: "Shippori Mincho B1", serif;
    font-size: 18px;
    line-height: 1;
}

.top_logo p:last-child {
    color: #ffffff;
    font-family: "Noto Sans JP", serif;
    font-size: 7.5px;
    line-height: 1;
    padding-top: 6px;
}

.logo {
    width: 220px;
    margin-left: 18px;
    margin-top: 18px;
    position: fixed;
    line-height: 0;
    text-align: left;
}

.logo p:first-child {
    color: #ffffff;
    font-family: "Shippori Mincho B1", serif;
    font-size: 18px;
    line-height: 1;
}

.logo p:last-child {
    color: #ffffff;
    font-family: "Noto Sans JP", serif;
    font-size: 7.5px;
    line-height: 1;
    padding-top: 6px;
}

main {
    justify-content: center;
}

.main_nav {
    display: flex;
    text-align: center;
    padding-top: 20px;
}


.site-header-nav {
    margin: 0 0 0 auto;
}

.main_nav a {
    font-family: "Noto Sans JP", serif;
    font-style: normal;
    font-size: 13px;
    color: #ffffff;
}

.menu-item {
    position: relative;
    text-align: center;
}

.main_nav .menu-item{
    width: 160px;
}

/*====================
PC TOP - dropdown-menu
 ====================*/
.drop-menu-list {
    position: relative;
}

.drop-menu-list {
    margin-top: 22px !important; 
}

.drop-menu-item {
    color: #000000;
    background-color: rgba(0, 0, 0, 0.7);
    clip-path: polygon(/*左上*/10% 0%,/*右上*/90% 0%,/*右真ん中*/100% 50%,/*右下*/90% 100%,/*左下*/10% 100%,/*左真ん中*/0 50%);
    padding: 6px;
    margin-bottom: 2px;
}

.drop-menu-item:hover {
    color: #000000;
    background-color:  rgba(255, 255, 255, 0.5);
}

.drop-menu-item:hover a{
    color: #000000;
}

.nav_list {
    margin-top: 12px;
    z-index: 200 !important; 
}

.site-header-nav {
    margin-right:16px;
}

.site-header-navbtn {
    display: none;
    position: fixed;
    top: 8px;
    right: 10px;
    width: 50px;
    height: 50px;
    background: none;
    border: none;
    z-index: 10;
    color: #ffffff; 
} 

.site-header-navbtn span,
.site-header-navbtn::before,
.site-header-navbtn::after {
    width: 30px;
    height: 2.6px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
    top: 50%;
    left: 10px;
    transition: transform .4s;
} 

.site-header-navbtn::before {
    transform: translateY(-8px);
}

.site-header-navbtn::after {
    transform: translateY(8px);
}

.site-header-navbtn::before,
.site-header-navbtn::after {
    content: '';
}

body.is-nav-open .site-header-navbtn span {
    transform: scaleX(0);
}

body.is-nav-open .site-header-navbtn::before {
    transform: translateY(0) rotate(45deg);
}

body.is-nav-open .site-header-navbtn::after {
    transform: translateY(0) rotate(-45deg);
} 

/*====================
 PC TOP - about
 ====================*/
.section_text_pc,
.Copyright small {
    font-family: "Shippori Mincho B1", serif;
}

.section-title_sp,
.section_text_sp {
    display: none;
}

.section-title_pc {
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
    font-size: 42px;
    width: 100%;
    margin-top: 64px;
    margin-bottom: 53.5px;
    text-align: center;
}

.section_text_pc {
    font-size: 22px;
    text-align: center;
    margin: 0 auto;
    line-height: 2;
}

#top_list {
    margin-top: 64px;
    margin-bottom: 64px;
    display: grid;
    gap: 32px;
    grid-template-columns: repeat(2, 510px);
    place-content: center;
}

#top_list a {
    position: relative;
}

#top_list img {
    border-radius: 6px;
}

#top_list h3 {
    position: absolute;
    font-size: 24px;
    font-weight: 800;
    text-shadow:
    2px 2px 10px #ffffff,
    -2px 2px 10px #ffffff,
    2px -2px 10px #ffffff,
    -2px -2px 10px #ffffff;
	width: 50%;
	aspect-ratio: 200 / 173;
	background-color:  rgba(255, 255, 255, 0.5);
	clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    top: 50px;
    left: 130px;
    padding-top: 90px;
    white-space: nowrap;
}

#top_list h3:hover,#top_list h3:active{
    color: #ffffff;
    text-shadow: none;
    background-color:  rgba(0, 0, 0, 0.7);
}

.item {
    text-align: left;
}

/*====================
 PC TOP - news
 ====================*/
#top_news {
    background-color: #D7D7D7;
}

#top_news h2 {
    font-weight: 800;
    font-size: 24px;
    padding-top: 48px;
    padding-bottom: 48px;
}

.news_list {
    padding-bottom: 48px;
    place-content: center;
    margin: 0 auto;
}

.news_wrapper dl {
    width: 1035px;
    flex-wrap: wrap;
}

.news_list dt {
    float: left;
    padding: 10px 0 ;
    padding-left: 100px;
} 

.news_list dd { 
    border-bottom:1px solid #000000;
    padding: 10px 0;
    padding-left: 300px;
    padding-right: 100px;
    text-align: left;
}

.news_list dd:first-of-type {
    border-top:1px solid #000000;
}

.news_list dd a:hover {
    color: #686868;
}

.news_list dd a {
   text-decoration:underline;
}

/*====================
 PC TOP - footer
 ====================*/
footer {
    text-align: center;
    font-size: 10px;
    white-space: nowrap;
}

.footer_wrapper {
    margin: 24px auto;
    display: inline-block;
    max-width: 1920px;
}

.about_allpage div {
    font-size: 135%;
}

.about_company_pc {
    line-height: 1.4rem;
}

.about_company_sp {
    display: none;
}

.about_company_pc li:first-of-type,.about_company_sp li:first-of-type {
    font-size: 20px;
    font-family: "Shippori Mincho B1", serif;
}

.f_title {
    font-weight: 800;
}

.about_allpage  {
    padding-top: 3.8px;
}

.about_company_pc .f_list {
    font-size: 90%;
    line-height: 1.4;
}

.about_company_pc .f_list:nth-child(3){
    padding-bottom: 6px;
}

.footer_nav {
    display: flex;
    line-height: 2rem;
}

.footer_list {
    text-align: left;
    font-size: 16px;
    padding-right: 32px;
}

.about_allpage {
    border-left: 0.8px solid #000000;
    padding-left: 32px;
}

.about_allpage {
    display: flex;
}

.footer_list:last-child {
    padding-right: 0;
}

.Copyright {
    background-color: #686868;
    padding: 20px;
}

.Copyright small {
    color: #ffffff;
    letter-spacing: 0.3px;
}

.p_policy {
    display: none;
}

/*====================
    corporate - PC TOP
====================*/
#message h1, #message h2, #message h3 {
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
}

#message h1 {
    font-size: 42px;
    padding-top: 64px;
    margin-bottom:  53.5px;
}

#message h3 {
    font-size: 22px;
    margin-top: 53.5px;
    margin-bottom:  64px;
}

#message h2 {
    line-height: 2;
    font-size: 22px;
}

#profile {
    background-color: #D7D7D7;
}

.corporate_wrapper_SP {
    display: none;
}

.corporate_wrapper_PC img {
    width: 42px;
    margin: 0;
    padding: 0;
    padding-right: 16px;
}

#corporate img {
    width: auto;
    height: auto;
    object-fit: cover;
}

tbody {
    margin: 0 auto;
}
 
#profile th,#profile td {
    text-align: left;
    vertical-align: top;
}

#profile th {
    width: 180px;
}

#profile td {
    padding-left: 50px;
}

.corporate_wrapper_PC {
    width: 1200px;
    margin: 0 auto;
    padding-bottom: 64px;
}

.corporate_wrapper_PC th,.corporate_wrapper_PC td{
    font-size: 20px;
}

.corporate_title_line {
    border-bottom: solid 1px #000000;
    margin: 0 auto;
    padding-top: 22px;
    margin-bottom: 22px;
}

.corporate_title {
    text-align: left;
    padding-top: 64px;
    font-family: "Shippori Mincho B1", serif;
    font-weight: 600;
    font-size: 38px;
    white-space: nowrap;
}

.howismade_wrapper p {
    font-size: 20px;
}

.corporate_title:before {
    content: url('../img/common/logo_rokaku.svg');
    display: inline-block;
    vertical-align: middle;
    padding-right: 16px;
}

.access_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding-bottom: 64px;
}

.pamphlet_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding-bottom: 64px;
}

.pamphlet_title {
    width: 580px;
    height: 60px;
    text-align:center;
    line-height: 60px;
    border-radius:30px;
    border: solid 2px #000000;
    font-size: 18px;
    margin: 0 auto;
}


.address01 img, .address01 iframe{
    border-radius: 4px;
    width: 580px;   
    height: 464px;
    margin: 0;
    padding: 0;
    justify-content: center;
}

.address02 iframe {
    border-radius: 4px;
    width: 580px;
    height: 480px;
    margin: 0;
    padding: 0;
}

.address02 {
    width: 1200px;
    display: flex;
    gap: 40px;
    justify-content: center;
}

.access_title_01 {
    width: 1200px;
    height: 60px;
    text-align:center;
    line-height: 60px;
    border-radius:30px;
    border: solid 2px #000000;
    font-size: 18px;
    margin: 0 auto;
}

.address02 li h2 {
    width: 580px;
    height: 60px;
    text-align:center;
    line-height: 60px;
    border-radius:30px;
    border: solid 2px #000000;
    font-size: 18px;
    margin: 0 auto;
    margin-bottom: 16px;
}

.address01 {
    padding-top: 16px;
    display: flex;
    gap: 40px;
    justify-content: center;
}

.address_title {
    width: 1200px;
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 0 auto;
}

.address_title h2 {
    width: 600px;
    height: 60px;
    justify-content: center;
}

.space {
    margin-bottom: 80px;
}

address {
    font-style:normal;
}

/*====================
    junhyo　- 
 ====================*/
.junhyo {
    display: flex;
    justify-content: center;
    text-align: left;
    margin: 0 auto;
}

.junhyo img {
    width: 600px;
    height: 600px;
    margin:  auto 0;
    border-radius: 6px;
    margin-right: 50px;
}

.junhyo p {
    width: 600px;
    height: 600px;
    line-height: 1.8;
    font-size: 20px;
}

#howismade {
    text-align: left;
    background-color: #D7D7D7;
}

#howismade img {
    border-radius: 6px;
}

.aboutjunhyo_wrapper,.howismade_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding-bottom: 64px;
}

.how_list {
    margin-top: 64px;
    display: grid;
    gap: 32px;
    grid-template-columns: repeat(3, 375px);
    place-content: center;
}

.how_list h2 {
    font-size: 20px;
    font-weight: 800;
    padding-bottom: 12px;
}

.how_list p {
    padding-top: 12px;
    font-size: 16px;
}

/*====================
    originalbrand　- 
 ====================*/
.original_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding-bottom: 64px;
}

.orijginalice_A {
    display: flex;
    text-align: left;
    margin: 0 auto;
}

.original_wrapper img {
    border-radius: 6px;
    width:800px;
}

.orijinalice_description_SP {
    display: none;
}

.orijinalice_description {
    width: 650px;
    margin-right: 40px;
    font-size: 22px;
}

.orijinalice_description p {
    font-size: 20px;
}

.orijinalice_description h2 {
    padding-top: 36px;
    padding-bottom: 16px;
    font-size: 28px;
    font-weight: 700;
    white-space: nowrap;
}

.orijinalice_img h2 {
    padding-top: 16px;
    padding-bottom: 6px;
    font-size: 22px;
    font-weight: 700;
}

.orijinalice_img h2:first-child {
    padding-top: 8px;
}

.junhyo_wrapper {
    width: 1200px;
    margin: 0 auto;
}

.about_junhyo_description {
    font-size: 20px;
    text-align: left;
    padding-bottom: 64px;
}

.junhyo_wrapper img {
    width: 460px;
}

.j_wrapper {
    display: flex;
    padding-bottom: 64px;
}

.j_wrapper img{
    border-radius: 6px;
    margin: 0 auto;
    justify-content: center;
}

.j_content {
    width: 360px;
    margin: 0 auto;
    text-align: left;
}

#about_junhyo {
    background-color: #D7D7D7;
}

.j_content h2 {
    font-size: 20px;
    font-weight: 700;
    padding-bottom: 12px;
}

.j_content p {
    line-height: 1.5;
    padding-top: 16px;
}

.junhyo_wrapper th {
    margin: 0 auto;
    text-align: left;
}

.junhyo_wrapper table tbody td {
    margin: 0 auto;
    text-align: right;
    padding-right: 100px;
}

.j_comment p {
    margin: 0 auto;
    text-align: left;
}

.junhyo_wrapper table th,.junhyo_wrapper table td {
    border: solid 1px; 
    padding: 0;
    width: 300px;
}

.junhyo_wrapper table tbody tr th {
    border-right: solid 2px;
    padding-left: 16px;
}

.junhyo_wrapper table tbody tr:first-child th,
.junhyo_wrapper table tbody tr:first-child td {
    border-bottom: solid 2px; 
    padding-right: 0;
    text-align: center;
}

.junhyo_wrapper table tbody tr:first-child th {
    padding-left: 0;
}

.junhyo_wrapper table {
    background-color: #ffffff;
    margin: 0 auto;
    border-collapse:  collapse;
    border: solid 2px;
}

.hyou_title {
    font-size: 22px;
    padding-right: 400px;
}

.j_comment {
    text-align: left;
    padding-left: 150px;
}

/*====================
    product　- 
 ====================*/
.product_wrapper {
    width: 1200px;
    margin: 0 auto;
}

.product_contents {
    padding-bottom: 6px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
}

.product_contents img {
    border-radius: 6px;
}

.product_contents img:hover {
    transition: 0.3s;
    filter: brightness(0.9);
}

.product_contents a {
    cursor: pointer;
}

.product_wrapper h2 {
    font-size: 28px;
    font-weight: 800;
    text-align: left;
    padding-bottom: 12px;
}

.product_wrapper h2::before {
    content: url('../img/product/logo.svg');
    display: inline-block;
    vertical-align: middle;
    padding-right: 0px; 
}

.product_body {
    text-align: left;
}

.product_body p:first-child{
    font-size: 22px;
    font-weight: 700;
}

.product_title {
    padding-top: 22px;
    padding-bottom: 6px;
    line-height: 1;
}

.product_description { 
    line-height: 1.8;
}

footer {
    background-color: #ffffff;
}

.footer_color {
    background-color: #D7D7D7;
}

.product_wrapper {
    padding-bottom: 64px;
}

.product_wrapper h2 {
text-wrap: nowrap;
}

/*====================
    contact　- 
 ====================*/
.contact_wrapper {
    width: 1200px;
    margin: 0 auto;
    text-align: left;
    font-size: 16px;
}

.contact_wrapper img {
    scale: 0.8;
    margin-bottom: 48px;
}

.contact_wrapper h2 {
    text-align: left;
    padding-bottom: 44px;
}

.contact_wrapper table {
    width: 1200px;
    border: 1px solid black;
    border-collapse: collapse;
}

.contact_wrapper table {
    border: solid 1px black;
}

.contact_wrapper table td {
    border: solid 1px black;
    text-align: center;
}

.contact_wrapper table tbody th {
    border-bottom: solid 1px black;
    background-color: #D7D7D7;
    text-align: left;
    font-weight: 800;
    font-size: 20px;
    padding-left: 16px;
    width: 400px;
    padding: 20px;
}

.form-required::after {
    content: url('../img/contact/logo_required.svg');
    display: inline-block;
    vertical-align: middle;
    padding-top: 8px;
    padding-left: 10px;
}

.form_field {
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 0.5em 1em;
    height: 3em;
    width: 780px;
}

.address_field {
    width:672px;
    margin-left: 30px;
}

.zipcode {
    width: 200px;
}

.adress_wrapper {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-right: 16px;
    padding-left: 16px;
}

.adress_wrapper div {
    text-align: left;
    margin-bottom: 16px;
}

textarea {
    margin: 20px;
    width: 780px;
    height: 150px;
    resize: none;
}

button {
    background-color: transparent;
    border-style: none;
    cursor:pointer;
    display:block;
    margin:0 auto;
    scale: 0.7;
}

button:hover {
    scale: 0.65;
    transition:.3s;
}

.contact_text01 {
    padding-top: 32px;
    padding-bottom: 32px;
}

.contact_text02,.contact_text03 {
    font-weight: 800;
}

form ul {
    padding-bottom: 32px;
}

.contact_text05,.contact_text06 {
    text-align: center;
}

.contact_text05 {
    background-color: #D7D7D7;
    border: solid 1px;
    padding: 10px;
    margin-top: 48px;
    margin-bottom: 48px;   
}

.input_checkbox {
    margin-right: 16px;
}

.contact_text05::after {
    content: url('../img/contact/logo_required.svg');
    vertical-align: middle;
    margin-left: 30px;
}

/*====================
    thanks　- 
====================*/
.section-thanks {
    padding: 100px 40px;
}

.thanks_h1 {
    font-size: 32px;
    text-align: center;
}

.section-thanks p{
    margin-top: 32px;
    font-size: 16px;
    text-align: center;
}

.thanks_a {
    background-color:#686868;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    margin-top: 100px;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.4rem;
    width: 12em;
    height: 3em;
}

/*====================
    privacy　- 
====================*/
.privacypolicy_wrapper {
    width: 1200px;
    margin: 0 auto;
    text-align: left;
    font-size: 16px;
}

.dashed_line {
    width: 1200px;
    height: 1px;
    background-image: repeating-linear-gradient(90deg, #000000, #000000 12px, transparent 12px, transparent 17px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 1px;
    margin-top: 32px;
    margin-bottom: 32px;
}

.privacypolicy_wrapper h3 {
    font-weight: 800;
    font-size: 18px;
    margin-top: 32px;
}

.privacypolicy_text01 {
    margin-bottom: 16px;
}

.privacypolicy_wrapper p:last-child {
    margin-bottom: 32px;
}

.privacypolicy_text02 {
    padding-bottom: 32px;
}

/*====================
    product01　- 
====================*/
.about_product {
    width: 500px;
}
 
.product_item_wrapper {
    display: flex;
}

.product_item_title {
    text-align: left;
    padding-top: 64px;
    padding-left: 18px;
    font-weight: 800;
    font-size: 38px;
}

.product_item_title:before {
    content: url('../img/product/logo.svg');
    display: inline-block;
    vertical-align: middle;
    padding-right: 12px;
    padding-bottom: 5px;
    scale: 1.8;
}

.product_item_wrapper {
    justify-content: center;
}

.product_item_wrapper img {
    width: 600px;
    height: 600px;
    margin: 0 0;
    margin-right: 100px;
}

.product_item_wrapper p {
    text-align: left;
}

.product_content1 p,.product_content2 p {
    font-size: 20px;
    font-weight: 800;
}

.product_content2 {
    padding-top: 22px;
}

/* TAB（画面幅が791px以上 - 1370px以下）*/
@media screen and (min-width:791px) and (max-width:1279px) {

    /*====================
    TAB TOP - header
    ====================*/
    body {
        min-width:791px;
        max-width:1279px;
        margin-top: 72px;
    }

    .swiper-pagination {
        margin-bottom:-10px !important;
    }

    .swiper-pagination-bullet {
        width: 11px;
        height: 11px;
        margin: 0 12px !important;
    }

    .main_nav .menu-item{
        width: 300px;
    }

    .menu-item {
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .menu-item {
        text-align:  left;
    }

    .drop-menu-item:hover {
        background-color: transparent;
    }

    .drop-menu-item:hover a{
        color: #ffffff;
    }

    .drop-menu-item {
        padding-left: 32px;
    }

    /*====================
    TAB TOP - accordionmenu
    ====================*/
    .site-header-navbtn {
        display: block;
        cursor: pointer;
    }

    .site-header-nav {
        position: fixed;
        width: 260px;
        height: auto;
        right: -260px;
        top: 0;
        margin: 0;
        background-color: rgba(0,0,0,0.8);
        color: #ffffff;
        transition: all .5s;
    } 

    .site-header-nav ul li .nav_list::before {
        content: url('../img/common/lodo_sp.svg');
        vertical-align: middle;
        vertical-align: middle;
        padding-right: 12px;
        padding-top: 6px;
    }

    body.is-nav-open .site-header-nav {
        transform: translateX(-100%);
    }

    .site-header-nav ul li a {
        font-size: 16px;
        position: relative;
        justify-content: left;
    }

    .site-header-nav ul {
        flex-direction: column;
        text-align: left;
    } 

    nav ul li ul li {
	    background: #555;
    }

    .p_policy {
        display: block;
    }

    .nav_list {
        font-weight: 800;
    }

    .drop-menu-item {
        background-color:transparent;
        clip-path: none;
        margin: 0;
    }

    .drop-menu-list {
        display: block;
        visibility: visible;
        margin-top: 0px !important; 
        height: auto;
    }

    .site-header-nav ul li ul li a {
        font-size: 14px;
        font-weight: 300;
        margin: 6px 0;
    }

    .site-header-nav ul li {
        text-align: left;
    }

    .nav_list {
        margin: 0;
    }
    
    .main_nav {
        padding: 28px 0 28px 32px;
    }

    /*====================
    TAB TOP - top_about
    ====================*/
    .section-title_pc {
        font-family: "Shippori Mincho B1", serif;
        font-weight: 500;
        font-size: 30px;
        white-space: nowrap;
    }

    .section_text_pc {
        font-size: 16px;
        white-space: nowrap;
    }

    /*====================
    TAB TOP - top_list
    ====================*/
    #top_list {
        display: grid;
        gap: 32px;
        grid-template-columns: repeat(2, 370px);
        place-content: center;
        font-size: 14px;
    }

    #top_list img {
        height: auto;
    }

    #top_list h3 {
        font-size: 18px;
        top: 40px;
        left: 100px;
        padding-top: 70px;
    }

    .swiper-wrapper img, .swiper-toplogo img,.swiper-topblur img {
    width: auto;
    height: auto;
    object-fit: cover; 
    }

    .swiper-topblur img {
    z-index: 2;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 auto;
    position: absolute;
    top: 2px;
    left: 0;
    }

    /*====================
    TAB TOP - news
    ====================*/
    .news_wrapper dl {
        width: 772px;
    }

    .news_wrapper dt {
        padding-left: 50px;
    } 

    .news_wrapper dd {
        padding-left: 200px;
        padding-right: 50px;
    } 

    /*====================
    TAB TOP - footer
    ====================*/
    .footer_nav {
        display: flex;
        flex-direction: column-reverse;
    }

    .footer_list  {
        text-align: center;
        justify-content: space-between;
        padding: 0;
        margin: 0;
    }

    .about_allpage {
        display: none;
    } 

    .about_company_pc {
        display: none;
    }

    .about_company_sp {
        display: block;
    }
}

/* Mobile（画面幅が790px以下）*/
@media screen and (max-width:790px) {
    body {
        max-width:790px; 
        margin-top: 72px;
    }
    
    .swiper-pagination {
        z-index: 100;
        margin-bottom: -12px !important;
        top: 0;
    }

    .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        margin: 0 16px !important;
    }

    #top_home .swiper_PC {
        display: none;
    }

    #top_home .swiper_SP {
        display: block;
    }

    .main_nav .menu-item{
        width: 300px;
        padding-top: 16px;
    }

    /*====================
    SP TOP - header
    ====================*/
    .drop-menu-list {
        visibility: visible;
    }

    .drop-menu-list {
        display: block;
    }

    .drop-menu-list {
        margin-top: 0px !important; 
        height: auto;
    }

    .menu-item {
        text-align:  left;
    }

    /*====================
    SP TOP - accordionmenu
    ====================*/
    header {
        height: 72px;
    }

    .site-header-navbtn {
        display: block;
        cursor: pointer;
    }

    .site-header-nav {
        position: fixed;
        width: 260px;
        height: auto;
        right: -260px;
        top: 0;
        margin: 0;
        background-color: rgba(0,0,0,0.8);
        color: #ffffff;
        transition: all .5s;
    } 

    body.is-nav-open .site-header-nav {
        transform: translateX(-100%);
    }

    .site-header-nav ul li a {
        font-size: 16px;
        position: relative;
        justify-content: left;
    }

    .site-header-nav ul {
        flex-direction: column;
    } 

    .p_policy{
        display: block;
    }

    .site-header-nav ul li .nav_list::before {
        content: url('../img/common/lodo_sp.svg');
        vertical-align: middle;
        vertical-align: middle;
        padding-right: 12px;
        padding-top: 6px;
    }

    .nav_list {
        width: 300px;
        height: auto;
    }

    .nav_list {
        font-weight: 800;
    }

    .drop-menu-item {
        background-color:transparent;
        clip-path: none;
        margin: 0;
    }

    element.style {
        height: 0;
    }

    .site-header-nav ul li ul li a {
        font-size: 14px;
        font-weight: 300;
        margin: 6px 0;
    }

    .site-header-nav ul li {
        text-align: left;
    }

    .nav_list {
        margin: 0;
    }
    
    .main_nav{
        padding: 28px 0px 28px 38px;
    }

    .drop-menu-item:hover {
        background-color: transparent;
    }

    .drop-menu-item:hover a{
        color: #ffffff;
    }

    .drop-menu-item {
        padding-left: 32px;
    }

    .top_logo {
        top: 0;
        left: 0;
        position: absolute;
        z-index: -10;
        width: 280px;
        margin-left: 16px;
        margin-top: 16px;
        position: fixed;
        line-height: 0;
        text-align: left;
    }
    
    /*====================
    SP TOP - top_about
    ====================*/

    .swiper-wrapper img,.swiper-toplogo img,.swiper-topblur img {
    width: auto;
    height: auto;
    object-fit: cover; 
    }

    .swiper-topblur img {
    z-index: 2;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 auto;
    position: absolute;
    top: 2px;
    left: 0;
    }
    
    .section-title_pc,.section_text_pc {
        display: none;
    }

    .section-title_sp {
        display: block;
        font-family: "Shippori Mincho B1", serif;
        font-weight: 500;
        margin: 22px 16px;
        font-size: 24px;
        line-height: 1.4;
    }

    .section_text_sp {
        display: block;
        font-family: "Shippori Mincho B1", serif;
        font-weight: 400;
        font-style: normal;
        line-height: 2em;
        text-align: center;
        margin: 0 16px;
    }

    /*====================
    SP TOP - top_list
    ====================*/
    #top_list {
        width: 300px;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;
        margin-top: 22px;
        margin-bottom: 22px;
    }

    #top_list img {
        height:auto;
    }

    #top_list h3 {
        font-size: 16px;
        top: 30px;
        left: 70px;
        padding-top: 55px;
    }


    #top_list p,.section_text_sp {
        font-size: 16px;
    }

    /*====================
    SP TOP - news
    ====================*/
    #top_news h2 {
        font-weight: 800;
        font-size: 18px;
        padding-bottom: 12px;
    }

    .news_wrapper dl {
        width: 300px;
        font-size: 12px;
    }

    .news_wrapper dt {
        padding-left: 10px;
    } 

    .news_wrapper dd {
        padding-left: 110px;
        padding-right: 10px;
    } 
    
    /*====================
    SP TOP - footer
    ====================*/
    .footer_nav {
        display: flex;
        flex-direction: column-reverse;
    }

    .footer_list  {
        text-align: center;
        justify-content: space-between;
        font-size: 12px;
        display: inline;
        margin:0;
        padding: 0;
    }
 
    .f_page {
        display: block;
        margin-bottom: 16px;
    }

    .f_item_sp {
        display: flex;
    }

    .about_company_pc li:first-child,.about_company_sp li:first-child {
        font-size: 22px;
    }

    .about_allpage {
        display: none;
    }

    .Copyright {
        font-size: 6px;
    }

    .about_company_pc {
        display: none;
    }

    .about_company_sp {
        display: block;
    }

    /*====================
    SP contact -
    ====================*/
    .contact_wrapper {
        width: 360px;
    }

    .contact_wrapper h2 {
        text-wrap: wrap;
        margin: 0 auto;
    }

    .contact_wrapper table {
        width: 360px;
        font-size: 12px;
    }

    .form_field {
        width: 200px;
    }

    .contact_wrapper table tbody tr th {
        font-size: 12px;
        padding: 10px;
    }

    .form-required::after {
        scale: 0.7;
        padding-top: 0%;
        padding-left: 0px;
    }

    .address_field {
        margin-left: 0px;
    }

    .adress_wrapper label {
        margin-right: 6px;
    }

    /*====================
    SP corporate -
    ====================*/
    .corporate_title {
        padding-top: 32px;
    }

    #message h1 {
        font-size: 30px;
        padding-top: 24px;
        margin-bottom: 36px;
    }

    #message h2 {
        min-width: 360px;
        margin: 0 auto;
        padding: 0 10%;
        font-size: 16px;
    }

    .corporate_wrapper_PC {
        display: none;
    }

    .corporate_wrapper_SP {
        display: block;
        width: 360px;
        margin: 0 auto;
    }

    .corporate_title {
        font-size: 22px;
    }

    .corporate_title::before {
        scale: 0.8;
        padding-right: 0;
    }

    .corporate_title_line {
        width: 360px;
        justify-content: center;
    }

    #profile table {
        width: 360px;
    }

    #profile table tbody tr th, #profile table tbody tr td {
        font-size: 14px;
    }

    #profile .table_01 tbody tr th {
        width: 130px;
    }

    #profile .table_02 tbody tr th {
        width: 130px;
    }

    #profile table tbody tr td {
        padding-left: 0;
    }

    .address01,.address02 {
        display: block;
    }

    .access_wrapper,.address02,#access h2,.pamphlet_wrapper {
        width: 360px;
        margin: 0 auto;
    }

    #access .corporate_wrapper_PC {
        display: block;
    }

    #access #address01 {
        justify-content: center;
    }

    .address01 img, .address01 iframe,.address02 iframe {
        width: 100%;
        height: 100%;
        aspect-ratio: 5 / 4;
        margin: 0 auto;
    }

    .address01 img {
        padding-bottom: 16px;
    }

    .address_title {
        display: block;
        width: 360px;
    }

    .table_02 {
        padding-bottom: 64px;
    }

    .space {
        margin-bottom: 16px;
    }

    .address02 li iframe {
        padding-top: 16px;
    }

    .address02 li {
        padding-bottom: 16px;
    }

    .pamphlet_title {
    width: 360px;
    height: 60px;
    text-align:center;
    line-height: 60px;
    border-radius:30px;
    border: solid 2px #000000;
    font-size: 18px;
    font-weight: 500;
    margin: 0 auto;
    }

    /*====================
    junhyo SP  -
    ====================*/
    .aboutjunhyo_wrapper {
        width: 360px;
    }
    
    .junhyo {
        display: block;
    }

    .junhyo img {
        width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
        margin: 0 auto;
    }
    
    .junhyo p {
        width: 360px;
        height: auto;
        font-size: 16px;
        padding-top: 16px;
    }

    .howismade_wrapper p {
        font-size: 16px;
    }

    .howismade_wrapper {
        width: 360px;
    }

    .how_list {
        display: block;
        margin-top: 32px;
    }

    .how_list div {
        padding-bottom: 24px;
    }

    /*====================
    original SP  -
    ====================*/
    .original_wrapper {
        width: 360px;
    }

    .orijginalice_A {
        display: block;
    }

    .orijinalice_description {
        width: 360px;
        margin-right: 0;
    }

    .orijinalice_description p {
        font-size: 16px;
        padding-bottom: 16px;
    }

    .orijinalice_description .original_title_01,.original_text_01,.orijinalice_description_SP {
        display: none;
    }

    .orijinalice_description_SP {
        display: block;
        padding-top: 16px;
    }

    .orijinalice_description_SP p {
        font-size: 16px;
    }

    .orijinalice_description_SP h2 {
        width: 360px;
        padding-top: 36px;
        padding-bottom: 16px;
        font-size: 18px;
        font-weight: 600;
        white-space: nowrap;
    }

    .junhyo_wrapper {
        width: 360px;
    }

    .about_junhyo_description {
        width: 360px;
        font-size: 16px;
    }

    .j_wrapper {
        display: block;
        padding-bottom: 0;
        width: 360px;
    }

    .j_content {
        padding-bottom: 24px;
        width: 360px;
    }

    .hyou_title {
        padding-right: 0;
        font-size: 16px;
        white-space: nowrap;
    }

    .junhyo_wrapper table tbody tr th ,.junhyo_wrapper table tbody tr td{
        font-size: 12px;
        white-space: nowrap;
    }

    .junhyo_wrapper table tbody tr td {
        padding-right: 12px;
    }

    .j_comment {
        padding-left: 0;
        padding-bottom: 16px;
    }

    .address02 .access_title_02 {
    font-size: 18px;    
    }

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

    /*====================
    product SP  -
    ====================*/
    #orijinalice,.product_wrapper {
        width: 360px;
    }

    .product_contents {
        display: block;
    }

    .product_contents img {
        border-radius: 6px;
    }

    .product_description {
        padding-bottom: 32px;
    }

    /*====================
    privacypolicy SP  -
    ====================*/
    .privacypolicy_wrapper {
        width: 360px;
    }

    .dashed_line {
        width: 355px;
    }

    /*====================
    product item SP  -
    ====================*/
    .about_product {
        width: 360px;
    }

    .product_item_wrapper {
        display: block;
    }

    .product_item_wrapper img {
        width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
        margin: 0 auto;
        margin-bottom: 16px;
    }

    .product_item_title {
        font-size: 28px;
        white-space: nowrap;
        padding-left: 0;
        width: 360px;
    }
    
    .product_item_title:before {
        scale: 1;
        padding-right: 6px;
    }

}