@charset "UTF-8";
#ctsWrapper .ctsArea > div:not(:last-child) {
    margin-bottom: 80px;
}
#ctsWrapper .ctsArea > div.noMarginBtm {
    margin-bottom: 0;
}
.lastmarginBtm {
    margin-bottom: 160px;
}
.lastmarginBtm40 {
    margin-bottom: 40px;
}
.lastmarginBtm60 {
    margin-bottom: 60px;
}
.lastmarginBtm80 {
    margin-bottom: 80px;
}
.lastmarginBtm300 {
    margin-bottom: 300px;
}
.lastPaddingBtm {
    padding-bottom: 160px;
}
.noMarginBtm {
    margin-bottom: 0;
}
.noPaddingBtm {
    padding-bottom: 0;
}
#ctsWrapper.pageEquipments .ctsArea > div.noMarginBtm {
    margin-bottom: 30px;
}
/* CSS Document */
#ctsWrapper.pageArticleDetail > .btnArea,
#ctsWrapper.pageRecruit > .btnArea,
#ctsWrapper.pageProductsList > .btnArea,
#ctsWrapper.pageColumnList > .btnArea,
#ctsWrapper.pageNewsList > .btnArea{
	margin-top: 80px;
}
#ctsWrapper.pageForm > #formCtsAreaWrapper .btnArea{
    margin-top: 80px;
}
.flexBox{
    width: 100%;
	display: flex;
	justify-content: space-between;
}
.flexBox60{
    width: 100%;
	display: flex;
	justify-content: space-between;
    gap: 60px;
}
.flexBox60 > div{
    width: 50%;
}
.flexBox60 > .img{
    width: 50%;
}
.ctsAreaBgWrapperWhite{
    background: #fff;
}
.ctsAreaBgWrapperPaper{
    background: url(../images/bg_paper01.png) repeat center center / auto;
}
.ctsAreaBgWrapperImg{
    background: url(../images/ph_oem_flow_bg.png) no-repeat top / cover;
}
/* ctsArea
============================== */
.ctsAreaFullWidth{
	width: 100%;
	margin: 0 auto;
}
/* product（スライダー）
============================== */
.productsBox{
	width: 100%;
}
.cmnItemProducts{
	width: 360px;
}
.cmnListProducts a{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	padding-inline: 24px;
}
.productsPhArea{
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	width: 300px;
	height: 300px;
	border-radius: 50%;
	padding: 30px;
}
.cmnTxtProducts{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.cmnTxtProducts .listCategory > li {
	border: 1px solid #000;
	padding: 2px 5px;
	font-size: 1.2rem;
}
.cmnTxtProducts .tit{
	font-size: 2.0rem;
	font-weight: var(--bold);
	letter-spacing: 0.2rem;
}
.cmnSwiperBtn{
	background: var(--gold);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	transition: all 0.2s;
}
.listCategory {
    position: static;
}
/* swiper
============================== */
.jsSwiperArticleCard.swiper{
	overflow: visible;
}
.jsSwiperArticleCard .cmnListArticleCard{
	flex-wrap: nowrap;
	justify-content: flex-start;
	gap: 0;
	width: 310px;
}
.jsSwiperArticleCard .swiper-slide{
	transition: all 0.4s;
	/* transform: scale(0.9); */
}
/* .jsSwiperArticleCard .swiper-slide-active {
	transform: scale(1.0);
} */
/* swiper-button */
[class*="jsSwiperBtn"]{
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color:var(--gold);
	position: absolute;
	top: 150px;
	border: 1px solid var(--gold);
	transition: all 0.4s;
}
[class*="jsSwiperBtn"]::before,
[class*="jsSwiperBtn"]::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transition: all 0.4s;
	margin-left: -2px;
}
[class*="jsSwiperBtn"]::before{
	width: 10px;
	aspect-ratio: 1/1;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: translate(-50%, -50%) rotate(45deg);
}
.jsSwiperBtnPrev{
	left: 200px;
	transform: rotate(-180deg);
}
.jsSwiperBtnNext{
	right: 200px;
}
.swiper-pagination {
    position: relative;
    margin-top: 80px;
}
.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: var(--light-gray);
    opacity: 1;
}
.swiper-pagination-bullet-active {
    background: var(--gold);
}
@media (any-hover: hover){
	[class*="jsSwiperBtn"]:hover{
		background-color: #fff;
	}
	[class*="jsSwiperBtn"]:hover:before{
		border-top: 2px solid var(--gold);
		border-right: 2px solid var(--gold);
	}
	[class*="jsSwiperBtn"]:hover:after{
		background-color: #fff;
	}
}
/* 3カラムリスト(ボーダー区切り)
============================== */
.cmnListBorderColumn {
	display: flex;
    flex-wrap: wrap;
	justify-content: center;
	width: 100%;
}
.cmnListBorderColumn > li{
	position: relative;
	padding: 0 10px;
	padding-block: 30px;
}
.cmnListBorderColumn > li:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    background: var(--light-gray);
    z-index: -100;
    opacity: 0;
    transition: 0.4s;
}
.companyList > li{
	width: calc((100% - 0px) / 3);
}
.companyLink::before {
    content: "";
    bottom: -30px;
    left: 50%;
    margin-left: 10px;
    transform: translateX(-50%) rotate(45deg);
}
.companyLink::after {
    content: "";
    bottom: -30px;
    transform: translateX(-50%);
    left: 50%;
}
.companyList > li{
	padding: 30px 10px 60px 10px;
}
@media (any-hover: hover){
	.companyLink:hover::after{
		left: 53%;
	}
	.companyLink:hover::before{
		left: 53%;
	}
}
/* 6カラムリスト(ボーダー区切り)アンカーリンク
============================== */
.cmnAnchorLinkList{
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
	width: 100%;
    gap: 30px 0;
}
.cmnAnchorLinkList > li{
    position: relative;
    width: 100%;
    max-width: 190px;
    max-height: 60px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnAnchorLinkList > li{
	max-height: 120px;
}
.cmnAnchorLinkList > li::after{
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    transform: translateX(-50%) rotate(45deg);
    left: 50%;
    bottom: 10px;
    margin-top: 1px;
    transition: all 0.4s;
}
.cmnAnchorLinkList > li:not(:last-child) {
    border-right: 1px solid #000;
}
.cmnAnchorLinkList > li > a{
	font-size: 1.8rem;
    font-family: var(--noto-serif);
    font-weight: var(--bold);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px 5px 30px 5px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnAnchorLinkList > li > a{
	text-align: center;
}
@media (any-hover: hover){
    .cmnAnchorLinkList > li:hover{
        color: var(--gold);
    }
    .cmnAnchorLinkList > li:hover a{
        opacity: 1;
    }
    .cmnAnchorLinkList > li:hover:after{
        bottom: 0;
        border-right: 1px solid var(--gold);
        border-bottom: 1px solid var(--gold);
        opacity: 1;
    }
}
/*
	タイトル
-----------------------------------------------------------------------------------------------*/
/*
	商品紹介
-----------------------------------------------------------------------------------------------*/
.pageProducts .ctsArea{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 60px;
}
.cmnListArticleCardWrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 60px;
}
.cmnListArticleCard {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
}
.cmnListArticleCard > li {
    width: 240px;
}
.cmnListArticleCard > li a {
    display: flex;
    flex-direction: column;
    position: relative;
}
/* 副作用やリスクタグ
============================== */
.listCategory {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    top: 10px;
    left: 10px;
    z-index: 1;
}
.ItemCategory {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 95px;
    height: 25px;
    padding-inline: 8px;
    font-size: 1.2rem;
    color: #fff;
    background-color: var(--gold);
    line-height: 1.0;
}
/* (英語版)
============================== */
html[lang="en"] .ItemCategory {
    font-size: 1.1rem;
    line-height: 1.2;
    height: 100%;
    padding-block: 6px;
}
.cmnListArticleCard > li figure.img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 240px;
    margin-bottom: 15px;
    background-color: #fff;
    overflow: hidden;
}
.cmnListArticleCard > li figure img {
    display: block;
    width: 100%;
    height: 100%;
	max-height: 240px;
    object-fit: cover;
	transition: all 0.4s;
}
.cmnListArticleCard > li .tit {
    width: 100%;
    margin-bottom: 10px;
    font-size: 2.0rem;
    font-weight: 600;
	letter-spacing: 0.2rem;
}
.cmnListArticleCard > li .txt {
    margin-bottom: 10px;
    font-size: 1.6rem;
    text-align: justify;
}
/* (英語版)
============================== */
html[lang="en"] .cmnListArticleCard > li .txt {
    text-align: left
}
.cmnListArticleCard > li .listTag {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 10px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnListArticleCard > li .listTag {
    margin-bottom: 20px;
}
.cmnListArticleCard > li [class*="listCategory"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}
.cmnListArticleCard > li .categoryPosition {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
}
/* 内容量タグ
============================== */
.tagCapacity {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    padding-inline: 5px;
    font-size: 1.2rem;
    line-height: 1.0;
    background-color: var(--light-gray);
    border-radius: 2px;
}
/* (英語版)
============================== */
html[lang="en"] .tagCapacity {
    font-size: 1.1rem;
    line-height: 1.2;
    height: 100%;
    padding-block: 6px;
}
.dataBtnArea{
   width: 100%;
   position: relative;
}
.cmnTxtLink .btn,
.cmnListArticleCard > li .btn,
.cmnColumnListArticleCard > li .btn {
    width: 30px;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}
.cmnTxtLink .btn::after,
.cmnListArticleCard > li .btn::after,
.cmnColumnListArticleCard > li .btn::after {
    content: "";
    width: 26px;
    aspect-ratio: 1 / 1;
    background-color: var(--gold);
    background-image: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 2px;
    transform: translateY(-50%) scale(0.23);
    transition: all 0.4s;
}
.cmnTxtLink .btn::after{
    background-color: #000;
}
@media (any-hover: hover){
    .cmnTxtLink a:hover,
	.cmnListArticleCard > li a:hover{
		opacity: 1;
	}
    .cmnTxtLink a img,
	.cmnListArticleCard > li a:hover img{
		transform: scale(1.1);
	}
    .cmnTxtLink a:hover .btn::after,
	.cmnListArticleCard > li a:hover .btn::after{
		background-image: url("../images/ico_arrow_wh.svg");
		transform: translateY(-50%) scale(1);
	}
}
/*
	タブ
-----------------------------------------------------------------------------------------------*/
.cmnTabLabel:has(:checked) + .cmnTabPanel {
    display: block;
}
.cmnTabAreaWrapper{
    width: 100%;
    margin-bottom: 0;
}
.cmnListFilterBtn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 20px 30px;
}
.cmnListEraBtn{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 20px 10px;
}
.cmnListEraBtn .btn.is-active,
.cmnListFilterBtn .btn.is-active {
    background-color: var(--gold);
    color: #fff;
    border: none;
}
.cmnListFilterBtn > li {
    max-width: 204px;
    width: 100%;
}
.cmnListEraBtn > li {
    max-width: 85px;
    width: 100%;
}
.cmnListEraBtn .btn,
.cmnListFilterBtn .btn {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: 50px;
    padding: 15px 10px;
    font-size: 1.7rem;
    font-weight: 700;
    color: #000;
    border: 1px solid #000;
    line-height: 1.0;
    transition: all 0.4s;
}
/* (英語版)
============================== */
html[lang="en"] .cmnListEraBtn .btn,
html[lang="en"] .cmnListFilterBtn .btn {
    align-items: center;
    min-height: 70px;
    line-height: 1.2;
    text-align: center;
}
.cmnListFilterBtn .btn {
    font-family: var(--noto-serif);
}
.cmnListEraBtn .btn > span,
.cmnListFilterBtn .btn > span {
    font-size: 1.4rem;
}
.cmnListEraBtn .btn.longtxt > span,
.cmnListFilterBtn .btn.btn.longtxt > span {
    font-size: 1.3rem;
}
/* hover */
@media (any-hover: hover) {
    .cmnListEraBtn > li a:hover:not(.is-active),
	.cmnListFilterBtn > li a:hover:not(.is-active) {
		background-color: var(--gold-80);
        opacity: 1;
        color: #fff;
        border: 1px solid var(--gold-80);
	}
    .cmnListEraBtn > li a.is-active:hover,
    .cmnListFilterBtn > li a.is-active:hover {
		background-color: var(--gold-80);
        opacity: 1;
	}
}
.cmnTabPanelTit {
    margin-bottom: 30px;
    font-size: 2.2rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.3rem;
}
/*
	商品紹介（詳細ページ）
-----------------------------------------------------------------------------------------------*/
.cmnTitArticleCenter {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 80px;
    position: relative;
    text-align: center;
}
.cmnTitArticleCenter .tit {
    font-size: 4.5rem;
    font-weight: var(--bold);
    font-family: var(--noto-serif);
}
.pageProductsList .cmnCtsFullWidth {
    margin-bottom: 60px;
}
/* 副作用やリスクタグ(詳細ページ)
============================== */
.pageProductsList .categoryTag {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}
/* 効能・効果、用法・用量、成分・分量
============================== */
.cmnCtsFullWidth {
    display: flex;
    align-items: center;
    gap: 60px;
    /* margin-bottom: 60px; */
}
.cmnBoxFullWidthArea{
    width: 50%;
}
.cmnBoxFullWidthArea > iframe{
    width: 100%;
    height: 100%;
    min-height: 400px;
}
.cmnCtsFullWidth > .img{
    width: 50%;
}
.cmnProductsDetailWidthArea {
    width: 50%;
}
.cmnProductsFullWidthArea{
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.pageProductsList .cmnCtsFullWidth .cmnImg {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    background: #fff;
    padding: 30px;
}
.cmnTitBtmLineProducts{
    display: flex;
    align-items: flex-end;
    gap: 5px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 2.2rem;
    font-weight: 600;
    color: #000;
    position: relative;
    border-bottom: 1px solid var(--gold);
    z-index: 0;
}
.cmnTitBtmLineProducts > span{
    font-size: 1.4rem;
    letter-spacing: 0.2rem;
}
/* (英語版)
============================== */
html[lang="en"] .cmnTitBtmLineProducts > span{
    font-size: 1.2rem;
}
.cmnTxtBase {
    /* text-align: justify; */
    font-size: 1.6rem;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
#newsListCtsAreaWrapper .cmnTxtBase,
#ColumnListCtsAreaWrapper .cmnTxtBase {
    gap: 60px;
}
#newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase,
#ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase {
    gap: 30px;
}
.cmnTxtBase > p {
    line-break: strict;
    line-height: 2.0;
}
.cmnTxtBase > p > a {
    display: inline-block;
    text-decoration: underline;
    transition: .2s;
}
.cmnTxtBase strong {
    font-weight: var(--black);
}
.cmnTxtBase .cmnTxtBaseList > li {
    display: flex;
    align-items: center;
    gap: 30px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnTxtBase .cmnTxtBaseList > li {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
}
.cmnTxtBase .cmnTxtBaseList > li:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--light-gray);
}
.cmnTxtBase .cmnTxtBaseList > li > .cmnTxtCategorize{
    border: 1px solid var(--gold);
    background: var(--gold-20);
    padding: 2px 5px;
    font-size: 1.6rem;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--gold);
    font-weight: var(--medium);
    width: 80px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnTxtBaseList > li > .cmnTxtCategorize{
    width: auto;
}
/* (繁体中文版)
============================== */
html[lang="zh-TW"] .cmnTxtBaseList > li > .cmnTxtCategorize{
    width: 120px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnTitBgLineTxtArea{
    height: 100%;
    min-height: 300px;
}
.cmnTxtListProducts{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.cmnTxtListProducts > li{
    display: flex;
    justify-content: space-between;
    font-size: 1.6rem;
    border-bottom: 1px solid var(--light-gray);
    padding-bottom: 10px;
}
.cmnNotoProducts{
    font-size: 1.6rem;
    display: flex;
}
.cmnNotoProducts > p.txt{
    word-break: keep-all;
    line-break: strict;
}
/* 説明書PDF
============================== */
.cmnCtsInstructions{
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 101;
    padding: 60px;
    margin-bottom: 60px;
}
.cmnCtsInstructions::after{
    content: "";
    background: #fff;
    opacity: 0.5;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    z-index: -100;
}
.cmnCtsInstructions > p > a{
    color: var(--orange);
    text-decoration: underline;
    cursor: pointer;
}
/* お買い求めはこちら
============================== */
.cmnCtsOrderBtnWrapper{
    text-align: center;
    font-size: 4.5rem;
    font-weight: var(--bold);
}
.cmnCtsOrderBtnWrapper .tit{
    border-bottom: 1px solid #000;
    padding-bottom: 40px;
    margin-bottom: 40px;
}
.cmnCtsOrderBtnArea{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
.btnOrder{
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    width: 100%;
    height: 160px;
    max-width: 360px;
    padding: 40px;
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.2);
}
/* hover */
@media (any-hover: hover) {
    .cmnTxtBase a:hover {
        color: var(--gold);
        opacity: 1;
    }
	.cmnCtsInstructions > p > a:hover{
        opacity: 0.5;
        text-decoration: none;
    }
    .btnOrder:hover{
        opacity: 1;
        box-shadow: 0 0 15px 0px rgba(0, 0, 0, 0.5);
    }
}
/*
	コラム
-----------------------------------------------------------------------------------------------*/
.pageColumn .ctsArea {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 60px;
}
.cmnColumnListArticleCard {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}
.cmnColumnListArticleCard > li {
    width: 261px;
}
.noPosts {
    margin: 0 auto;
}
.cmnColumnListArticleCard > li figure.img {
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    object-fit: cover;
    overflow: hidden;
	transition: all 0.4s;
}
.cmnColumnListArticleCard > li figure img {
    display: block;
    width: 100%;
    height: 100%;
	max-height: 240px;
    object-fit: cover;
	transition: all 0.4s;
}
.cmnColumnListArticleCard > li a {
    display: flex;
    flex-direction: column;
    position: relative;
    background: #fff;
    height: 100%;
}
.cmnColumnListArticleCard > li .tit {
    width: 100%;
    margin-bottom: 10px;
    font-size: 1.5rem;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    color: var(--gold);
}
.cmnColumnListArticleCard > li .txt {
    margin-bottom: 10px;
    font-size: 1.2rem;
    text-align: justify;
}
html[lang="en"] .cmnColumnListArticleCard > li .txt {
    text-align: left;
}
.cmnColumnListArticleCard > li [class*="listCategory"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}
.cmnColumnListArticleCard > li .categoryPosition {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
}
.listCategory > .useful, 
.listCategory > .manufactur {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    padding: 5px;
    font-size: 1.4rem;
    color: #fff;
    line-height: 1.0;
}
.listCategory > .useful::before,
.listCategory > .manufactur::before {
    content: none;
}
.listCategory > .useful {
    background-color: var(--orange);
}
.listCategory > .manufactur {
    background-color: var(--blue);
}
.cmnColumnListArticleCard > li .TxtArea {
    padding: 25px 20px 25px 20px;
}
.cmnColumnListArticleCard > li .dataBtnArea .date {
    font-size: 1.2rem;
    color: var(--gold-50);
    font-weight: var(--bold);
    font-family: var(--roboto);
}
.cmnPager {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 15px;
}
.cmnPagerNum {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    aspect-ratio: 1 / 1;
    padding-inline: 10px;
    border: 1px solid #000;
    font-size: 1.2rem;
    font-weight: 600;
    color: #000;
    transition: all 0.4s;
}
.cmnPagerNum.isCurrent {
    background-color: var(--gold);
    color: #fff;
    pointer-events: none;
    border: 1px solid var(--gold);
}
.cmnPagerPrev, 
.cmnPagerNext {
    width: 50px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    border: 1px solid #000;
    position: relative;
    transition: all 0.4s;
}
.cmnPagerPrev{
    background-color: #fff;
    transform: rotate(-180deg);
}
.cmnPagerNext {
    background-color: #000;
}
.cmnPagerPrev::before, .cmnPagerPrev::after, 
.cmnPagerNext::before, .cmnPagerNext::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transition: all 0.4s;
}
.cmnPagerPrev::before, 
.cmnPagerNext::before {
    width: 10px;
    aspect-ratio: 1 / 1;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(-50%, -50%) rotate(45deg);
}
.cmnPagerPrev::before{
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.cmnPagerNext::before {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.cmnPagerPrev::after, 
.cmnPagerNext::after {
    width: 10px;
    height: 2px;
    background-color: #000;
    transform: translate(-50%, -50%);
}
.cmnPagerPrev::after{
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.cmnPagerNext::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
/* hover */
@media (any-hover: hover) {
    .cmnTxtLink a:hover,
	.cmnColumnListArticleCard > li a:hover{
		opacity: 1;
	}
    .cmnTxtLink a img,
	.cmnColumnListArticleCard > li a:hover img{
		transform: scale(1.1);
	}
    .cmnTxtLink a:hover .btn::after,
	.cmnColumnListArticleCard > li a:hover .btn::after{
		background-image: url("../images/ico_arrow_wh.svg");
		transform: translateY(-50%) scale(1);
	}
	.cmnPagerNum:hover{
        background: var(--gold);
        border: 1px solid var(--gold);
        opacity: 1;
        color: #fff;
    }
    .cmnPagerPrev:hover{
        background-color: #000;
        opacity: 1;
    }
    .cmnPagerNext:hover{
        background-color: #fff;
        opacity: 1;
    }
    .cmnPagerPrev:hover::before{
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .cmnPagerNext:hover::before {
        border-top: 2px solid #000;
        border-right: 2px solid #000;
    }
    .cmnPagerPrev:hover::after{
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .cmnPagerNext:hover::after {
        border-top: 2px solid #000;
        border-right: 2px solid #000;
    }
}
/*
	コラム & お知らせ(詳細)
-----------------------------------------------------------------------------------------------*/
/* #ColumnListCtsAreaWrapper .ctsArea > div:not(:last-child) {
    margin-bottom: 0;
} */
/* cmnTitArticle
============================== */
.cmnTitArticle .sub {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
#newsListCtsAreaWrapper .cmnTitArticle .sub > ul,
#ColumnListCtsAreaWrapper .cmnTitArticle .sub > ul {
    margin-bottom: 0;
} 
.cmnTitArticle .date{
    font-weight: var(--bold);
    font-size: 1.6rem;
    letter-spacing: 0.1rem;
}
.cmnTitArticle .tit{
    font-weight: var(--bold);
    font-size: 3.0rem;
    letter-spacing: 0.4rem;
    border-bottom: 1px solid #000;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
#newsListCtsAreaWrapper .cmnRecommendBtnArea > a, 
#ColumnListCtsAreaWrapper .cmnRecommendBtnAreaFour > a {
    margin-bottom: 0;
}
/* コラム詳細 & お知らせ詳細　本文
============================== */
/* CMS用　*/
#newsListCtsAreaWrapper p,
#ColumnListCtsAreaWrapper p{
    font-size: 1.6rem;
    /* margin-bottom: 60px; */
}
/* CMS用　*/
#newsListCtsAreaWrapper p strong,
#ColumnListCtsAreaWrapper p strong{
    font-weight: var(--bold);
}
/* CMS用　*/
#newsListCtsAreaWrapper p strong,
#ColumnListCtsAreaWrapper p strong{
    font-weight: var(--bold);
}
/* CMS用　*/
#newsListCtsAreaWrapper p > a,
#ColumnListCtsAreaWrapper p > a {
    display: inline-block;
    text-decoration: underline;
    padding-right: 0;
    margin-top: 0;
    margin-bottom: 0;
    cursor: pointer;
    transition: .2s;
    position: relative;
}
#newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a,
#ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a{
    padding-right: 40px;
}
#newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::before,
#ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::before{
    content: "";
    width: 30px;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}
#newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::after, 
#ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::after {
    content: "";
    width: 26px;
    aspect-ratio: 1 / 1;
    background-color: var(--gold);
    background-image: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 2px;
    transform: translateY(-50%) scale(0.23);
    transition: all 0.4s;
}
#newsListCtsAreaWrapper p:has(+ a),
#ColumnListCtsAreaWrapper p:has(+ a){
    font-size: 1.6rem;
    margin-bottom: 30px;
}
/* hover */
@media (any-hover: hover) {
    #newsListCtsAreaWrapper p a:hover,
    #ColumnListCtsAreaWrapper p a:hover {
        color: var(--gold);
        opacity: 1;
    }
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover{
		opacity: 1;
	}
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover::before,
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover::before{
		transform: scale(1.1);
	}
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover::after,
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a:hover::after{
		background-image: url("../images/ico_arrow_wh.svg");
		transform: translateY(-50%) scale(1);
	}
}
/* コラム詳細 & お知らせ詳細　画像
============================== */
/* CMS用　*/
#newsListCtsAreaWrapper img,
#ColumnListCtsAreaWrapper img {
    max-width: 100%;
    width: auto;
    display: flex;
    margin: 0 auto;
}
/* CMS用　*/
#newsListCtsAreaWrapper figure,
#ColumnListCtsAreaWrapper figure {
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin: 0 auto;
}
#newsListCtsAreaWrapper figure >img,
#ColumnListCtsAreaWrapper figure > img {
    margin: 0;
}
/* CMS用　*/
#newsListCtsAreaWrapper figure > figcaption,
#ColumnListCtsAreaWrapper figure > figcaption {
    font-size: 1.2rem;
}
/* コラム詳細 & お知らせ詳細　タイトル
============================== */
#newsListCtsAreaWrapper h1,
#ColumnListCtsAreaWrapper h1 {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    padding-left: 10px;
    font-weight: 600;
    line-height: 1.6;
    border-left: 6px solid var(--gold);
    letter-spacing: 0.2rem;
    font-size: 2.4rem;
}
#newsListCtsAreaWrapper .cmnTitArticle h2,
#ColumnListCtsAreaWrapper .cmnTitArticle h2 {
    font-weight: var(--bold);
    font-size: 3.0rem;
    letter-spacing: 0.4rem;
    border-bottom: 1px solid #000;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
#newsListCtsAreaWrapper .cmnTitBtmLineCenterBlack h2,
#ColumnListCtsAreaWrapper .cmnTitBtmLineCenterBlack h2 {
    font-family: var(--noto-serif);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    font-size: 4.5rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.8;
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}
#newsListCtsAreaWrapper h2,
#ColumnListCtsAreaWrapper h2 {
    display: flex;
    align-items: center;
    font-size: 2.2rem;
    font-weight: var(--bold);
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #000;
    letter-spacing: 0.2rem;
}
#newsListCtsAreaWrapper h3,
#ColumnListCtsAreaWrapper h3 {
    display: flex;
    align-items: center;
    font-size: 2.4rem;
    font-weight: var(--bold);
    background: var(--gold);
    padding: 10px 20px;
    letter-spacing: 0.2rem;
    color: #fff;
    margin-bottom: 20px;
}
#newsListCtsAreaWrapper h4,
#ColumnListCtsAreaWrapper h4 {
    font-size: 2.2rem;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
#newsListCtsAreaWrapper h5,
#ColumnListCtsAreaWrapper h5{
    font-size: 2.0rem;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
#newsListCtsAreaWrapper h6,
#ColumnListCtsAreaWrapper h6{
    font-size: 1.6rem;
    position: relative;
    padding-left: 20px;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
#newsListCtsAreaWrapper h6::before,
#ColumnListCtsAreaWrapper h6::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 100px;
    margin-top: 1px;
    z-index: 101;
}
#newsListCtsAreaWrapper h6::after,
#ColumnListCtsAreaWrapper h6::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: var(--gold);
    border-radius: 100px;
    margin-top: 1px;
    z-index: 100;
}
#newsListCtsAreaWrapper h6 > p,
#ColumnListCtsAreaWrapper h6 > p {
    font-size: 2.0rem;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 0;
}
/* コラム詳細 & お知らせ詳細　リンク
============================== */
/* CMS用　*/
#newsListCtsAreaWrapper a,
#ColumnListCtsAreaWrapper a {
    position: relative;
    padding-right: 40px;
    /* margin-bottom: 60px; */
    display: inline-flex;
}
#newsListCtsAreaWrapper a > p,
#ColumnListCtsAreaWrapper a > p {
    width: 30px;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
}
#newsListCtsAreaWrapper a > p::after,
#ColumnListCtsAreaWrapper a > p::after {
    content: "";
    width: 26px;
    aspect-ratio: 1 / 1;
    background-color: #000;
    background-image: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 2px;
    transform: translateY(-50%) scale(0.23);
    transition: all 0.4s;
}
/* hover */
@media (any-hover: hover) {
    #newsListCtsAreaWrapper a:hover,
    #ColumnListCtsAreaWrapper a:hover{
        opacity: 1;
        color: var(--gold);
    }
    #newsListCtsAreaWrapper a.btnSmall:hover,
    #ColumnListCtsAreaWrapper a.btnSmall:hover{
        opacity: 1;
        color: #fff;
    }
    #newsListCtsAreaWrapper a:hover > p::after,
    #ColumnListCtsAreaWrapper a:hover > p::after{
        background-image: url("../images/ico_arrow_wh.svg");
        transform: translateY(-50%) scale(1);
    }
}
/* コラム詳細 & お知らせ詳細　リスト
============================== */
.cmnListArticle{
    font-size: 1.6rem;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
/* CMS用　*/
#newsListCtsAreaWrapper ul,
#ColumnListCtsAreaWrapper ul {
    font-size: 1.6rem;
    display: flex;
    flex-direction: column;
    gap: 20px;
    /* margin-bottom: 60px; */
}
.cmnListArticle .tit{
    font-weight: var(--bold);
    position: relative;
    padding-left: 15px;
}
/* CMS用　*/
#newsListCtsAreaWrapper ul p,
#ColumnListCtsAreaWrapper ul p {
    font-weight: var(--bold);
    position: relative;
    padding-left: 15px;
    margin-bottom: 0;
}
#newsListCtsAreaWrapper p.tit,
#ColumnListCtsAreaWrapper p.tit {
    font-weight: var(--bold);
    position: relative;
    padding-left: 15px;
    margin-bottom: 20px;
}
#newsListCtsAreaWrapper p.tit::before,
#ColumnListCtsAreaWrapper p.tit::before{
    content: "";
    width: 10px;
    height: 10px;
    background: var(--gold);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin-top: 1px;
}
.cmnListArticle .tit::before{
    content: "";
    width: 10px;
    height: 10px;
    background: var(--gold);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin-top: 1px;
}
/* CMS用　*/
#newsListCtsAreaWrapper ul p::before,
#ColumnListCtsAreaWrapper ul p::before{
    content: "";
    width: 10px;
    height: 10px;
    background: var(--gold);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin-top: 1px;
}
.cmnListArticle > li{
    position: relative;
}
/* CMS用　*/
#newsListCtsAreaWrapper ul li,
#ColumnListCtsAreaWrapper ul li{
    position: relative;
    line-height: 1.7;
}
/* .cmnListArticle > li::before{
    content: "・";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin-top: 1px;
} */
/* cmnTitLeftLine
============================== */
[class^="cmnTitLeftLine"] {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    padding-left: 10px;
    font-weight: 600;
    line-height: 1.6;
    border-left: 6px solid var(--gold);
    letter-spacing: 0.2rem;
}
.cmnTitLeftLineM {
    font-size: 2.4rem;
}
.cmnTitBtmLineM{
    display: flex;
    align-items: center;
    font-size: 2.2rem;
    font-weight: var(--bold);
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #000;
    letter-spacing: 0.2rem;
}
.cmnTitBgLineArea{
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.pageOem .cmnTitBgLineArea{
    justify-content: space-between;
}
.cmnTitBgLineM{
    display: flex;
    align-items: center;
    font-size: 2.4rem;
    font-weight: var(--bold);
    background: var(--gold);
    padding: 10px 20px;
    letter-spacing: 0.2rem;
    color: #fff;
    margin-bottom: 20px;
}
.cmnTitBgLineAccess{
    display: inline-flex;
    align-items: center;
    font-size: 1.6rem;
    background: var(--gold);
    padding: 3px 10px;
    letter-spacing: 0.2rem;
    color: #fff;
    line-height: 1.8;
    margin-bottom: 20px;
}
.cmnTitL{
    font-size: 2.2rem;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
.cmnTitM{
    font-size: 2.0rem;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
.cmnTitS{
    font-size: 1.6rem;
    position: relative;
    padding-left: 20px;
    display: flex;
    align-items: center;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
    margin-bottom: 20px;
}
.cmnTitS::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 100px;
    margin-top: 1px;
    z-index: 101;
}
.cmnTitS::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: var(--gold);
    border-radius: 100px;
    margin-top: 1px;
    z-index: 100;
}
.cmnTxtLink > a{
    position: relative;
    padding-right: 40px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnTxtLink > a{
    display: flex;
    text-align: left;
}
/* (繁体中文版)
============================== */
html[lang="zh-TW"] .cmnTxtLink > a{
    display: flex;
    text-align: left;
}
/* cmnImgMain
============================== */
.cmnImgMain{
    width: 100%;
}
.cmnImg1000{
    width: var(--width-1000);
    margin: 0 auto;
    padding-inline: 30px;
}
.cmnImg900{
    width: var(--width-900);
    margin: 0 auto;
    padding-inline: 30px;
}
/*
	お知らせ
-----------------------------------------------------------------------------------------------*/
.cmnListNewsWrapper{
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.pageNews[class^="cmnTitBtmLineCenter"] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 40px;
    margin-bottom: 80px;
}
.cmnListNews {
    display: flex;
    flex-direction: column;
    width: 100%;
    border-top: 1px solid var(--light-gray);
}
.cmnListNews > li {
    border-bottom: 1px solid var(--light-gray);
}
.cmnListNews > li a {
    display: flex;
    align-items: center;
    gap: 30px;
    min-height: 70px;
    padding: 50px 60px 50px 20px;
    position: relative;
    width: 100%;
    z-index: 100;
}
.cmnListNews > li a:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    background: var(--light-gray);
    z-index: -100;
    opacity: 0;
    transition: 0.4s;
}
.cmnListNews > li .dateArea {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 220px;
}
.cmnListNews > li .tit {
    text-align: justify;
    letter-spacing: 0.2rem;
    font-size: 1.6rem;
}
/* (英語版)
============================== */
html[lang="en"] .cmnListNews > li .tit {
    text-align: left;

}
.cmnListNews > li .date {
    font-family: var(--noto-serif);
    font-weight: var(--black);
}
[class^="news_"] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 22px;
    font-size: 1.2rem;
    color: #fff;
    line-height: 1.0;
    letter-spacing: 0.1rem;
}
/* (英語版)
============================== */
html[lang="en"] [class^="news_"] {
    width: 100%;
    height: 100%;
    padding: 3px;
    min-width: 110px;
}
.news_topics {
    background-color: var(--green);
}
.news_products {
    background-color: var(--light-green);
}
/* hover */
@media (any-hover: hover) {
    .cmnListNews > li a:hover{
        opacity: 1;
    }
    .cmnListNews > li a:hover:after {
        opacity: 0.3;
    }
}
/*
	お問い合わせ（フォーム）
-----------------------------------------------------------------------------------------------*/
.pageForm .cmnTxtBase {
    gap: 30px;
}
.cmnListForm{
    font-size: 1.2rem;
    gap: 10px;
}
.formItem{
    display: flex;
    align-items: flex-start;
    padding: 40px 0;
    border-bottom: 1px solid #d5d5d5;
}
.formItem:first-child {
    padding: 0 0 40px 0;
}
.formItem:nth-last-child(2) {
    border-bottom: none;
    padding: 40px 0 0 0;
}
/* 
    ラベル
=========================== */
.formItem > label{
    font-size: 1.6rem;
    font-weight: var(--bold);
    width: 100%;
    max-width: 200px;
}
.required {
    color: var(--red);
    margin-left: 3px;
}
/* 
    入力欄
=========================== */
.formInput {
    width: 100%;
}
.InputShort{
    max-width: 320px;
}
.formInput input,
.formInput textarea {
    width: 100%;
    border: 1px solid #919599;
    background: #fff;
    font-size: 1.5rem;
    color: #000;
    box-sizing: border-box;
    outline: none;
}

.formInput input {
    height: 46px;
    padding: 15px 10px;
}

.formInput textarea {
    min-height: 200px;
    padding: 18px;
    resize: vertical;
}

::placeholder {
    color: var(--light-gray);
}
textarea::placeholder{
    color: var(--light-gray);
}
/* focus */

.formInput input:focus,
.formInput textarea:focus {
    border-color: #888;
}

/*============================
セレクトボックス
============================*/

.formInputSelect {
    position: relative;
    width: 100%;
}
.formSelect {
    display: flex;
    align-items: center;
    width: 100%;
    height: 46px;
    padding: 0 10px;
    font-size: 1.5rem;
    color: #000;
    background: #fff;
    border: 1px solid #919599;
    border-radius: 0;
    cursor: pointer;
    /* デフォルト矢印を消す */
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}
/* IE */
.formSelect::-ms-expand {
    display: none;
}
/* 矢印 */
.formInputSelect::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 12px solid #000;
    transform: translateY(-35%);
    pointer-events: none;
}
/* フォーカス */
.formSelect:focus {
    outline: none;
    border-color: #888;
}

.formSelect.is-placeholder {
    color: #a8a8a8;
}

/*----------------------------
チェックボックス
----------------------------*/
.formCheck {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 1.6rem;
    font-weight: var(--bold);
}

/* inputを非表示 */
.formCheckBox {
    display: none;
}

/* チェックボックス四角 */
.formCheckMark {
    position: relative;
    width: 20px;
    height: 20px;
    border: 1px solid #999;
    background: #fff;
}
/* チェック */
.formCheckBox:checked
+ .formCheckMark::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 5px;
    height: 12px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: translate(-50%,-50%) rotate(45deg);
    margin-top: -1px;
}

/*----------------------------
利用規約
----------------------------*/

.formPrivacy {
    margin-top: 30px;
    padding: 30px;
    height: 200px;
    overflow-y: auto;
    background: rgba(70,70,70,.10);
}

.formPrivacy p {
    line-height: 2;
    font-size: 1.5rem;
}

.formPrivacy p + p {
    margin-top: 30px;
}
/*----------------------------
入力エラー
----------------------------*/
.txtError{
    color: var(--red);
    margin-top: 5px;
    font-size: 1.4rem;
}
.txtNotes{
    margin-top: 5px;
    font-size: 1.4rem;
}
/*
	会社について
-----------------------------------------------------------------------------------------------*/
.ctsFullWidthMessage{
    align-items: flex-start;
}
.messagePhArea{
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.messagePhArea figcaption{
    font-size: 2.4rem;
    font-family: var(--noto-serif);
    font-weight: var(--bold);
    text-align: center;
    letter-spacing: 0.2rem;
}
.cmnCtsFullWidth .messagePhArea{
    max-width: 360px;
}
.cmnCtsFullWidth .cmnTitBtmLineLeft{
     align-items: flex-start;
}

/*
	会社案内
-----------------------------------------------------------------------------------------------*/
.cmnListOutline{
    width: 100%;
    max-width: 800px;
}
.cmnListOutline > li{
    display: flex;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--light-gray);
}
.cmnListOutline > li .titArea{
    width: 260px;
}
.cmnListOutline > li .txtArea{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
/* (英語版)
============================== */
html[lang="en"] .cmnListOutline > li .txtArea{
	max-width: 500px;
}
.cmnListOutline > li .tit{
    font-weight: var(--bold);
    font-size: 1.8rem;
}
.cmnListOutline > li .txt{
    font-size: 1.8rem;
}
.historyContainer{
    position: relative;
}
[class^="historyDeco"]{
    position: absolute;
    right: 0;
    width: 360px;
}
.historyDeco01{
    top: 0;
}
.historyDeco02{
    top: 300px;
    right: 160px;
}
.historyDeco03{
    top: 580px;
}
.historyDeco04{
    top: 880px;
    right: 160px;
}
.historyDeco05{
    top: 1150px;
}
.historyDeco06{
    top: 1700px;
    right: 160px;
}
.historyDeco07{
    top: 2000px;
}
.historyDeco08{
    top: 2300px;
    right: 160px;
}
.historyList {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 80px;
    padding-block: 80px;
}
.historyList::before {
    content: "";
    position: absolute;
    left: 240px;
    transform: translateX(-50%);
    width: 1px;
    height: 100%;
    top: 0;
    background: var(--light-gray);
}
.historyItem{
    display: flex;
    align-items: center;
    gap: 10px;
}
.historyYear {
    text-align: right;
    font-size: 3.2rem;
    font-weight: bold;
    font-family: var(--noto-serif);
    font-weight: var(--black);
    display: flex;
    align-items: center;
    gap: 5px;
    width: 220px;
}
.historyYear > span {
    font-size: 1.4rem;
}
.historyLine {
    display: flex;
    justify-content: center;
    position: relative;
    
}
.historyDot {
    width: 20px;
    height: 20px;
    background: var(--gold);
    border-radius: 50%;
    z-index: 1;
}
.historyTxt {
    font-size: 1.6rem;
    line-height: 1.8;
}
/* (英語版)
============================== */
html[lang="en"] .historyTxt{
	max-width: 350px;
}
/* (繁体中文版)
============================== */
html[lang="zh-TW"] .historyTxt{
	max-width: 350px;
}
.CtsFullWidtAccess{
    align-items: flex-start;
}
.CtsFullWidtAccess .cmnTxtBase > p > span{
    font-weight: var(--bold);
    font-size: 1.8rem;
}
.CtsFullWidtAccess .txtArea:not(:last-child){
    border-bottom: 1px solid var(--light-gray);
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.cmnTitBtmLineDetails .tit{
    font-weight: var(--bold);
    font-size: 2.2rem;
    letter-spacing: 0.4rem;
    border-bottom: 1px solid #000;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.cmnCtsBgBorder,
.cmnCtsBgWhite{
   position: relative;
   padding: 40px;
   display: flex;
   flex-direction: column;
   gap: 40px;
}
.cmnCtsBgBorder{
    border: 1px solid #000;
}
.cmnCtsBgWhite::after {
    content: "";
    background: #fff;
    opacity: 0.5;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    z-index: -100;
}
.cmnCtsBgWhitePhArea{
    display: flex;
    justify-content: center;
    align-items: center;
    gap:30px;
}
/*
	企業理念
-----------------------------------------------------------------------------------------------*/
#philosophy-catch{
    position: relative;
}
#philosophy-catch> img{
    position: absolute;
    z-index: 100;
    width: 100vw;
    min-width: 1200px;
    bottom: -300px;
    left: 50%;
    transform: translateX(-50%);
}
.catch-copyTxtArea{
    position: relative;
    z-index: 101;
}
.cmnPhilosophyList{
    margin: 0 auto;
    width: var(--width-1000);
    font-family: var(--noto-serif);
    font-weight: var(--bold);
}
.cmnPhilosophyList > li{
    display: flex;
    gap: 60px;
}
.cmnPhilosophyList > li:not(:last-child){
    border-bottom: 1px solid var(--light-gray);
    padding-bottom: 60px;
    margin-bottom: 60px;
}
.PhilosophyListTit{
    width: 150px;
    height: 150px;
    background: var(--gold);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* (英語版)
============================== */
html[lang="en"] .PhilosophyListTit{
    max-width: 180px;
    width: 100%;
    min-height: 180px;
    height: 100%;
}
.PhilosophyListTit > .tit{
    color: #fff;
    position: relative;
    z-index: 101;
    font-size: 2.6rem;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.1);
    letter-spacing: 0.1rem;
    text-align: center;
    line-height: 1.2;
}
/* (英語版)
============================== */
html[lang="en"] .PhilosophyListTit > .tit{
	font-size: 2.0rem;
}
.PhilosophyListTit > .tit > span{
    font-size: 2.0rem;
}
/* (英語版)
============================== */
html[lang="en"] .PhilosophyListTit > .tit > span{
    font-size: 1.8rem;
}
.PhilosophyListTit > .img{
    position: absolute;
    width: 100px;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 100;
}
/* (英語版)
============================== */
html[lang="en"] .PhilosophyListTit > .img{
    width: 140px;
}
.PhilosophyListTxt{
    display: flex;
    align-items: center;
}
.PhilosophyListTxt > .txt{
    color: #000;
    font-size: 2.8rem;
}
.cmnListGuidelineCard{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 60px;
}
.guidelineTitLeft{
    font-size: 2.6rem;
    font-family: var(--noto-serif);
    font-weight: var(--bold);
    margin-bottom: 30px;
}
.cmnGuidelineNumItem{
    display: flex;
    gap: 20px;
}
.cmnGuidelineNumItem:not(:last-child){
    border-bottom: 1px solid var(--gold);
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.cmnListGuidelineCard > li{
    width: calc((100% - 60px) / 2);
    border: 1px solid var(--gold);
    padding: 30px;
}
.cmnGuidelineNumItem > .unm{
    display: flex;
    align-items: center;
    font-size: 3.0rem;
    font-family: var(--noto-serif);
    font-weight: var(--black);
    color: var(--gold);
}
.cmnGuidelineNumItem > .tit{
    font-size: 1.6rem;
    line-height: 1.5;
}
.cmnGuidelineNumItem > .txt{
    display: flex;
    align-items: center;
    font-size: 1.5rem;
}
/*
	受託製造
-----------------------------------------------------------------------------------------------*/
.cmnListBorderColumn > li > div{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}
.cmnListBorderColumn > li > div::before,
.cmnListBorderColumn > li > div::after{
	content: none;
}
.cmnListBorderColumn > li > div > .txt{
	text-align: center;
}
.pageOem .companyList > li {
    padding: 10px 30px;
}
.pageOem .cmnListBorderColumn .img {
    width: 100px;
    height: auto;
}
.pageOem .cmnListBorderColumn img {
    width: 100%;
    height: auto;
}
.pageOem .cmnListBorderColumn .txtArea {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.pageOem .cmnListBorderColumn .tit {
    font-size: 2.0rem;
    color: #000;
    font-family: var(--noto-sans);
}
.pageOem .cmnTxtLink {
    margin: 0 auto;
}
.ctsAreaInFlow{
    width: 100%;
    max-width: 1260px;
    gap: 80px;
}
.pageOem #oem-flow [class^="cmnTitBtmLineLeft"] {
    padding-left: 30px;
}
.cmnItemFlow{
    padding-inline: 30px;
}
.cmnItemFlowDetails{
    width: 100%;
    height: 300px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    gap: 40px;
}
.cmnItemFlowDetails > .tit{
    color: #fff;
    position: absolute;
    background: var(--gold);
    letter-spacing: 0.2rem;
    font-size: 2.4rem;
    font-weight: var(--bold);
    padding: 10px;
    left: 0;
    top:-25px;
    box-shadow: -4px 4px 0px 0px rgba(0, 0, 0, 0.1);
}
.cmnTxtFlowArea{
    display: flex;
    gap: 60px;
    height: 100%;
    width: 100%;
    padding-block: 40px;
}
.cmnTxtFlowArea > .unm{
    width: 100%;
    max-width: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--gold);
    font-weight: var(--medium);
    font-family: var(--oswald);
    font-size: 6.0rem;
    border-right: 1px solid var(--gold);
}
.FlowPhArea{
    display: flex;
    justify-content: flex-end;
    height: 100%;
    width: 100%;
    max-width: 450px;
}
.FlowPhArea > .img img{
    height: 100%;
}
.cmnTitFlow{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}
.cmnTitFlow > .tit{
    font-size: 2.0rem;
    letter-spacing: 0.4rem;
    font-weight: var(--bold);
}
.pageOem #oem-flow [class*="jsSwiperBtn"]{
	background-color:transparent;
	top: auto;
	border: 1px solid #fff;
}
.pageOem #oem-flow .jsSwiperBtnPrev {
    left: auto;
    right: 80px;
    bottom: 0;
    transform: rotate(-180deg);
}
.pageOem #oem-flow .swiper-button-next {
    left: auto;
    right: 0;
    bottom: 0;
}
/*
	品質管理
-----------------------------------------------------------------------------------------------*/
.cmnIntroductionList{
    display: flex;
    flex-direction: column;
    gap: 100px;
}
[class^="cmnIntroductionItem"] {
    position: relative;
    text-align: left;
    display: flex;
    justify-content: flex-end;
    gap: 60px;
}
.cmnIntroductionItemInvert{
    flex-direction: row-reverse;
}
[class^="cmnIntroductionItem"] > .img {
    width: 100%;
    position: relative;
    z-index: 1;
}
[class^="introductionBox"]{
    width: 100%;
}
[class^="introductionBox"] > .tit{
    font-size: 2.2rem;
    font-weight: var(--bold);
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
    line-height: 1.8;
}
[class^="introductionBox"] > .tit::before {
    content: '';
    height: 1px;
    position: absolute;
    width: var(--width-1000);
    bottom: 0;
    background: var(--gold);
}
.introductionBoxInvert > .tit::before {
    right: 0;
}
[class^="introductionBox"] > div.cmnTxtBase .txt{
    font-weight: var(--regular);
    line-height: 2.5;
}
@media (any-hover: hover){
    .pageOem #oem-flow [class*="jsSwiperBtn"]:hover{
        background-color: var(--gold);
    }
    .pageOem #oem-flow [class*="jsSwiperBtn"]:hover:before{
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
}
/*
	採用情報
-----------------------------------------------------------------------------------------------*/
.listRecruitBox:not(:last-child){
    margin-bottom: 60px;
}
#recruit-details .cmnTitBgLineM{
    margin-bottom: 0;
}
.cmnListRecruit > li{
    display: flex;
    align-items: center;
    padding: 30px 20px;
    height: 100%;
}
.cmnListRecruit > li .titArea{
    width: 100%;
    max-width: 150px;
}
.cmnListRecruit > li .titArea .tit{
    font-weight: var(--bold);
    font-size: 1.8rem;
}
.cmnListRecruit > li .txtArea{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.cmnListRecruit > li .txtArea .txt{
    width: 100%;
}
.cmnListRecruit > li .txtArea .list{
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.cmnConditionsList{
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}
.cmnConditionsItem{
    width: 261px;
    min-height: 300px;
    background: #fff;
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.cmnConditionsItem > .img{
    width: 140px;
    height: 140px;
    margin: 0 auto;
    background: var(--gold);
    padding: 30px;
    border-radius: 500px;
}
.cmnConditionsItem > .txtArea{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.cmnConditionsItem > .txtArea .tit{
    font-size: 1.8rem;
    font-weight: var(--bold);
    color: var(--gold);
    text-align: center;
    letter-spacing: 0.2rem;
}
/* (英語版)
============================== */
html[lang="en"] .cmnConditionsItem > .txtArea .tit{
    line-height: 1.4;
}
.PhilosophyListTit > .tit > span{
    font-size: 2.0rem;
}
.cmnConditionsItem > .txtArea .txt{
    font-size: 1.4rem;
    line-height: 1.4;
}
.cmnConditionsItem > .txtArea .txt > .subTxt{
    font-size: 1.2rem;
    line-height: 1.4;
}
.cmnConditionsItem > .txtArea .list{
    display: flex;
    flex-direction: column;
    gap: 5px;
}
/*
	製造設備
-----------------------------------------------------------------------------------------------*/
.pageEquipments .cmnTitBgLineM{
    margin: 0;
}
.facilityBgWhite{
    padding: 30px 60px 60px 60px;
    background: #fff;
}
.facilityItem > div:not(:last-child){
    margin-bottom: 80px;
}
.facilityContainer{
    display: flex;
    flex-direction: column;
    gap: 100px;
}
.facilityBox{
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.facilityBoxFull{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.facilityInfo{
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.facilityTitWrap{
    display:flex;
    align-items:flex-end;
    gap: 15px;
    border-bottom: 1px solid var(--gold);
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.facilityTitWrap > .tit{
    font-size: 2.0rem;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
}
.facilityTitWrap > .facilityCount{
    background: var(--gold);
    color:#fff;
    padding: 3px 5px;
    font-size: 1.2rem;
    margin-bottom: 1px;
}
.facilityTxtArea > .txt{
    font-size: 1.6rem;
    line-height: 2.5;
}
.facilityModalList{
    display:flex;
    gap:30px;
}
/* ===========================
  テーブル
=========================== */

[class^="facilityTable"]{
    width:100%;
    border-collapse:collapse;
    table-layout: fixed;
}
.facilityTableFull{
    background: #fff;
}
[class^="facilityTable"] th{
    font-size: 2.0rem;
    background:var(--gold-30);
    color:  var(--gold);
    font-weight:bold;
    text-align:center;
    padding: 20px;
    border:1px solid var(--middle-gray);
    vertical-align: middle;
}
[class^="facilityTable"] th > span{
    font-size: 1.6rem;
    line-height: 1.0;
}
[class^="facilityTable"] td{
    font-size: 1.8rem;
    padding: 20px;
    border:1px solid var(--middle-gray);
    text-align: center;
    vertical-align: middle;
}
[class^="facilityTable"] td .tableKeyWords{
    font-weight: var(--bold);
}
[class^="facilityTable"] .leftTabTxtLeft,
[class^="facilityTable"] .leftTab{
    width:25%;
}
[class^="facilityTable"] .leftTabTxtLeft{
    text-align: left;
    font-size: 1.8rem;
}
[class^="facilityTable"] th:first-child,
[class^="facilityTable"] td:first-child{
    border-left:none;
}
[class^="facilityTable"] th:last-child,
[class^="facilityTable"] td:last-child{
    border-right:none;
}
[class^="facilityTable"] .tabTitSub{
    width:20%;
    background: var(--gold-10);
    color: var(--gold);
}
.facilityItemFull:not(:last-child){
    margin-bottom: 30px;
}
.accordionBtn{
    width: 100%;
    position: relative;
}
.facilityAccordion{
    margin-bottom: 30px;
}
.accordionBtn::before, 
.accordionBtn::after {
    content: '';
    display: inline-block;
    position: absolute;
    width: 1px;
    height: 18px;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    background: #fff;
    transition: 0.3s;
}
.accordionBtn::before {
    transform: translateY(-50%) rotate(90deg);
}
.open:after {
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
}
@media (any-hover: hover){

}
/*
	ご注文
-----------------------------------------------------------------------------------------------*/
.orderCtsAreaIn{
    gap: 80px;
}
.scrollBoxY {
    border: 1px solid #000;
    background: #F9F9F9;
    padding: 30px;
}
.scrollBoxTxtArea{
    height: 270px;
    overflow-y: scroll;
    padding-right: 20px;
    margin-right: -10px;
}
/* スクロールバー（Chrome・Edge・Safari） */
.scrollBoxTxtArea::-webkit-scrollbar {
    width: 15px;
}
.scrollBoxTxtArea::-webkit-scrollbar-track {
    background-color: var(--light-gray);
}
.scrollBoxTxtArea::-webkit-scrollbar-thumb {
    background-color: var(--gray);
}
.pagePrivacy .txtArea:not(:last-child),
.formPrivacy .txtArea:not(:last-child),
.scrollBoxTxtArea .txtArea:not(:last-child){
    padding-bottom: 30px;
    margin-bottom: 60px;
    border-bottom: 1px solid var(--light-gray);
}
.pagePrivacy .txtArea:not(:last-child){
    padding-bottom: 0;
}
/* テキスト */
.pagePrivacy .txtArea > h3,
.formPrivacy .txtArea > h3,
.scrollBoxTxtArea .txtArea > h3 {
    font-size: 2.4rem;
    margin-bottom: 30px;
    font-weight: var(--bold);
    letter-spacing: 0.2rem;
}
.pagePrivacy .txtArea > h3 {
    font-size: 4.0rem;
}
.pagePrivacy .txtArea > h4,
.formPrivacy .txtArea > h4,
.scrollBoxTxtArea .txtArea > h4 {
    font-size: 2.2rem;
    margin-bottom: 20px;
    font-weight: var(--regular);
    letter-spacing: 0.2rem;
}
.pagePrivacy .txtArea > h4 {
    font-size: 2.6rem;
}
.pagePrivacy .txtArea > h5,
.formPrivacy .txtArea > h5,
.scrollBoxTxtArea .txtArea > h5 {
    font-size: 1.8rem;
    margin-bottom: 10px;
    font-weight: var(--medium);
    letter-spacing: 0.2rem;
}
.pagePrivacy .txtArea > h5 {
    font-size: 2.2rem;
}
.pagePrivacy .txtArea > p,
.formPrivacy .txtArea > p,
.scrollBoxTxtArea .txtArea > p {
    font-size: 1.6rem;
    line-height: 2;
    margin-bottom: 30px;
}
.pagePrivacy .txtArea > p {
    margin-bottom: 60px;
}
.pagePrivacy .txtArea > ul,
.formPrivacy .txtArea > ul,
.scrollBoxTxtArea .txtArea > ul {
    font-size: 1.6rem;
    margin-bottom: 30px;
}
.pagePrivacy .txtArea > ul {
    margin-bottom: 60px;
}
.pagePrivacy .txtArea > ul > li,
.formPrivacy .txtArea > ul > li,
.scrollBoxTxtArea .txtArea > ul > li{
    font-size: 1.6rem;
    margin-bottom: 10px;
}
.pagePrivacy .txtArea > span,
.formPrivacy .txtArea span,
.scrollBoxTxtArea .txtArea span{
    font-size: 1.4rem;
}
.pagePrivacy .txtArea > .matterMarginPartly,
.formPrivacy .txtArea > .matterMarginPartly,
.scrollBoxTxtArea .txtArea > .matterMarginPartly{
    margin-bottom: 40px;
}
.scrollBoxTxtArea .txtArea > table{
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    margin-bottom: 30px;
}
.scrollBoxTxtArea .txtArea > table th{
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    border: 1px solid var(--light-gray);
    vertical-align: middle;
}
.scrollBoxTxtArea .txtArea > table td{
    font-size: 1.4rem;
    padding: 15px;
    border: 1px solid var(--light-gray);
    text-align: center;
    vertical-align: middle;
}
/*
	店舗販売業の管理及び運営に関する事項、要指導医薬品及び一般用医薬品の販売に関する制度に関する事項
-----------------------------------------------------------------------------------------------*/
.policyTableFull{
    table-layout: auto;
}
.notesTableFull{
    table-layout: fixed;
    border-collapse: collapse;
}
.pageNotes .scrollBoxX:not(:last-child){
    margin-bottom: 60px;
}
.policyTableFull .leftTabTxtLeft{
    width:35%;
}
.notesTableFull .leftTabTxtLeft{
    width:20%;
}
.notesTableFull td,
.policyTableFull td{
    text-align: left;
    font-size: 1.6rem;
}
.notesTableFull td{
    font-size: 1.3rem;
    padding: 15px;
}
.notesTableFull td > a,
.policyTableFull td > a{
    color: var(--blue);
    text-decoration: underline;
}
.notesTableFull td > .txtMixph{
    display: inline-flex;
    align-items: center;
    line-height: 0;
}
html[lang="en"] .notesTableFull td > .txtMixph{
    display: block;
    line-height: 1.4;
}
.notesTableFull td > .txtMixph img{
    width: 13px;
    margin-inline: 1px;
}
html[lang="en"] .notesTableFull td > .txtMixph img{
    margin-top: 4px;
}
.notesTableFull td .tableKeyWords{
    font-size: 1.6rem;
}
@media (any-hover: hover){
    .notesTableFull td > a:hover,
    .policyTableFull td > a:hover{
        text-decoration: none;
    }
}
@media screen and (max-width:812px){
    #ctsWrapper .ctsArea > div:not(:last-child) {
        margin-bottom: 30px;
    }
    #ctsWrapper .ctsArea > div.noMarginBtm {
        margin-bottom: 0;
    }
    .noMarginBtm {
        margin-bottom: 0;
    }
    .lastmarginBtm {
        margin-bottom: 60px;
    }
    .lastmarginBtm60 {
        margin-bottom: 30px;
    }
    .lastmarginBtm80 {
        margin-bottom: 40px;
    }
    #ctsWrapper.pageArticleDetail > .btnArea,
    #ctsWrapper.pageRecruit > .btnArea,
    #ctsWrapper.pageProductsList > .btnArea,
    #ctsWrapper.pageColumnList > .btnArea,
    #ctsWrapper.pageForm > .btnArea,
    #ctsWrapper.pageForm > #formCtsAreaWrapper .btnArea {
        margin-top: 30px;
    }
    .flexBox60,
    .flexBox{
		flex-direction: column;
		gap: 30px;
	}
    .flexBox60 > div{
        width: 100%;
    }
    .flexBox60 > .img{
        width: 100%;
    }
    .swiper-pagination {
        margin-top: 40px;
    }
    .swiper-pagination-bullet {
        width: 5px;
        height: 5px;
    }
    /*
        商品紹介
    -----------------------------------------------------------------------------------------------*/
    .pageProducts .ctsArea {
        gap: 30px;
    }
    .cmnListArticleCard {
        gap: 60px 10px;
    }
    .cmnListArticleCard > li {
        width: calc((100% - 10px) / 2);
    }
    .ItemCategory,
    .tagCapacity {
        min-width: 50px;
        min-height: 20px;
        font-size: 0.9rem;
        padding: 5px;
        height: 100%;
    }
    html[lang="en"] .ItemCategory {
        font-size: 0.9rem;
        padding: 3px;
    }
    html[lang="en"] .tagCapacity {
        font-size: 0.9rem;
        padding: 3px;
    }
    .listCategory {
        top: 10px;
    }
    .listCategory > .li {
        min-width: 50px;
        height: 16px;
        font-size: 0.8rem;
    }
    .cmnListArticleCard > li figure.img {
        height: 100%;
        margin-bottom: 10px;
    }
    .cmnListArticleCard > li .listTag {
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
        margin-bottom: 20px;
    }
    .cmnTxtLink .btn,
    .cmnListArticleCard > li .btn,
    .cmnListArticleCard > li .btn {
        transform: translateY(-50%) scale(1);
    }
    .cmnTxtLink .btn::after,
    .cmnListArticleCard > li .btn::after,
    .cmnListArticleCard > li a .btn::after {
        background-image: url(../images/ico_arrow_wh.svg);
        transform: translateY(-50%) scale(1);
    }
    .cmnListArticleCard > li .tit {
        font-size: 1.3rem;
    }
    .cmnListArticleCard > li .txt {
        font-size: 1.1rem;
        margin-bottom: 20px;
    }
    /* .cmnListArticleCard > li .listTag > li {
        min-height: 100%;
        font-size: 1.0rem;
        padding-block: 5px;
    } */
    /*
        タブ
    -----------------------------------------------------------------------------------------------*/
    .cmnListNewsWrapper {
        gap: 30px;
    }
    .cmnListFilterBtn {
        gap: 10px;
        justify-content: center;
    }
    .cmnListFilterBtn > li {
        max-width: 110px;
        display: flex;
        justify-content: center;
        align-items: center;
        justify-content: space-between;
        height: 100%;
    }
        /* (英語版)
    ============================== */
    html[lang="en"] .cmnListFilterBtn > li {
        max-width: 120px;
    }
    .cmnListFilterBtn .btn {
        min-height: 45px;
        padding: 5px 12px;
        font-size: 1.2rem;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        width: 100%;
        height: 100%;
        transform: scale(1);
        line-height: 1.2;
        text-align: center;
    }
    /* (英語版)
    ============================== */
    html[lang="en"] .cmnListEraBtn .btn, 
    html[lang="en"] .cmnListFilterBtn .btn{
        min-height: 50px;
    }
    .cmnListEraBtn .btn.longtxt,
    .cmnListFilterBtn .btn.btn.longtxt{
        font-size: 1.2rem;
    }
    .cmnListFilterBtn .btn > span {
        font-size: 1.0rem;
    }
    .cmnListEraBtn .btn {
        font-size: 1.4rem;
    }
    .cmnListEraBtn .btn.longtxt > span,
    .cmnListFilterBtn .btn.btn.longtxt > span,
    .cmnListEraBtn .btn > span, 
    .cmnListFilterBtn .btn > span {
        font-size: 1.0rem;
    }
    .cmnTabPanelTit {
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
    /*
        商品紹介（詳細ページ）
    -----------------------------------------------------------------------------------------------*/
    .cmnTitArticleCenter {
        margin-bottom: 30px;
    }
    .cmnTitArticleCenter .tit {
        font-size: 3.0rem;
    }
    .pageProductsList .categoryTag {
        margin-bottom: 10px;
    }
    .cmnTitArticleCenter .txt {
        text-align: left;
        font-size: 1.4rem;
    }
    .cmnCtsFullWidth {
        flex-direction: column;
        gap: 30px;
    }
    .cmnCtsFullWidth > .img{
        width: 100%;
    }
    .cmnBoxFullWidthArea{
        width: 100%;
    }
    .cmnBoxFullWidthArea > iframe {
        min-height: 100%;
    }
    .pageProductsList .cmnCtsFullWidth .cmnImg {
        width: 100%;
        padding: 20px;
    }
    .cmnProductsFullWidthArea {
        width: 100%;
        gap: 30px;
    }
    .cmnTitBtmLineProducts {
        font-size: 2.0rem;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    /* (英語版)
    ============================== */
    html[lang="en"] .cmnTitBtmLineProducts {
        font-size: 1.5rem;
        letter-spacing: 0.3rem;
    }
    .cmnTxtBaseList,
    .cmnTxtBase {
        font-size: 1.4rem;
    }
    #newsListCtsAreaWrapper .cmnTxtBase,
    #ColumnListCtsAreaWrapper .cmnTxtBase {
        gap: 30px;
    }
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase,
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase {
        gap: 10px;
    }
    .cmnTxtListProducts > li {
        font-size: 1.4rem;
        padding-bottom: 10px;
    }
    .cmnNotoProducts {
        font-size: 1.4rem;
        flex-direction: column;
    }
    
    /* 説明書PDF
    ============================== */
    .cmnCtsInstructions{
        flex-direction: column;
        padding: 30px;
        gap: 20px;
    }
    /* お買い求めはこちら
    ============================== */
    .cmnCtsOrderBtnWrapper{
        font-size: 2.5rem;
    }
    .cmnCtsOrderBtnWrapper .tit{
        padding-bottom: 20px;
        margin-bottom: 20px;
        line-height: 1.4;
    }
    .cmnCtsOrderBtnArea{
        flex-direction: column;
        gap: 20px;
    }
    .btnOrder{
        width: clamp(220px, 100%, 260px);
        height: auto;
        max-width: 100%;
        padding: 15px 20px;
    }

    /*
        コラム
    -----------------------------------------------------------------------------------------------*/
    .pageColumn .ctsArea {
        gap: 30px;
    }
    .cmnColumnListArticleCard{
        justify-content: center;
        gap: 30px 10px;
    }
    .cmnColumnListArticleCard > li {
        width: calc((100% - 10px) / 2);
    }
    [class*="listCategory"] > .useful, 
    [class*="listCategory"] > .manufactur {
        min-width: 50px;
        min-height: 20px;
        font-size: 0.9rem;
        padding: 5px;
    }
    .cmnColumnListArticleCard > li figure.img {
        height: 120px;
    }
    .cmnColumnListArticleCard > li .TxtArea {
        padding: 20px 15px 20px 15px;
    }
    .cmnColumnListArticleCard > li .tit  {
        font-size: 1.3rem;
    }
    .cmnColumnListArticleCard > li .txt {
        font-size: 1.2rem;
        margin-bottom: 15px;
    }
    .cmnColumnListArticleCard > li .dataBtnArea .date {
        font-size: 1.0rem;
    }

    .cmnPager {
        gap: 10px;
    }
    .cmnPagerPrev, 
    .cmnPagerNext {
        width: 35px;
    }
    .cmnPagerPrev::before, 
    .cmnPagerNext::before {
        width: 8px;
    }
    .cmnPagerPrev::after, 
    .cmnPagerNext::after {
        width: 8px;
    }
    .cmnPagerNum {
        width: 30px;
        padding-inline: 5px;
        font-size: 1.0rem;
    }
    /*
        コラム(詳細)
    -----------------------------------------------------------------------------------------------*/
    /* cmnTitArticle
    ============================== */
    .cmnTitArticle .date{
        font-size: 1.4rem;
    }
    .cmnTitArticle .tit{
        font-size: 2.2rem;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    /* コラム詳細 & お知らせ詳細　本文
    ============================== */
    /* CMS用　*/
    #newsListCtsAreaWrapper p,
    #ColumnListCtsAreaWrapper p{
        font-size: 1.4rem;
        line-height: 2.0;
        /* margin-bottom: 30px; */
    }
    #newsListCtsAreaWrapper p:has(+ a),
    #ColumnListCtsAreaWrapper p:has(+ a) {
        margin-bottom: 20px;
    }
    #newsListCtsAreaWrapper p.tit,
    #ColumnListCtsAreaWrapper p.tit {
        font-size: 1.4rem;
        line-height: 2.0;
    }
    /* コラム詳細 & お知らせ詳細　タイトル
    ============================== */
    #newsListCtsAreaWrapper .cmnTitArticle h2,
    #ColumnListCtsAreaWrapper .cmnTitArticle h2 {
        font-size: 2.2rem;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    #newsListCtsAreaWrapper .cmnTitBtmLineCenterBlack h2,
    #ColumnListCtsAreaWrapper .cmnTitBtmLineCenterBlack h2 {
        gap: 30px;
        font-size: 2.4rem;
    }
    #newsListCtsAreaWrapper h1,
    #ColumnListCtsAreaWrapper h1 {
        font-size: 2.0rem;
    }
    #newsListCtsAreaWrapper h2,
    #ColumnListCtsAreaWrapper h2 {
        font-size: 2.0rem;
    }
    #newsListCtsAreaWrapper h3,
    #ColumnListCtsAreaWrapper h3 {
        font-size: 1.8rem;
        padding: 8px 10px;
    }
    #newsListCtsAreaWrapper h4,
    #ColumnListCtsAreaWrapper h4 {
        font-size: 2.0rem;
        margin-bottom: 10px;
    }
    #newsListCtsAreaWrapper h5,
    #ColumnListCtsAreaWrapper h5 {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    #newsListCtsAreaWrapper h6,
    #ColumnListCtsAreaWrapper h6 {
        font-size: 1.4rem;
        margin-bottom: 10px;
        padding-left: 18px;
    }
    /* コラム詳細 & お知らせ詳細　リンク
    ============================== */
    #newsListCtsAreaWrapper a > p::after,
    #ColumnListCtsAreaWrapper a > p::after {
        background-image: url("../images/ico_arrow_wh.svg");
        transform: translateY(-50%) scale(1);
    }
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::before, 
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::before {
        transform: translateY(-50%) scale(1);
	}
    #newsListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::after,
    #ColumnListCtsAreaWrapper .cmnTxtBase .ArticleCtsArea > .cmnTxtBase .cmnTxtLink p > a::after {
        background-image: url("../images/ico_arrow_wh.svg");
        transform: translateY(-50%) scale(1);
	}
    /* #newsListCtsAreaWrapper a,
    #ColumnListCtsAreaWrapper a {
        margin-bottom: 30px;
    } */
     /* コラム詳細 & お知らせ詳細　リスト
    ============================== */
    #newsListCtsAreaWrapper ul,
    #ColumnListCtsAreaWrapper ul {
        font-size: 1.4rem;
        gap: 5px;
        /* margin-bottom: 30px; */
    }
    /* コラム詳細 & お知らせ詳細　画像
    ============================== */
    #newsListCtsAreaWrapper img,
    #ColumnListCtsAreaWrapper img {
        margin: 0 auto;
    }
    /* cmnListArticle
    ============================== */
    .cmnListArticle{
        font-size: 1.4rem;
        gap: 5px;
    }
    /* cmnTitLeftLine
    ============================== */
    .cmnTitLeftLineM {
        font-size: 2.0rem;
    }
    .cmnTitBtmLineM{
        font-size: 2.0rem;
    }
    .cmnTxtBase .cmnTxtBaseList > li {
        gap: 10px;
    }
        /* (英語版)
    ============================== */
    html[lang="en"] .cmnTitBgLineTxtArea {
        height: 100%;
        min-height: 100%;
    }
        /* (英語版)
    ============================== */
    html[lang="en"] .cmnTxtBase .cmnTxtBaseList > li {
        gap: 10px;
    }
    .cmnTxtBase .cmnTxtBaseList > li > .cmnTxtCategorize {
        font-size: 1.4rem;
        width: 100%;
        max-width: 80px;
    }
    /* (英語版)
    ============================== */
    html[lang="en"] .cmnTxtBaseList > li > .cmnTxtCategorize{
        max-width: 100%;
    }
    /* (繁体中文版)
    ============================== */
    html[lang="zh-TW"] .cmnTxtBaseList > li > .cmnTxtCategorize{
        max-width: 100%;
        width: 120px;
    }
    .cmnTitBgLineArea {
        gap: 30px;
    }
    .cmnTitBgLineM{
        font-size: 1.8rem;
        padding: 8px 10px;
    }
    .cmnTitL{
        font-size: 2.0rem;
        margin-bottom: 10px;
    }
    .cmnTitM{
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    .cmnTitS{
        font-size: 1.4rem;
        margin-bottom: 10px;
        padding-left: 18px;
    }
    .cmnTitS::before {
        left: 4px;
        width: 4px;
        height: 4px;
    }
    .cmnTitS::after {
        width: 12px;
        height: 12px;
    }
    /* cmnImgMain
    ============================== */
    .cmnImg900{
        width: 100%;
       padding-inline: 30px;
    }
    .cmnImg1000{
        width: 100%;
        padding-inline: 30px;
     }
    /*
		news
	-----------------------------------------------------------------------------------------------*/
    /* .onlyTitBtmLineCenter {
        margin-bottom: 30px;
    } */
    .cmnListNews > li a {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        min-height: 100px;
        padding: 20px;
    }
    .cmnListNews > li .dateArea {
        max-width: 175px;
    }
     /* (英語版)
    ============================== */
    html[lang="en"] .cmnListNews > li .dateArea {
        max-width: 200px;
    }
    .cmnListNews > li .date {
        font-size: 1.2rem;
    }
    [class^="news_"] {
        width: 70px;
        height: 20px;
        font-size: 1.0rem;
    }
    .cmnListNews > li .tit {
        font-size: 1.4rem;
    }
    .cmnListEraBtn {
        gap: 10px;
    }
    .cmnListEraBtn > li {
        max-width: 100%;
        width: calc((100% - 20px) / 3);
    }
    /*
        お問い合わせ（フォーム）
    -----------------------------------------------------------------------------------------------*/
    .formItem {
        flex-direction: column;
        padding: 30px 0;
        gap: 15px;
    }
    .formItem > label {
        max-width: 100%;
    }
    .formInput input, 
    .formInput textarea {
        font-size: 1.6rem;
        height: 40px;
        padding: 10px;
    }
    .InputShort{
        max-width: 100%;
    }
    /*============================
    セレクトボックス
    ============================*/
    .formSelect {
        height: 40px;
        font-size: 1.6rem;
    }
    /*----------------------------
    チェックボックス
    ----------------------------*/
    .formCheck {
        font-size: 1.6rem;
    }
    .formCheckText{
        width: 100%;
    }
    /*----------------------------
    利用規約
    ----------------------------*/

    .formPrivacy {
        padding: 20px;
        height: 150px;
    }

    .formPrivacy p {
        font-size: 1.4rem;
        line-height: 1.8;
    }
    /*----------------------------
    入力エラー
    ----------------------------*/
    .txtError{
        font-size: 1.2rem;
    }
    .txtNotes{
        font-size: 1.2rem;
    }
    /*
        会社案内
    -----------------------------------------------------------------------------------------------*/
    .cmnAnchorLinkList {
        gap: 20px 0;
        margin: 0 auto;
    }
    .cmnAnchorLinkList > li {
        max-width: 100%;
        text-align: center;
        width: calc((100% - 0px) / 3);
    }
    .cmnAnchorLinkList > li::after {
        width: 5px;
        height: 5px;
        bottom: 0;
    }
    .cmnAnchorLinkList > li:nth-child(3n) {
        border-right: none;
    }
    .cmnAnchorLinkList > li > a {
        font-size: 1.4rem;
        padding: 5px 5px 30px 5px;
    }
    .cmnCtsFullWidth .messagePhArea {
        max-width: 200px;
        margin: 0 auto;
    }
    .messagePhArea {
        gap: 20px;
    }
    .messagePhArea figcaption {
        font-size: 1.6rem;
    }
    .cmnListOutline > li{
       flex-direction: column;
       gap: 5px;
       margin-bottom: 15px;
       padding-bottom: 15px;
    }
    .cmnListOutline > li .tit {
        font-size: 1.6rem;
    }
    .cmnListOutline > li .txt {
        font-size: 1.4rem;
    }
    [class^="historyDeco"]{
        position: absolute;
        right: 0;
        width: 100px;
    }
    .historyDeco01{
        top: -140px;
        right: -10px;
    }
    .historyDeco02{
        top: -110px;
        right: 80px;
    }
    .historyDeco03{
        top: -50px;
        right: 0px;
    }
    .historyDeco04{
        top: auto;
        bottom: -40px;
        right: 50px;
    }
    .historyDeco05{
        top: auto;
        bottom: -50px;
        right: -40px;
    }
    .historyDeco06{
        top: -30px;
        right: 100px;
    }
    .historyDeco07{
        top: auto;
        right: 190px;
        bottom: -65px;
    }
    .historyDeco08{
        bottom: 10px;
        top: auto;
        right: 135px;
    }
    .historyList {
        gap: 60px;
        padding-block: 100px;
    }
    .historyList::before {
        left: 10px;
    }
    .historyItem {
        flex-direction: column;
        align-items: flex-start;
        padding-left: 40px;
        position: relative;
    }
    .historyItem::after {
        content: "";
        position: absolute;
        width: 20px;
        height: 20px;
        background: var(--gold);
        border-radius: 100px;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
    }
    .historyYear {
        font-size: 2.4rem;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        max-width: 120px;
        text-align: left;
    }
    .historyYear > span {
        font-size: 1.2rem;
    }
    .historyLine {
        display: none;
    }
    .historyTxt {
        font-size: 1.4rem;
    }
    .CtsFullWidtAccess .cmnTxtBase > p > span{
        font-size: 1.6rem;
    }
    .CtsFullWidtAccess .txtArea:not(:last-child){
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .cmnTitBtmLineDetails .tit{
        font-size: 1.6rem;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    .cmnCtsBgWhite{
       position: relative;
       padding: 20px;
       gap: 30px;
    }
    .cmnCtsBgWhitePhArea{
       flex-direction: column;
        gap: 20px;
}
    .cmnCtsBgWhite::after {
        content: "";
        background: #fff;
        opacity: 0.5;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%;
        z-index: -100;
    }
        /*
        企業理念
    -----------------------------------------------------------------------------------------------*/
    .cmnPhilosophyList{
        width: 100%;
    }
    .cmnPhilosophyList > li{
        flex-direction: column;
        gap: 30px;
    }
    .cmnPhilosophyList > li:not(:last-child){
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    .PhilosophyListTit{
        width: 100px;
        height: 100px;
        margin: 0 auto;
    }
        /* (英語版)
    ============================== */
    html[lang="en"] .PhilosophyListTit{
        max-width: 140px;
        min-height: 140px;
    }
    .PhilosophyListTit > .tit{
        font-size: 1.7rem;
    }
      /* (英語版)
    ============================== */
    html[lang="en"] .PhilosophyListTit > .tit{
        font-size: 1.4rem;
    }
    .PhilosophyListTit > .tit > span{
        font-size: 1.2rem;
    }
     /* (英語版)
    ============================== */
    html[lang="en"] .PhilosophyListTit > .tit > span{
        font-size: 1.1rem;
    }
    .PhilosophyListTit > .img{
        width: 70px;
    }
    /* (英語版)
    ============================== */
    html[lang="en"] .PhilosophyListTit > .img{
        width: 80px;
    }
    .PhilosophyListTxt{
        justify-content: center;
    }
    .PhilosophyListTxt > .txt{
        color: #000;
        font-size: 1.6rem;
        text-align: center;
    }
    .guidelineTitLeft{
    font-size: 2.6rem;
    font-family: var(--noto-serif);
    font-weight: var(--bold);
    margin-bottom: 30px;
    }
    .cmnGuidelineNumItem{
        display: flex;
        gap: 20px;
    }
    .cmnGuidelineNumItem:not(:last-child){
        border-bottom: 1px solid var(--gold);
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .cmnListGuidelineCard > li{
        width: calc((100% - 60px) / 2);
        border: 1px solid var(--gold);
        padding: 30px;
    }
    .cmnGuidelineNumItem > .tit{
        font-size: 1.6rem;
        line-height: 1.5;
    }
    .cmnGuidelineNumItem > .txt{
        display: flex;
        align-items: center;
        font-size: 1.5rem;
    }
    .cmnListGuidelineCard {
        flex-direction: column;
        gap: 30px;
    }
    .guidelineTitLeft{
        font-size: 2.0rem;
    }
    .cmnListGuidelineCard > li{
        width: 100%;
        padding: 20px;
    }
    .cmnGuidelineNumItem > .unm{
        font-size: 2.8rem;
    }
    .cmnGuidelineNumItem > .txt{
        font-size: 1.4rem;
    }
     /*
        受託製造
    -----------------------------------------------------------------------------------------------*/
    .cmnListBorderColumn > li > div{
        flex-direction: row;
        gap: 30px;
    }
    .cmnListBorderColumn > li > div::before,
    .cmnListBorderColumn > li > div::after{
        content: none;
    }
    .cmnListBorderColumn > li > div > .txt{
        text-align: center;
    }
    .pageOem .companyList > li {
        width: 100%;
        padding: 30px 10px;
    }
    .companyList > li:not(:last-child) {
        border-right: none;
        border-bottom: 1px solid #000;
    }
    .pageOem .cmnListBorderColumn .img {
        width: 100%;
        max-width: 60px;
    }
    .pageOem .cmnListBorderColumn .txtArea {
        text-align: left;
    }
    .pageOem .cmnListBorderColumn .tit{
        font-size: 1.6rem;
    }
    .pageOem .cmnTxtBase > p {
        text-align: left;
    }
    .pageOem .cmnTxtLink {
        margin: 0;
    }
        /* (繁体中文版)
    ============================== */
    html[lang="zh-TW"] .pageOem .cmnTxtLink {
        max-width: 180px;
    }
    .cmnTxtLink .btn::after::after {
        padding-right: 30px;
        transform: translateY(-50%) scale(1);
    }
    .ctsAreaInFlow {
        width: 100%;
        gap: 60px;
        max-width: 560px;
    }
    .pageOem #flow [class^="cmnTitBtmLineLeft"] {
        padding-left: 0;
    }
    .cmnItemFlow {
        display: flex;
        padding-inline: 20px;
        height: auto;
    }
    .cmnTxtLink .btn::after {
        background-color: #000;
    }
    .cmnItemFlowDetails {
        height: 100%;
        flex-direction: column;
        flex: 1;
        gap: 0;
    }
    .cmnItemFlowDetails > .tit {
        font-size: 1.6rem;
        padding: 5px 8px;
        top: -18px;
    }
    .cmnTxtFlowArea {
        flex-direction: column;
        padding: 20px;
        gap: 20px;
        flex-grow: 1;
    }
    .cmnTxtFlowArea > .unm{
        margin: 0 auto;
        border-right: none;
        border-bottom: 1px solid var(--gold);
        width: 100%;
        max-width: 100%;
        padding-bottom: 20px;
        font-size: 4.0rem;
    }
    .FlowPhArea {
        max-width: 100%;
        margin-top: auto;
        height: auto;
    }
    .cmnTitFlow {
        gap: 15px;
        flex: 1;
    }
    .cmnTitFlow > .tit {
        font-size: 1.6rem;
        text-align: center;
    }
    .cmnTitFlow > .txt {
        font-size: 1.4rem;
        height: 100%;
        display: flex;
        justify-content: center;
        flex-grow: 1;
    }
    .pageOem #oem-flow [class*="jsSwiperBtn"] {
        width: 40px;
        height: 40px;
    }
    .pageOem #oem-flow [class*="jsSwiperBtn"]::before {
        width: 8px;
    }
    .pageOem #oem-flow [class*="jsSwiperBtn"]::after {
        width: 8px;
    }
    .pageOem #oem-flow .swiper-button-next {
        top: -60px;
        bottom: auto;
    }
    .pageOem #oem-flow .jsSwiperBtnPrev {
        top: -60px;
        right: 60px;
        bottom: auto;
    }
     /*
        品質管理
    -----------------------------------------------------------------------------------------------*/
    .cmnIntroductionList {
        gap: 60px;
    }
    [class^="cmnIntroductionItem"] {
        flex-direction: column;
        gap: 20px;
    }
    [class^="introductionBox"] > .tit {
        font-size: 1.8rem;
        padding-bottom: 15px;
        margin-bottom: 15px;
        display: flex;
        justify-content: center;
    }
    [class^="introductionBox"] > .tit::before {
        width: 100%;
    }
    [class^="introductionBox"] > div.cmnTxtBase .txt {
        line-height: 2.0;
    }
    [class^="facilityTable"] .leftTabTxtLeft {
        text-align: left;
        font-size: 1.6rem;
    }
    /*
        採用情報
    -----------------------------------------------------------------------------------------------*/
    .cmnListRecruit > li {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        padding: 30px 0;
    }
    .cmnListRecruit > li .titArea{
        max-width: 100%;

    }
    .cmnListRecruit > li .titArea .tit {
        font-weight: var(--bold);
        font-size: 1.6rem;
    }
    .cmnListRecruit > li .txtArea .txt {
        font-size: 1.4rem;
    }
    .cmnConditionsList {
        gap: 10px;
    }
    .cmnConditionsItem{
        width: calc((100% - 10px) / 2);
        padding: 20px;
        min-height: 100%;
    }
    .cmnConditionsItem > .img {
        width: 100%;
        max-width: 90px;
        height: 100%;
        max-height: 90px;
        padding: 20px;
    }
    .cmnConditionsItem > .txtArea .tit {
        font-size: 1.6rem;
    }
    .cmnConditionsItem > .txtArea .txt {
        font-size: 1.2rem;
    }
    .cmnConditionsItem > .txtArea .txt > .subTxt {
        font-size: 1.0rem;
    }
    /*
        製造設備
    -----------------------------------------------------------------------------------------------*/
    .facilityBgWhite{
        padding: 30px 20px;
        background: #fff;
    }
    .facilityBox {
        gap: 30px;
    }
    .facilityItem > div:not(:last-child){
        margin-bottom: 40px;
    }
    .facilityContainer {
        gap: 30px;
    }
    .flexBoxFacility{
        flex-direction: column-reverse;
        gap: 10px;
    }
    .facilityInfo {
        gap: 30px;
    }
    .facilityTitWrap {
        flex-direction: column-reverse;
        align-items: center;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    .facilityLead {
        margin-bottom: 40px;
        line-height: 2.0;
    }
    .facilityLead > .txt {
        line-height: 2.0;
    }
    .facilityModalList {
        gap: 10px;
    }
    .facilityTitWrap > .tit {
        font-size: 1.8rem;
        text-align: center;
    }
    .facilityTxtArea > .txt {
        font-size: 1.4rem;
        line-height: 2.0;
    }
    .scrollBoxX{
        overflow-x: auto;
        padding: 10px 0;
        -webkit-overflow-scrolling: touch;
    }
    .scrollBoxNote{
        font-size: 1.2rem;
        margin-bottom: 10px;
    }
    .scrollBoxX > table{
        max-width: 100%;
        min-width: 800px;
        vertical-align: top;
    }
    [class^="facilityTable"] th {
        font-size: 1.6rem;
        padding: 10px;
    }
    [class^="facilityTable"] td {
        font-size: 1.4rem;
        padding: 10px;
    }
    .facilityAccordion {
        margin-bottom: 10px;
    }
    /*
        ご注文
    -----------------------------------------------------------------------------------------------*/
    .orderCtsAreaIn {
        gap: 30px;
    }
    .scrollBoxY {
        padding: 10px;
    }
    .scrollBoxTxtArea{
        height: 200px;
        padding-right: 20px;
        margin-right: -10px;
    }
    /* スクロールバー（Chrome・Edge・Safari） */
    .scrollBoxTxtArea::-webkit-scrollbar {
        width: 10px;
    }
    .scrollBoxTxtArea::-webkit-scrollbar-track {
        background-color: var(--light-gray);
    }
    .scrollBoxTxtArea::-webkit-scrollbar-thumb {
        background-color: var(--gray);
    }
    .pagePrivacy .txtArea:not(:last-child),
    .formPrivacy .txtArea:not(:last-child),
    .scrollBoxTxtArea .txtArea:not(:last-child) {
        padding-bottom: 20px;
        margin-bottom: 40px;
    }
    /* テキスト */
    .pagePrivacy .txtArea > h3,
    .formPrivacy .txtArea > h3,
    .scrollBoxTxtArea .txtArea > h3 {
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
    .pagePrivacy .txtArea > h3 {
        font-size: 2.2rem;
    }
    .pagePrivacy .txtArea > h4,
    .formPrivacy .txtArea > h4,
    .scrollBoxTxtArea .txtArea > h4 {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }
    .pagePrivacy .txtArea > h4 {
        font-size: 2.0rem;
        margin-bottom: 20px;
    }
    .pagePrivacy .txtArea > h5,
    .formPrivacy .txtArea > h5,
    .scrollBoxTxtArea .txtArea > h5 {
        font-size: 1.6rem;
    }
    .pagePrivacy .txtArea > h5 {
        font-size: 1.8rem;
    }
    .pagePrivacy .txtArea > p,
    .formPrivacy .txtArea > p,
    .scrollBoxTxtArea .txtArea > p {
        font-size: 1.4rem;
        margin-bottom: 20px;
        line-height: 1.6;
    }
    .pagePrivacy .txtArea > ul,
    .formPrivacy .txtArea > ul,
    .scrollBoxTxtArea .txtArea > ul {
        margin-bottom: 20px;
    }
    .pagePrivacy .txtArea > ul > li,
    .formPrivacy .txtArea > ul > li,
    .scrollBoxTxtArea .txtArea > ul > li{
        font-size: 1.2rem;
        margin-bottom: 10px;
    }
    .pagePrivacy .txtArea > span,
    .formPrivacy .txtArea > span,
    .scrollBoxTxtArea .txtArea span{
        font-size: 1.2rem;
    }
    .pagePrivacy .txtArea > .matterMarginPartly,
    .formPrivacy .txtArea > .matterMarginPartly,
    .scrollBoxTxtArea .txtArea > .matterMarginPartly{
        margin-bottom: 30px;
    }
    .scrollBoxTxtArea .txtArea > table{
        margin-bottom: 30px;
    }
    .scrollBoxTxtArea .txtArea > table th{
        font-size: 1.2rem;
        padding: 10px;
    }
    .scrollBoxTxtArea .txtArea > table td{
        font-size: 1.2rem;
        padding: 10px;
    }
    /*
        店舗販売業の管理及び運営に関する事項
    -----------------------------------------------------------------------------------------------*/
    .scrollBoxX > table.notesTableFull {
        min-width: 1200px;
    }
    .policyTableFull .leftTabTxtLeft{
        width:40%;
    }
    .notesTableFull .leftTabTxtLeft{
        width:20%;
    }
}