@charset "UTF-8";


/* **********************************************************

ヘッダー

********************************************************** */


.headerContent{
    background-color: var(--BaseArticle);
    height: 90px;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    /* ヘッダースクロールで非表示 */
    transition: transform 0.3s 0.3s;
    display: flex;
    align-items: center;
    z-index: 90;
}
.siteLogo{
    height: 50px;
    line-height: 1px;
}
.siteLogo img{
    height: 100%;
}
.navMain{
    display: flex;
    justify-content: space-between;
    width: 88%;
    margin: 0 auto;
    position: relative;
    z-index: 100;
}
.naviMenu{
    display: flex;
    align-items: center;
}
.naviMenu a{
    font-size: 14px;
}
.naviMenu li{
    margin-left: 40px;
}
.naviMenu img{
    width: 22px;
}
.burger div {
    width: 25px;
    height: 2px;
    background-color: var(--Text);
    margin: 8px;
    transition: 0.5s ease;
}
.mainMenu{
    display: flex;
    position: absolute;
    z-index: 100;
    right: 0;
    height: calc(100vh - 90px);
    /* height: auto; */
    width: 50%;
    top: 90px;
    flex-direction: column;
    justify-content: flex-start;
    padding-top: 40px;
    transform: translateX(100%);
    transition: transform 0.5s ease-in;
    background-color:var(--PartTheme);
}
body{
    overflow-x: hidden;
}
.mainMenu a{
    font-size: 18px;
    color: var(--TextRev);
}
.mainMenu>li{
    position: relative;
    margin: 0 70px 20px;
    padding: 0 0 20px 25px;
    border-bottom: 1px dotted var(--TextRev);
    opacity: 0;
}
.mainMenu>li:nth-child(5)>a{
    position: relative;
}
.mainMenu>li:nth-child(5)>a::before{
    content: "";
    position: absolute;
    left: -15px;
    top: 5px;
    width: 6px;
    height: 6px;
    border-top: 2px solid var(--TextRev);
    border-right: 2px solid var(--TextRev);
    transform: rotate(135deg);
}
.mainMenu.nav-active {
    transform: translateX(0%) ;
}
.sub-menu>li a{
    display: block;
    line-height: 0;
    padding: 0 20px;
    transform: scaleY(0);
    transition: all .3s;
}
.sub-menu>li:hover{
    background-color: var(--MenuHover) ;
}
.sub-menu{
    position: relative;
    left: 0;
    top:5px;
    opacity: 1; 
}
.sub-menu>li a.is-active{
    display: block;
    line-height: 1.6;
    padding: 10px 20px;
    transform: scaleY(1);
    color:var(--TextRev);
    transition: all .3s;
}
@keyframes mainMenuFade{
    0% {
        opacity: 0;
        transform: translateX(50px);
      }
      100% {
        opacity: 1;
        transform: translateX(0px);
      }
}
.burger.toggle .line1{
    transform: rotate(-45deg) translate(-5px, 10px);
}
.burger.toggle .line2{
    opacity: 0;
}
.burger.toggle .line3 {
    transform: rotate(405deg) translate(-5px, -10px);
}
/* ヘッダースクロールで非表示 */
.headerContent.hidden {
    transform: translateY(-150px);
}

@media(max-width:1023px){
    .sub-menu{
        display: none;
    }
    .mainMenu>li:nth-child(5)>a::before{
        display: none;
    }
}

@media screen and (max-width: 840px){
    .headerContent{
        height: 60px;
    }
    .naviMenu li{
    margin-left: 15px;
    }
    .mainMenu{
    width: 100%;
    height: calc(100vh - 60px);
    /* height: auto; */
    top: 60px;

    }
    .naviMenu a{
    font-size: 11px;
    }
    .naviMenu img{
        width: 18px;
    }
    .siteLogo{
        height: 40px;
    }
}
    


    
/* **********************************************************

フッター

********************************************************** */

footer{
    background-color: var(--FooterBase);
    padding: 50px 10% 20px;
}
.footerSnsIcon{
    display: flex;
    align-items: center;
    margin: 0 auto 80px;
    width: 35%;
}
.footerSnsLi{
    margin: 0 15px;
    width: 18%;
}
.youtubeLogo{
    width: 45%;
}
.footerSnsLink img{
    width: 100%;
}
.footerBottom{
    color: var(--TextRev);
    text-align: center;
    font-size: 10px;
}
.footerBottomLine{
    width: 100%;
    height: .5px;
    background-color: var(--TextRev);
}
.footerBottomLink{
    display: flex;
    justify-content: center;
    margin: 0 10px 5px;
}
.footerBottomLink{
    color: var(--TextRev);
}
.footerBottomCopyright{
    padding-top: 10px;
}
@media(max-width:840px){
    .footerSnsIcon{
        width: 70%;
    }
    .footerSnsLi{
    margin: 0 10px;
    width: 18%;
}
    .youtubeLogo{
        width: 40%;
}

}





/* **********************************************************

ページネーション

**********************************************************  */

.pagination {
	text-align: center;
	margin-top: 45px;
	margin-bottom: 45px;
}
.nav-Links {
    margin: 0 auto;
    display: inline-block;
}
.page-numbers {
	display: inline-block;
	padding: .5em 1em;
	text-decoration: none;
	color: var(--PagiText);
	border: 2px solid var(--PagiBorder);
	border-radius: 0.2em;
	background-color: var(--PagiBase);
	font-size: 0.875rem;
}
@media (hover: hover) {
    .page-numbers:hover {
        border-color: var(--PagiTheme);
    }
}
.page-numbers.current {
	color: var(--PagiTextRev);
	border-color: var(--PagiTheme);
	background-color: var(--PagiTheme);
}
.page-numbers.dots {
	padding: 0 .5em;
	border: none;
	background-color: transparent;
}
.srOnly {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
}





/* **********************************************************

投稿ページのタグ

********************************************************** */

.content-Tags{
    display: flex;
    flex-wrap: wrap;
    padding: 0 15% 0 4%;
    margin-bottom: 30px;
}
.content-Tags li{
    margin-right: 8px;
}
.content-Tags a{
    display: inline-block;
    padding: 3px 8px !important;
    font-size: 10px !important;
    color: var(--Tag) !important;
    border: 1px solid var(--Tag);
    border-radius: 10px;
    margin-top: 5px;
}
@media (hover: hover) {
    .content-Tags a:hover{
    color: var(--TagRev) !important;
    background-color: var(--Tag);
    text-decoration: none !important;
    }
}



/* **********************************************************

前後リンク

********************************************************** */

.contentNav{
    display: flex;
    justify-content: space-between;
    padding: 30px 5% 0;
    position: relative;
    margin-bottom: 30px;
}
.contentNav::before{
    content: "";
    display: inline-block;
    width: 95%;
    height: .5px;
    background-color: var(--PrevNxtArrow);
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
}
.contentNavPrev a{
    margin-left: 10px;
    font-size: 12px;
}
.contentNavNext a{
    margin-right: 10px;
    font-size: 12px;
}
@media(max-width:840px){
    .contentNav{
        flex-direction: column;
        text-align: center;
    }
}





/* **********************************************************

検索フォーム

********************************************************** */

.search-form{
    width: 100%;
    height: 40px;
    margin-bottom: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.search-field{
    padding: 5px 10px;
    background-color: var(--TextRev);
    border: 1px solid var(--TextRev);
}
.search-submit{
    background-color: var(--FooterBase) !important;
    color: var(--TextRev);
    border: 1px solid var(--TextRev) !important;
    border-radius: 0px !important;
    padding: 5px 10px !important;
    font-size: 12px !important;
    height: 35px !important;
}
.screen-reader-text{
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}
input[type='search']::placeholder{
    visibility: hidden;
}





/* **********************************************************

リンクボタン

********************************************************** */

.inLinkBtn{
    display: block;
    margin: 20px auto 30px;
}
.inLink{
    padding: 15px 80px;
    display: inline-block;
    border: 1px solid var(--BtnTheme);
    font-size: 18px;
    color: var(--BtnTheme);
    background-color: var(--BtnRev);
    border-radius: 30px;
    transition: .4s;
}
@media (hover: hover) {
    .inLink:hover{
    color: var(--BtnRev);
    background-color: var(--BtnTheme);
    }
}


/* フッター用 */
.inLinkBtnFooter{
    display: block;
    margin: 0 auto 30px;
    width: 60%;
}
.inLinkFooter{
    width: 100%;
    padding: 15px 0;
    display: inline-block;
    border: 1px solid var(--TextRev);
    font-size: 18px;
    color: var(--TextRev);
    border-radius: 30px;
    transition: .4s;
}
@media (hover: hover) {
    .inLinkFooter:hover{
    color: var(--FooterBase);
    background-color: var(--TextRev);
    }
}



/* WelCart商品ページのカテゴリーリンク用 */

.itemCatgBtn{
    width: 100%;
    display: block;
    margin: 60px auto 0;
    padding: 0 4%;
}
.itemCategLink{
    padding: 10px 80px;
    display: block;
    border: .5px solid var(--BtnTheme);
    font-size: 18px;
    color: var(--BtnTheme);
    background-color: var(--BtnRev);
    border-radius: 30px;
    transition: .4s;
}
.itemCategLink:not(:last-of-type){
    margin-bottom: 15px;
}
@media (hover: hover) {
  .itemCategLink:hover{
    color: var(--BtnRev);
    background-color: var(--BtnTheme);
    }
}






/* **********************************************************

区切り線

********************************************************** */

.accessLine{
    width: 92%;
    height: .5px;
    background-color: var(--LineGray);
    padding: 0 1%;
    margin: 60px auto;
}