header{
	position: relative;
	z-index: 1000;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	height: 100px;
	padding: 60px 80px 0 80px;
	flex-grow: 0;
}

.brandLogo{
	display: block;
}

.brandLogo > img{
	width: 150px;
}

nav{
	display: flex;
	padding-right: 30px;
}

nav > a{
	position: relative;
	display: block;
	margin-right: 10px;
	padding: 0 5px 5px 5px;
	font-size: 12px;
	line-height: 1em;
}

nav > a:after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;




	width: 100%;
	height: 1px;
	background-color: var(--theme-line, #000000);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 300ms;
}

nav > a:hover:after{
	transform: scaleX(1);
	transform-origin: left;
	transition: transform 300ms;
}

.navClose{
	display: none;
}



/* accordio menu ------------------------------- */
.accordionMenu{
	display: flex;
	align-content: space-around;
	flex-wrap: wrap;
	position: fixed;
	bottom: -100vh;
	right: 0;
	z-index: 1000;
	padding: 80px 80px 40px 40px;
	height: 100vh;
	width: 300px;
	background: rgba(255,255,255,0.7);
	opacity: 0;
	transition: all 600ms;
}

.accordionMenuOpen{
	bottom: 0;
	opacity: 1;
	transition: all 600ms;
}

.accordionMenu > div {
	position: relative;
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

.accordionMenu > div > a{
	position: relative;
	display: block;
	padding: 0 5px 5px 5px;
}

.accordionMenu > div > a:after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--theme-line, #000000);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 300ms;
}

.accordionMenu > div > a:hover:after{
	transform: scaleX(1);
	transform-origin: left;
	transition: transform 300ms;
}

.snsIcons{
	display: flex;
	width: 100%;
}

.snsIcons > div > a{
	display: block;
	margin-left: 25px;
}

.snsIcons > div > a > img{
	width: 20px;
	height: 20px;
}



/* menu button ------------------------------- */
#menu{
	position: fixed;
	top: 52px;
	right: 80px;
	z-index: 2000;
	padding: 5px;
	width: 26px;
	height: 26px;
}

/* normal ------------------------------- */
#menu > div{
	position: relative;
	width: 20px;
	height: 20px;
	transform-origin: center center;
	transform: rotate(0deg);
	transition: all 300ms;
}

#menu > div > div{
	position: absolute;
	width: 2px;
	height: 2px;
	overflow: hidden;
	transition: all 300ms;
}

.closeMenu{
	width: 8px !important;
	height: 8px !important;
	transition: all 300ms;
}

#menu > div > div:nth-of-type(1){
	top: 0;
	left: 0;
}

#menu > div > div:nth-of-type(2){
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#menu > div > div:nth-of-type(3){
	bottom: 0;
	right: 0;
	transform: rotate(180deg);
}

#menu > div > div:nth-of-type(4){
	bottom: 0;
	left: 0;
	transform: rotate(270deg);
}

#menu > div > div:after{
	content: "";
	position: absolute;
	display: block;
	width: 18px;
	height: 2px;
	background-color: var(--theme-line, #000000);
	transform-origin: 1px;
	transform: rotate(45deg);
}

/* action ------------------------------- */
#menu:hover > div{
	transform: rotate(90deg);
	transition: all 300ms;
}

#menu:hover > div > div:nth-of-type(1){
}



/* sp ------------------------------------------------------------------------------- */
@media only screen and (max-width: 800px) {

header{
	width: 100%;
	height: 80px;
	padding: 20px 30px 0 30px;
	flex-grow: 0;
}

.brandLogo{
	min-width: 100px;
	max-width: 150px;
	width: 57%;
	margin-right: auto;
}

.brandLogo > img{
	width: 100%;
}

nav{
	display: none;
}


/* menu button ------------------------------- */
#menu{
	top: 30px;
	right: 30px;
	transition: border 300ms;
}

.spAction{
	transform: rotate(90deg) !important;
	transition: all 300ms;
}

#menu:hover > div{
	transform: rotate(0deg);
}

/* accordio menu ------------------------------- */
.accordionMenu{
	padding: 60px;
	width: 100%;
	background: rgba(255,255,255,0.9);
}

.accordionMenu > div {
	justify-content: center;
}

.accordionMenu > div > a{
	font-size: 1.5em;
}

.snsIcons{
	display: flex;
	width: 100%;
}

.snsIcons > div > a{
	display: block;
	margin-left: 15px;
	margin-right: 15px;
}

.snsIcons > div > a > img{
	width: 30px;
	height: 30px;
}


}


/* =========================================
   Maison Liera
   Automatic Background Color Change
========================================= */

/* 明るい背景 */
body.home-auto-theme {
    --theme-text: #000000;
    --theme-line: #000000;
    --theme-logo: none;
}

/* 暗い背景 */
body.home-auto-theme.bg-is-dark {
    --theme-text: #ffffff;
    --theme-line: #ffffff;
    --theme-logo: brightness(0) invert(1);
}

/* ヘッダー */
body.home-auto-theme header,
body.home-auto-theme header a {
    color: var(--theme-text);
    transition: color 0.1s linear;
}

/* ロゴ */
body.home-auto-theme .brandLogo img {
    filter: var(--theme-logo);
    transition: filter 0.1s linear;
}

/* PCナビゲーション */
body.home-auto-theme nav > a {
    color: var(--theme-text);
}

body.home-auto-theme nav > a::after {
    background-color: var(--theme-line);
}

/* ハンバーガーメニュー */
body.home-auto-theme #menu > div > div::after {
    background-color: var(--theme-line);
    transition: background-color 400ms ease;
}

/* ページ内の文字 */
body.home-auto-theme main,
body.home-auto-theme main p,
body.home-auto-theme main h1,
body.home-auto-theme main h2,
body.home-auto-theme main h3,
body.home-auto-theme main h4,
body.home-auto-theme main li,
body.home-auto-theme main span,
body.home-auto-theme main a {
    color: var(--theme-text);
    transition: color 0.1s linear;
}

/* フッター */
body.home-auto-theme .footCopyright {
    color: var(--theme-text);
}

/* スマートフォンのアコーディオンメニュー */
body.home-auto-theme .accordionMenu,
body.home-auto-theme .accordionMenu a {
    color: #000000;
}

body.home-auto-theme .accordionMenu a::after {
    background-color: #000000;
}

/* スマートフォンのフッター */
@media only screen and (max-width: 800px) {
    body.home-auto-theme footer,
    body.home-auto-theme .footCopyright {
        color: #000000;
    }
}

/* 全ページ共通：背景に応じた文字色 */
body.home-auto-theme {
    color: var(--theme-text);
}

body.home-auto-theme p,
body.home-auto-theme h1,
body.home-auto-theme h2,
body.home-auto-theme h3,
body.home-auto-theme h4,
body.home-auto-theme li,
body.home-auto-theme span {
    transition: color 0.1s linear;
}

/* main以外のコンテンツにも対応 */
body.home-auto-theme.bg-is-dark .content,
body.home-auto-theme.bg-is-dark .pageContent,
body.home-auto-theme.bg-is-dark .article,
body.home-auto-theme.bg-is-dark .newsContent {
    color: #ffffff;
}

body.home-auto-theme.bg-is-dark .content p,
body.home-auto-theme.bg-is-dark .pageContent p,
body.home-auto-theme.bg-is-dark .article p,
body.home-auto-theme.bg-is-dark .newsContent p {
    color: #ffffff;
}