﻿/*
Theme Name: tokaiopt2023en
Theme URI: /wp-content/themes/tokaiopt2023en/
Author: Yuichiro Hayashi
Author URI: https://16deza.com/
Description: Responsive, Breez
Version: 0.1.1
Date: 2023-05-13
License: 
License URI: 
*/

@charset "utf-8";


/*
Based on : tokaiopt2022 @ tokaiopt.jp / 2022-07-05 to 2023-01-25
*/



:root {
	--base-color: #fff;
	--black-color: #000; 
	--acc-color: #0080DC;
	--moji-color: #444; 
	--link-color: #0080DC; 
	--hover-color: #0095FF;
	--dark-color: #0C394F;
	--bg-color-slight:#F0F4F6;
	--bg-color-mlight:#e0e4e6;
	--bg-color-footer: #EDEDED;
	--radius-btn: 6px;	
	--radius-bnr: 10px;
	--section-padding: 6em;
	--section-padding-narrow: 4.725em;
	--section-padding-thin: 2.3625em;
	--sans: 
		"Open Sans", "BIZ UDPGothic", "Didact Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;	
	--sans-ita: 
		"Open Sans Italic", "BIZ UDPGothic", "Didact Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;	
}



.serif {font-family:var(--serif-en);}
.sans-serif {font-family:var(--sans);}

.xxfine {font-weight:200;}
.xfine {font-weight:300;}
.fine {font-weight:400;}
.xbold {font-weight:700;}
.xxbold {font-weight:900;}


.OpenSans {font-family: 'Open Sans';}
@font-face {
    font-family: 'Open Sans';
    src: url('./fonts/OpenSans-Variable.woff') format('woff'),
         url('./fonts/OpenSans-Variable.ttf') format('truetype');
    font-style: normal;
}
.OpenSans-Italic {font-family: 'Open Sans Italic';}
@font-face {
    font-family: 'Open Sans Italic';
    src: url('./fonts/OpenSans-Italic-Variable.woff') format('woff'),
         url('./fonts/OpenSans-Italic-Variable.ttf') format('truetype');
    font-style: normal;
}
.LexendDeca {font-family: 'Lexend Deca';}
@font-face {
    font-family: 'Lexend Deca';
    src: url('./fonts/LexendDeca-Variable.woff') format('woff'),
         url('./fonts/LexendDeca-Variable.ttf') format('truetype');
    font-style: normal;
}


.accent {color:var(--acc-color);}
.bg-accent {background:var(--acc-color);}
.bg-slight {background:var(--bg-color-slight);}
.bg-white {background:#fff;}
.bg-gray {background:gray;}



/* ==========================================================================
   initialize / Based on  -- " normalize.css v1.1.0 | MIT License | git.io/normalize "
   ========================================================================== */
a:focus {outline: thin dotted;}
a:active, a:hover {outline: 0;}
figure {margin:0; padding:0;}
h1 {font-size: 2em; margin: 0.67em 0;}
h2 {font-size: 1.5em; margin: 0.83em 0;}
h3 {font-size: 1.17em; margin: 1em 0;}
h4 {font-size: 1em; margin: 1.33em 0;}
h5 {font-size: 0.83em; margin: 1.67em 0;}
h6 {font-size: 0.67em; margin: 2.33em 0;}
hr {-moz-box-sizing: content-box; box-sizing: content-box; height: 0;}
pre {margin: 1em 0; white-space: pre; white-space: pre-wrap; word-wrap: break-word;}
small {font-size: 80%;}
sub,
sup {font-size: 75%; line-height: 0;position: relative;vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
button,
input {line-height: normal;}
textarea {vertical-align: top;}
table {border-collapse: collapse; border-spacing: 0;}

/*
strong, b {font-weight:900 !important;}
*/



/* =============================================================================
   Site Styles
   ========================================================================== */

html {max-width:100vw; overflow:auto;}
body {
	font-family: var(--sans);
	/*
	font-family:
	"Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;	
	/*
	'游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', sans-serif, 'Takao Pゴシック', 'TakaoPGothic', sans;
	/*'游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;*/
	
	font-weight:400; 
	line-height:1.7em; font-size:17px; padding-top:0px; 
	color:var(--moji-color);
	background:var(--base-color);
	text-align:center; width:100%; max-width:100%; overflow:hidden;
	top:0 !important;
	-webkit-text-size-adjust: 100%; 
}

.serif {font-family:'游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;}



header, #main, footer {opacity:0;}  

#main {height: 100%; text-align:left;}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

p {margin:1.5em auto; text-align:left;}

img {max-width:100%; height:auto; vertical-align:middle;}

.hr-box {width:100%; margin: 0;}
.hr-box.pd-both {padding:var(--section-padding) 0;}
.hr-box.pd-top {padding:var(--section-padding) 0 0;}
.hr-box.pd-btm {padding:0 0 var(--section-padding);}


h1 {font-size:2em; font-weight:bold; text-align:center; margin:1.1em auto; line-height:1em;}

h2 {
	line-height:2.0em;
	vertical-align: baseline;
    margin: 0;
	padding-top: 0.35em;
	padding-bottom: 0.25em;	
	font-weight:500;
	line-height:1.5em; font-size:225%;
	color:#4b4b4b;
}

h2.tac {padding-left:0; padding-right:0; text-align:center;}

h3 {
	color:#4b4b4b; line-height:1.5em; font-size:26px; font-weight:normal;
	margin-top:1em; padding:0.1em 0; 
}

h4, h5, h6 {color:#666;}

a {color:var(--link-color); text-decoration:none; transition:all 0.28s linear 0s;}
a:hover {color:var(--hover-color); text-decoration:none; transition: 0.14s linear all;}


button {cursor:pointer;}


blockquote {
	font-size:90%;
	background:rgba(0,0,0,0.075);
	margin:1em 0;
	padding:40px 20px;
	border-radius:0 30px 0 30px;
	position: relative;
}
blockquote:before {
    color: #fff;
    content: "“";
    font-family: serif;
    font-size: 500%;
    line-height: 1em;
    position: absolute;
    left:15px; top:15px;
}
blockquote:after {
    color: #fff;
    content: "”";
    font-family: serif;
    font-size: 500%;
    line-height: 0;
    position: absolute;
    right:20px; bottom:10px;
}


dt,dd {margin:0; padding:0.5em;}

table {
	clear:both;
	text-align:left;
	margin:16px 0px; 
	word-break:normal;
	box-sizing:border-box;
	width:99%;
}

th,td {
	padding:0.5em 1em;
	font-weight:normal;
	line-height:1.8em;
	text-align:left;
	word-break:normal;
	box-sizing:border-box;
}
th {border-bottom:1px solid #ddd;}
td {border-bottom:1px solid #ddd;}
.flex-table th{white-space: nowrap;}

ul {padding-left: 1.5em;}

ul,ol  {text-align: left;}

li {list-style:none; line-height:1.5em; margin:0.75em 0.5em;}

ul li.sq {list-style: square;}
ul li.sm {list-style: circle;}
ul li.km {list-style: disc;}

ol {
	padding-left: 1.5em;
}

ol li {
	list-style-type: decimal;
	padding-left: 0.5em;
	margin: 0.75em 0.5em;
}



/* **************************************************** 
	header
*/ 
header {
	position:absolute;
	top:0; left:0; width:100%;
	padding:1.5rem;
	border:none;	height:auto;
	z-index:10001;
}

header .inner {
	height:100px;
	background:rgba(255,255,255,1);
}

header .logo {height:40px; width:auto; margin:0 1.5rem;}




/* **************************************************** 
	navigation
*/ 

#gblnavi-pc ul {padding:0; margin:0;}

#gblnavi-pc .wrapper {
	position:relative;
	max-width:1200px; margin:auto; overflow:visible;
}

#gblnavi-pc {height:100%; padding:0;}
#gblnavi-pc a {color:#444;}
#gblnavi-pc a:hover {color:#0080cb;}

#gblnavi-pc ul {margin:0; padding:0;}
#gblnavi-pc ul li {display:inline-block; vertical-align:top;}

#gblnavi-pc .main-menu,
#gblnavi-pc .sub-menu {display:table-cell; color:var(--acc-color); font-size:13px;}

#gblnavi-pc .main-menu a,
#gblnavi-pc .sub-menu a {color:var(--acc-color);}

#gblnavi-pc .main-menu {margin-right:1rem;}

#gblnavi-pc .main-menu > ul li {width:94px; height:100px; padding:0;}
#gblnavi-pc .main-menu > ul li .icon {width:24px; height:auto;}
#gblnavi-pc .main-menu > ul li:first-child .icon {width:22px; margin-top:24px;}
#gblnavi-pc .main-menu > ul li:nth-child(2) .icon {width:26px; margin-top:24px;}
#gblnavi-pc .main-menu > ul li:nth-child(3) .icon {width:20px; margin-top:22px;}
#gblnavi-pc .main-menu > ul li:nth-child(4) .icon {width:27px; margin-top:22px;}
#gblnavi-pc .main-menu > ul li:nth-child(5) .icon {width:26px; margin-top:25px;}
#gblnavi-pc .main-menu > ul li:nth-child(6) .icon {width:22px; margin-top:24px;}
#gblnavi-pc .main-menu > ul li:nth-child(7) .icon {width:24px; margin-top:23px;}

#gblnavi-pc .main-menu > ul > li {
	position:relative; margin:0; padding:0; text-align:center; line-height:1;
}
#gblnavi-pc .main-menu > ul > li > a > span {
	position:absolute; display:flex; justify-content:center; align-items:center; 
	width:100%; text-align:center; vertical-align:middle;
}
#gblnavi-pc .main-menu > ul > li > a > span img.icon {margin:auto !important;}
#gblnavi-pc .main-menu > ul > li > a > span:first-child {top:0; right:0; left:0; height:40%;}
#gblnavi-pc .main-menu > ul > li > a > span:last-child {right:0; bottom:0; left:0; height:60%;}
#gblnavi-pc .main-menu > ul > li:hover {background:var(--acc-color); color:#fff;}
#gblnavi-pc .main-menu > ul > li > a {transition:all 0s linear 0s;}
#gblnavi-pc .main-menu > ul > li:hover > a {color:#fff; transition:all 0s linear 0s;}
#gblnavi-pc .main-menu > ul > li:hover img.icon {filter:brightness(0) invert(1);}


#gblnavi-pc .sub-menu {
	width:auto; height:100px; line-height:1; margin-right:1rem;
	display:flex; flex-direction: column; flex-direction:column-reverse; 
}
#gblnavi-pc .sub-menu ul.sns-link {
	position:relative;
	width:auto; height:50px;
	/*padding:0.25rem 2px 8px 54px; */
	padding:0.25rem 0.25rem 8px; 
	display:flex; 
	justify-content:space-between;
}
/*
#gblnavi-pc .sub-menu ul.sns-link::before {
		position:absolute; top:55%; left:4px; transform:translateY(-50%);
		content:"SNS"; display:block; width:3em;
}
#gblnavi-pc .sub-menu ul.sns-link::after {
		position:absolute; top:55%; left:40px;
		content:""; display:block; width:1em; border-bottom:1px solid var(--acc-color);
}
*/
#gblnavi-pc .sub-menu ul.sns-link .icon {width:auto; height:24px;}
#gblnavi-pc .sub-menu ul.sns-link  li {margin:12px 9px 0 12px;}
#gblnavi-pc .sub-menu ul.sns-link  li:hover {filter: saturate(200%);}

#gblnavi-pc .sub-menu ul.group-link {
	position:relative; 
	width:auto; height:50px;
	padding:0; 
	display:flex; 
	/*justify-content:space-between;*/
	justify-content:center;
	border-top:1px solid var(--acc-color);
}
#gblnavi-pc .sub-menu ul.group-link .icon {width:auto; height:19px; margin-top:-3px; margin-right:7px;}
#gblnavi-pc .sub-menu ul.group-link > li {position:relative; width:100%; margin:0 auto; padding:0.8rem 0.8rem 0.3rem 0.7rem; text-align:center;}
#gblnavi-pc .sub-menu ul.group-link > li span {display:inline-block;}
/*#gblnavi-pc .sub-menu ul.group-link > li:first-child {margin-right:0.25rem;}*/
#gblnavi-pc .sub-menu ul.group-link > li:hover {background:var(--acc-color); color:#fff;}
#gblnavi-pc .sub-menu ul.group-link > li > a {transition:all 0s linear 0s;}
#gblnavi-pc .sub-menu ul.group-link > li:hover > a {color:#fff; transition:all 0s linear 0s;}
#gblnavi-pc .sub-menu ul.group-link > li:hover > a > img.icon {filter:brightness(0) invert(1);}


#gblnavi-pc .mega-menu-inner {
	background: var(--base-color);
	display: none;
	position: fixed; top:calc(100px + 1.5rem); left:1.5rem; right:1.5rem;
	width: calc(100% - 3rem);
	padding:1rem;
	color:var(--acc-color);
	border-top:2px solid var(--acc-color);
	cursor:default;
}
#gblnavi-pc .mega-menu-inner ul {display:flex; margin:0 1.5rem; padding:0;}
#gblnavi-pc .mega-menu-inner ul:not(.sub-menu-like) li {display:block; margin:0; padding:2rem; width:auto; height:auto;}
#gblnavi-pc .mega-menu-inner ul:not(.sub-menu-like) li a {display:block; width:100%; height:100%; padding:0 2rem; color:var(--acc-color);}
#gblnavi-pc .mega-menu-inner ul:not(.sub-menu-like) li:hover a {color:#fff;}


#gblnavi-pc .main-menu .mega-menu-inner ul {
	display:flex; justify-content:flex-end; align-items:center; 
}
#gblnavi-pc .main-menu .mega-menu-inner ul li {
	display:flex; justify-content:center; align-items:center; 
	width:auto;
}
#gblnavi-pc .main-menu .mega-menu-inner ul li img {
	transition:all 0.11s ease-in-out 0s;
}
#gblnavi-pc .main-menu .mega-menu-inner ul li:hover img {
	filter: saturate(200%);
	transform:scale(1.07) translateY(-3px);
	transition:all 0.077s ease-in-out 0s;
}
#gblnavi-pc .mega-menu-inner ul li:first-child img {width:auto; height:95px; margin-top:-8px;}
#gblnavi-pc .mega-menu-inner ul li:nth-child(2) img {width:auto; height:83px; margin-top:-2px;}
#gblnavi-pc .mega-menu-inner ul li:nth-child(3) img {width:auto; height:85px; margin-top:-5px;}
#gblnavi-pc .mega-menu-inner ul li:has(a.select-by):last-child {margin-right:3em;}

#gblnavi-pc .main-menu .mega-menu-inner ul li div {display:inline-block;}
#gblnavi-pc .main-menu .mega-menu-inner ul li div:last-child {transform:translateY(0.5rem);}

#gblnavi-pc .main-menu .mega-menu-inner ul li > a.select-by {color:var(--moji-color); transition:all 0s;}
#gblnavi-pc .main-menu .mega-menu-inner ul li:hover > a.select-by {	color:var(--hover-color); transition:all 0s;}
#gblnavi-pc .main-menu .mega-menu-inner ul li a.select-by span {
	padding:0 1rem;
	word-break:keep-all; white-space:nowrap;
	line-height:1.25;
}
#gblnavi-pc .main-menu .mega-menu-inner ul li a.select-by span:first-child {font-size:0.75rem; font-weight:400;}
#gblnavi-pc .main-menu .mega-menu-inner ul li a.select-by span:last-child {font-size:1.15rem; font-weight:500;}

#gblnavi-pc #searchform-small {
	display:flex; justify-content: center; align-items: center;
	border:1px solid var(--dark-color);
}
#gblnavi-pc #searchform-small input#s {
	padding:0.125em 0.5em; margin:0; 
	width:10em; height:2em;
	border:none !important;
	border-radius:0 !important;	
}
#gblnavi-pc #searchform-small input#searchsubmit-small {
	padding:0.125em 0 0.125em 2em; margin:0; 
	width:2em; height:2em;
	border-radius:0 !important;
	background:var(--dark-color) url(./img/icon/search-btn.svg) no-repeat;
	background-position:center center;
	background-size:auto 1em;
	color:var(--base-color);
	border:none !important;
	cursor:pointer;
	transition:all 0.09s ease 0s;
}
#gblnavi-pc #searchform-small input#searchsubmit-small:hover {background-size:auto 1.3em; transition:all 0.09s ease 0s;}

#gblnavi-pc .main-menu .mega-menu-inner ul.sub-menu-like {margin-block:-2em;}
#gblnavi-pc .main-menu .mega-menu-inner ul.sub-menu-like li a {display:inline-block; width:100%; height:auto; padding:1.5rem; transition:all 0.18s linear 0s;}
#gblnavi-pc .main-menu .mega-menu-inner ul.sub-menu-like li a:hover {background:var(--bg-color-slight); color:var(--hover-color); transition:all 0.09s linear 0s;}




#gblnavi-pc .sub-menu .mega-menu-inner.related-menu {text-align:center;}
#gblnavi-pc .sub-menu .mega-menu-inner ul {
	display:flex; justify-content:center; align-items:center;
	width:min(100%, 1120px); margin:auto;
}
#gblnavi-pc .sub-menu .mega-menu-inner ul li {display:block; width:160px; text-align:center; margin:auto; transition:all 0.18s linear 0s;}
#gblnavi-pc .sub-menu .mega-menu-inner ul li:hover {transition:all 0.09s linear 0s;}
#gblnavi-pc .sub-menu .mega-menu-inner ul li > a {color:var(--acc-color); transition:all 0.18s linear 0s;}
#gblnavi-pc .sub-menu .mega-menu-inner ul li:hover > a {background:var(--bg-color-slight); color:var(--hover-color); transition:all 0.09s linear 0s;}

#gblnavi-pc .sub-menu ul.group-link .mega-menu-inner ul li {padding:0;}
#gblnavi-pc .sub-menu ul.group-link .mega-menu-inner ul li > a {display:inline-block; width:100%; height:100%; padding:1.5rem; transition:all 0.18s linear 0s;}


#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .duo-wrapper {display:flex; justify-content:space-around; align-items:center;}
#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .duo-wrapper > div {width:50%; text-align:center;}
#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .duo-wrapper > div > div {display:inline-block; margin:auto; padding:0 0.25rem; color:var(--moji-color);}

#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .select-language #google_translate_element {display:inline-block;}
#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .to-global-site a {display:inline-block; padding:1.5rem 5rem; transition:all 0.18s linear 0s;}
#gblnavi-pc .sub-menu .mega-menu-inner.global-menu .to-global-site a:hover {background:var(--bg-color-slight); color:var(--hover-color); transition:all 0.09s linear 0s;}
#gblnavi-pc .sub-menu .mega-menu-inner.global-menu img.icon {width:12px; height:auto; margin-left:3px;}




#burger-btn {
    position:fixed; top:0; right:0;
	width:86px; height:60px; margin:0; padding:0;
	transition:all .3s linear 0s;	
	cursor:pointer;
	z-index:10010;
	pointer-events:auto;
}

@media (min-width:1170px) {
	#gblnavi-pc {display:flex;}
	#burger-btn,
	#burger-menu {display:none;}
}
@media (max-width:1169px) {
	#gblnavi-pc {display:none;}
	#burger-btn, #burger-menu {display:block;}
	header {
		position:fixed;
		top:0; left:0; width:100%;
		padding:0;
		border:none;	height:7;
		z-index:10000;
	}
	header .inner {height:calc(36px + 2rem);}
	header .logo {position:fixed; top:0; left:0; height:36px; width:auto; margin:1rem; z-index:10001;}
}
@media (max-width:480px) {
	header .inner {height:calc(30px + 2rem);}
	header .logo {height:30px; width:auto; margin:1rem 0.5rem;}
	#burger-btn {transform:scale(0.85); top:0px; right:-10px;}
}



.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {padding:14px 12px 8px;}
.menu-trigger .inner {
	position: relative; cursor:pointer;
	width: 32px; height: 28px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: var(--acc-color);
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: calc(50% - 2px);
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger .inner::after {
	position: absolute;	left:-1px; top:24px; 
	content: 'menu';
	display: block;
	color: var(--acc-color); letter-spacing:0.065em;
	font-size: 11px;
	text-align: center;
	font-family:'Lexend Deca';
}

.menu-trigger.active {padding:8px 12px 8px;}
.menu-trigger.active .inner {height:48px;}
.menu-trigger.active span {
	background:var(--acc-color);
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(22px) rotate(-225deg) scale(1.1);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-22px) rotate(225deg) scale(1.1);
}
.menu-trigger.active .inner::after {
	position: absolute;	left:0px; top:32px; 
	content: 'close';
	display: block;
	color: var(--acc-color); letter-spacing:0.07em;
	font-size: 11px;
	text-align: center;
}



#burger-menu {
	position:fixed; top:60px; right:-120%;
	width:100vw; height:calc(100vh - 60px); 
	padding-bottom:72px;
 	background: rgba(255,255,255,1);
	color:#222;
	transition:all 0.66s ease-in-out 0s; 
	pointer-events: none;
	overflow:auto;
	z-index:0;
}
#burger-menu.reveal {
	right:0;
	transition:all 0.44s ease-in-out 0s; 
	pointer-events: auto;
	overflow:auto;
}


#gblnavi-mobile {
	margin:0; padding-top:1.5em; padding-bottom:120px; 
	height:auto; min-height:100%;
	overflow:auto;
}
#gblnavi-mobile a {color:var(--acc-color) !important;}
#gblnavi-mobile .toggle-menu-inner {display:none;}

#gblnavi-mobile .main-menu,
#gblnavi-mobile .sub-menu {
	display:block; color:var(--acc-color); font-size:13px;
}
#gblnavi-mobile .main-menu {margin:1em 0 0;}
#gblnavi-mobile .main-menu > ul {
	display:block; 
	width:100%;
	margin:0;
	padding:0 1.5em;
}
#gblnavi-mobile .main-menu > ul > li {
	width:100%; height:auto; min-height:68px; 
	margin:0; padding:8px 0;
	border-bottom:1px solid var(--acc-color);
	vertical-align:middle;
	font-size:1.1em;
	position:relative;
}
#gblnavi-mobile .main-menu > ul > li:not([class])::after,
#gblnavi-mobile .sub-menu ul.group-link > li::after {
	display:block; content:""; 
	position:absolute; top:50%; right:8px;
	width:8px; height:8px;
	margin-top:-4px;
	border-top:1px solid var(--acc-color); border-right:1px solid var(--acc-color);
	transform:rotate(45deg);
}
#gblnavi-mobile .main-menu > ul > li.toggle-menu-opener {cursor: pointer;}
#gblnavi-mobile .main-menu > ul > li.toggle-menu-opener::after {
	display:block; content:""; 
	position:absolute; top:34px; right:6px; 
	width:10px; height:10px;
	margin-top:-5px;
	background:url(./img/icon/batten.svg) no-repeat center center;
	background-size:contain;
	transform:rotate(135deg);
	transition:all 0.22s linear 0s;
}
#gblnavi-mobile .main-menu > ul > li.toggle-menu-opener.active::after {
	transform:rotate(0deg);
	transition:all 0.22s linear 0s;
}

#gblnavi-mobile .main-menu > ul > li .icon {width:34px; height:auto; margin:9px 24px 9px 12px;}
#gblnavi-mobile .main-menu > ul > li:first-child .icon {width:32px; margin-right:calc(24px + 1px); margin-left:calc(12px + 1px);}
#gblnavi-mobile .main-menu > ul > li:nth-child(2) .icon {width:36px; margin-right:calc(24px - 1px); margin-left:calc(12px - 1px); transform:translateY(4px);}
#gblnavi-mobile .main-menu > ul > li:nth-child(3) .icon {width:26px; margin-right:calc(24px + 4px); margin-left:calc(12px + 4px); margin-bottom:-2px; transform:translateY(1px);}
#gblnavi-mobile .main-menu > ul > li:nth-child(4) .icon {width:37px; margin-right:calc(24px - 3px); margin-left:calc(12px - 3px); margin-bottom:-3px;}
#gblnavi-mobile .main-menu > ul > li:nth-child(5) .icon {width:36px; margin-right:calc(24px - 1px); margin-left:calc(12px - 1px); margin-top:15px; transform:translateY(-2px);}
#gblnavi-mobile .main-menu > ul > li:nth-child(6) .icon {width:32px; margin-right:calc(24px + 1px); margin-left:calc(12px + 1px); transform:translateY(1px);}
#gblnavi-mobile .main-menu > ul > li:nth-child(7) .icon {width:32px; margin-right:calc(24px + 1px); margin-left:calc(12px + 1px); transform:translateY(1px);}

#gblnavi-mobile .main-menu > ul > li:not([class]) a {display:block; text-align:left;}
#gblnavi-mobile .main-menu > ul > li:not([class]) a img,
#gblnavi-mobile .main-menu > ul > li:not([class]) a span {display:inline-block; vertical-align:middle;}
#gblnavi-mobile .main-menu > ul > li:not([class]) a span br {display:none;}

#gblnavi-mobile .main-menu > ul > li:nth-child(3) span {display:inline-block; transform:translateY(6px);} 
#gblnavi-mobile .main-menu > ul > li:nth-child(4) span {display:inline-block; transform:translate(2px,6px);} 
#gblnavi-mobile .main-menu > ul > li:nth-child(5) span {display:inline-block; transform:translateY(1px);} 
#gblnavi-mobile .main-menu > ul > li:nth-child(6) span {display:inline-block; transform:translateY(1px);}


#gblnavi-mobile .main-menu > ul > li.find-products:first-child img.onayami-kara {height:88px; margin-bottom:8px;}
#gblnavi-mobile .main-menu > ul > li.find-products:first-child img.lens-shindan-kara {height:85px; margin:3px 0 8px;}
#gblnavi-mobile .main-menu > ul > li.find-products:first-child img.catalog-kara {height:85px; margin:3px 0 8px;}
#gblnavi-mobile .main-menu > ul > li.find-products:first-child li span:first-child {font-size:85%; font-weight:400;  font-feature-settings:"palt";}
#gblnavi-mobile .main-menu > ul > li.find-products:first-child li span:last-child {font-size:105%; font-weight:500; font-feature-settings:"palt";}

#gblnavi-mobile .main-menu > ul > li a {display:block; width:100%; height:100%;}


@media (min-width:681px) {
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child ul {display:flex; padding-left:0; justify-content:center;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li {display:block; position:relative; width:auto; min-width:18%; margin:0; padding:0 3em 3em; text-align:center;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li:first-child::after,
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li:nth-child(2)::after {
		display:block; content:""; 
		position:absolute; top:0; right:0; 
		width:1px; height:calc(100% - 3em);
		border-right:1px solid rgba(0,0,0,0.1);
	}
}
@media (max-width:680px) {
	#gblnavi-mobile .main-menu > ul {width:100%;}	
	#gblnavi-mobile .main-menu > ul > li.find-products {margin:0 0 0; padding:0 0 0.75em;}
	#gblnavi-mobile .main-menu > ul > li.find-products a.select-by {padding-left:1.25em;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child a div {display:inline-block;}	
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child a div:has(img) {width:52px;}	
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child a div:has(span) {width:calc(100% - 70px);}	
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li img.onayami-kara {height:50px; margin-bottom:8px;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li img.lens-shindan-kara {height:50px; margin:1px 0 7px;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li img.catalog-kara {height: 50px; margin:2px 0 6px 3px;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li#searchinside {display:none;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li span + br {display:none;}	
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li span {display:inline-block;}
	#gblnavi-mobile .main-menu > ul > li.find-products:first-child li span:last-child {margin-left:0.125em;}
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner ul {display:block; padding-left:0; text-align:center;}
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:not([class]) {display:inline-block; position:relative; width:100%; margin:0; padding:2em 0.75em; text-align:center;}
}


/*
@media (min-width:681px) {
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner ul {display:flex; padding-left:0; justify-content:center;}
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li {display:block; position:relative; width:auto; min-width:18%; padding:2em; text-align:center;}
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:first-child::after {
		display:block; content:""; 
		position:absolute; top:1.5em; right:0; 
		width:1px; height:calc(100% - 3em);
		border-right:1px solid rgba(0,0,0,0.1);
	}
}
@media (max-width:680px) {
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner ul {display:block; padding-left:0; text-align:center;}	
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:not([class]) {display:inline-block; position:relative; width:49%; margin-inline:0; padding:2em 0.75em; text-align:center;}
	#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:first-child::after {
		display:block; content:""; 
		position:absolute; top:1.5em; right:0; 
		width:1px; height:calc(100% - 3em);
		border-right:1px solid rgba(0,0,0,0.1);
	}
}

#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:nth-child(3),
#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:nth-child(4),
#gblnavi-mobile .main-menu > ul > li:first-child .toggle-menu-inner li:nth-child(5),
#gblnavi-mobile #searchform-small {display:none !important;}
*/



#gblnavi-mobile .sub-menu {
	width:auto; height:100px; line-height:1; margin-right:1rem;
}
#gblnavi-mobile .sub-menu ul.sns-link {
	position:relative;
	width:100%; 
	height:auto;
	/*
	height:110px;
	padding:3em 1.5em 1em;*/
	padding:1em 1.5em 5em calc(1.5em + 18px);
	display:block; text-align:center;
}
/*
#gblnavi-mobile .sub-menu ul.sns-link::before {
	position:absolute; top:1em; left:50%; transform:translateX(-50%);
	content:"SNS"; display:block; width:3em;
}
#gblnavi-mobile .sub-menu ul.sns-link::after {
	position:absolute; top:3em; left:50%; transform:translateX(-50%);
	content:""; display:block; width:1em; border-bottom:1px solid var(--acc-color);
}
*/

#gblnavi-mobile .sub-menu ul.sns-link .icon {width:auto; height:36px; margin:0 8px;}
#gblnavi-mobile .sub-menu ul.sns-link  li {display:inline-block; margin:12px 8px;}

#gblnavi-mobile .sub-menu ul.group-link {
	display:block;
	position:relative; 
	width:auto; height:auto;
	padding:0 0 0.5em 1.5em;
	margin:0;
}
#gblnavi-mobile .sub-menu ul.group-link > li {
	width:100%; height:auto; min-height:68px;  
	margin:0; padding:8px 0;
	border-bottom:1px solid var(--acc-color);
	vertical-align:middle;
	font-size:1.1em;
	position:relative;
}
/*
#gblnavi-mobile .sub-menu ul.group-link > li:first-child {
	border-top:1px solid var(--acc-color);
}
*/
#gblnavi-mobile .sub-menu ul.group-link > li.toggle-menu-opener {
    cursor: pointer;
}
#gblnavi-mobile .sub-menu ul.group-link > li.toggle-menu-opener::after {
	display:block; content:""; 
	position:absolute; top:34px; right:6px; 
	width:10px; height:10px;
	margin-top:-5px;
	background:url(./img/icon/batten.svg) no-repeat center center;
	background-size:contain;
	transform:rotate(135deg);
	transition:all 0.22s linear 0s;
}
#gblnavi-mobile .sub-menu ul.group-link > li.toggle-menu-opener.active::after {
	transform:rotate(0deg);
	transition:all 0.22s linear 0s;
}
#gblnavi-mobile .sub-menu ul.group-link > li:not([class]) a {display:block; text-align:left;}
#gblnavi-mobile .sub-menu ul.group-link > li > a {display:block; height:calc(68px - 2em); vertical-align:middle; transform:translateY(3px);}
#gblnavi-mobile .sub-menu ul.group-link > li:first-child > a > .icon {width:34px; height:auto; margin:10px 24px 12px 10px;}
#gblnavi-mobile .sub-menu ul.group-link > li:last-child > a > .icon {width:34px; height:auto; margin:6px 24px 8px 10px;}



#gblnavi-mobile .toggle-menu-inner {
	display: none;
	width: 100%;
	margin-top:1em;
	color:var(--acc-color);
	cursor:default;
}

#gblnavi-mobile .toggle-menu-inner ul {display:block; margin:0; padding:0 0 1em 2em; text-align:left;}
#gblnavi-mobile .main-menu .toggle-menu-inner ul.sub-menu-like li {display:inline-block; width:calc(100% - 1em); margin:0; padding:0.5em 1.5em 1em 0; text-align:left; vertical-align:top;}
#gblnavi-mobile .sub-menu .toggle-menu-inner ul li {display:inline-block; width:calc(50% - 1em); margin:0; padding:0.5em 1.5em 1em 0; text-align:left; vertical-align:top;}
#gblnavi-mobile .toggle-menu-inner ul li a {display:block; width:100%; height:100%; color:var(--acc-color);}

#gblnavi-mobile .sub-menu .toggle-menu-inner.global-menu .duo-wrapper {display:block;}
#gblnavi-mobile .sub-menu .toggle-menu-inner.global-menu .duo-wrapper > div {width:100%; margin:1em auto 2em; text-align:center;}
#gblnavi-mobile .sub-menu .toggle-menu-inner.global-menu .duo-wrapper > div > div {display:inline-block; margin:auto; padding:0 0.25rem; color:var(--moji-color);}
#gblnavi-mobile .sub-menu .toggle-menu-inner.global-menu .to-global-site a {display:inline-block; padding:0;}
#gblnavi-mobile .sub-menu .toggle-menu-inner.global-menu img.icon {width:12px; height:auto; margin-left:3px;}





/* ************************************************
	パンくず
*/

.pnkz {width:100%; padding:1.5rem 0; font-size:80%;}
.pnkz span {display:inline-block;}



/* ************************************************
	コンテンツ
*/




/* ************************************************
	footer
*/

footer {
	clear:both;
	padding:5em 0 3em; text-align:center; font-size:14px;
	color:#7a7a7a; height:auto; min-height:250px;
	background:#ededed;
}
footer a {color:#7a7a7a;}
footer a:hover {color:#24242c; transition:all 0.3s linear 0s;}
footer ul {margin:0; padding:0;}
footer ul li {
    display: inline-block; height: 24px; vertical-align:top;
	font-size:13px; text-align:left;
    margin:0.75em 1.5em;
}
footer ul li:first-child {margin-left:0;}
footer ul li:last-child {margin-right:0;}

@media (min-width:769px) {
	footer #footer-logo {text-align:left;}
}

footer .logo {width:226px; height:auto;}

footer #footer-search {margin:2.5em 0 1.5em;}
footer #footer-search #footer-searchform {
	display:flex; 
	justify-content: center;
	align-items: center;
}
footer #footer-search input#s {
	padding:0.125em 0.5em; margin:0; 
	width:14.5em; height:3em;
	border:none !important;
	border-radius:0 !important;	
}
footer #footer-search input#footer-searchsubmit {
	padding:0.125em 0.125em 0.125em 2em; margin:0; 
	width:7.5em; height:3em; font-weight:600;
	border-radius:0 !important;
	background:var(--dark-color) url(./img/icon/search-btn.svg) no-repeat;
	background-position:1em center;
	background-size:auto 1.5em;
	color:var(--base-color);
	border:none !important;
	cursor:pointer;
	transition:all 0.09s ease 0s;
}
.is-pc footer #footer-search input#footer-searchsubmit:hover {background-size:auto 1.75em; transition:all 0.09s ease 0s;}



footer .sns-link {margin:1.5em 0;}
footer .sns-link a {display:inline-block; margin:0.5em;}
footer .sns-link .icon {width:24px; height:auto;}

footer .footer-navi-upper {margin-top:-1em; margin-bottom:3em;}
footer .footer-navi-lower ul {text-align:left;}

#copyright {clear:both; margin:3em 0 1em;font-size:11px; line-height:1.5;}

@media (min-width:769px) {
	footer .footer-navi-lower ul li:not(:last-child) {position:relative;}
	footer .footer-navi-lower ul li:not(:last-child)::after {
	display:block;
	position:absolute; top:0.35em; right:-1.75em;
	content:"";
	width:1px; height:0.9em;
	border-right:1px solid #aaa;	
	}
	#copyright {text-align:right;}
}
@media (max-width:768px) {
	footer {padding-top:4em;}
	footer .element {width:100%; text-align:center;}
	footer .element ul {width:100%; padding:0; text-align:left;}
	footer .sns-link span {display:block; width:100%;}
	footer .sns-link .icon {width:32px; height:auto; margin:0 0.5em;}
	footer .footer-navi-upper {
		margin:1em 0 3em; padding:1rem;
		border-top:1px solid rgba(0,0,0,0.15);
		border-bottom:1px solid rgba(0,0,0,0.15);
	}
	footer .footer-navi-upper ul {display:block; width:min(100%,660px); margin-inline:auto;}
	footer .footer-navi-upper li {margin:0.75em 0; text-align:center;}
	footer .footer-navi-lower {margin:0;}
	footer .footer-navi-lower ul {display:block; padding:0 1em;}
	footer .footer-navi-lower li {display:inline-block; width:auto; margin:0.5em 0 !important; padding:0;}
	footer .footer-navi-lower li a {display:inline-block; padding:0 calc(1em + 2px) 0 1em; text-align:center; border-right:1px solid #aaa; line-height:1;}
	#copyright {text-align:center;}
}
@media (max-width:480px) {
	footer .footer-navi-upper ul {display:block;}
	footer .footer-navi-upper  li {display:inline-block; width:49%;}	
}


#rewind {
	display:none; position:fixed;
	bottom:10px; right:10px;
	width:3.25em; height:3.25em;
    background:var(--acc-color);
    cursor: pointer;
    border-radius: 100%;
	z-index:10;
}
#rewind::after {
	position:absolute; top:0.25em; right:0; bottom:0; left:0;
	display:block; content:""; width:0.75em; height:0.75em;
	margin:auto;
	border-top:3px solid #fff; border-left:3px solid #fff;
	transform:rotate(45deg);
	z-index:11;
}




/* ************************************************
	button
*/

a.btn-accent {
	position:relative; display:inline-block; 
	margin:1em 0; padding:0.75em 1em; 
	text-align:center; font-weight:400; color:#FFF; 
	border:2px solid var(--acc-color); background:var(--acc-color); border-radius:var(--radius-btn);
}
a.btn-accent::after {
    content: "";
    width: 8px; height: 8px;
    position: absolute;
    top: 50%; right: 14px; 
    margin-top: -4px;
    border-right: 1px solid #fff; border-top: 1px solid #fff;
    transform: rotate(45deg); transition: all 0.14s linear 0s;
}
a.btn-accent::after {right: 11px;}
.is-pc a.btn-accent:hover {background:#fff; color:var(--acc-color); text-shadow:none;}
.is-pc a.btn-accent:hover::after {border-right: 1px solid var(--acc-color); border-top: 1px solid var(--acc-color);} 




/* ************************************************
	Card Shape (縦)
*/

.post-card-wrapper {}

.post-card {height:100%;}

.post-card dl {
	height:100%; position:relative;
	padding:0; margin:0; 
	box-shadow:none; transition:all 0.33s linear 0s; 
	background: var(--base-color);
	overflow:hidden;
	border-radius:var(--radius-bnr);
} 
@media (min-width:1170px) {
	.is-pc a:hover .post-card dl {
		background:var(--acc-color); color:var(--base-color);
		transform:scale(1.025); box-shadow:0 2px 1.15em 2px rgba(0,0,0,0.25); transition:all 0.14s linear 0s; 
	}	
	_::-webkit-full-page-media, _:future, :root 	.is-pc a:hover .post-card dl {
		background:var(--base-color); color:var(--hover-color);
	}
}

.post-card dt {
	width:100%; padding:1rem; margin:0; 
	text-align:center;
}
.post-card dd {width:100%; padding:0.75em 1rem;}
.post-card dd.eyecatch {padding:0;}
.post-card dd.eyecatch img {
	aspect-ratio:3 / 2;
	width:100%; height:100%; margin:0;
	object-fit:cover;
	object-position:50% 50%;
}
.post-card dt span.heading {
	display:block;
	margin:0; padding:0.5rem 0;
	font-size:1.15rem; font-weight:700; line-height:1.5; 
	text-align:center;
}
.post-card dt span.caption {
	display:block;
	margin:0; padding:0.5rem 0;
	font-size:0.9rem; font-weight:400; line-height:1.5; 
	text-align:center;
}
.post-card dd.excerpt {
	padding:0 1rem 1.25rem;
	font-size:0.85rem; line-height:1.4;
	opacity:0.6;
	margin-top:-0.25em;
}



/* ************************************************
	Card Shape (横)
*/

.post-card-yoko-wrapper {}

.post-card-yoko-wrapper a {
	display:inline-block; 
	color:var(--link-color);
}

.post-card-yoko {padding:0.75rem 0;}

.post-card-yoko dl {
	display:flex; align-items:center;
	width:100%;
	height:auto;
	min-height:5rem;
	position:relative;
	margin:0; padding:0;
	background:#fff;
	text-align:left;
	border-radius:var(--radius-bnr);
	overflow:hidden;
	box-shadow:none; transition:all 0.18s linear 0s; 
} 
.is-pc:not(.is-ipad) .post-card-yoko dl:hover {
	transform:scale(1.0125); transition:all 0.09s linear 0s; 
	box-shadow:0 2px 1.05em 2px rgba(83,71,65,0.2); 
}

.post-card-yoko dt,.post-card-yoko dd {margin:0; padding:0;}

.post-card-yoko dd.eyecatch {width:33%; height:100%; border:none;} 

.post-card-yoko dd.eyecatch img {
	aspect-ratio:4 / 3;
	width:100%; height:100%; margin:0;
	object-fit:cover;
	object-position:50% 50%;
}
.post-card-yoko dt {
	position:relative; 
	width:calc(100% - 7.75em); 
	vertical-align:middle;
	padding:0.5em 2.5em 0.5em 1.5em;
	background:transparent;
	border:none; 
} 
.post-card-yoko.external dt::after {
	display:block; content:""; 
	position:absolute; top:0; right:1em; bottom:0;
	width:1em; height:100%;
	background:url(./img/navi/icons/external.svg) no-repeat center center;
	background-size:13px auto;
} 
.post-card-yoko.internal dt::after {
	display:block; content:""; 
	position:absolute; top:50%; right:1em;
	width:8px; height:8px;
	margin-top:-4px;
	border-top:1px solid var(--acc-color); border-right:1px solid var(--acc-color);
	transform:rotate(45deg);
} 

.post-card-yoko .post-date {
	display:block;
	color:#534741; font-size:0.85rem;
} 
.post-card-yoko .post-title {
	display:block;
	color:#534741; font-size:1.1rem; font-weight:bold;
	line-height:1.5;
} 

@media (max-width:768px) {
	.post-card-yoko-wrapper a {margin-inline:auto;}
}

@media (max-width:480px) {
	.post-card-yoko dd.eyecatch {width:35%; height:11em;}
	.post-card-yoko dt {width:65%; padding:0 2em 0 1em; line-height:1.35;}
}






/* =============================================================================
   Post Styles
   ========================================================================== */




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Gutenberg
*/

#main a.wp-embed-more {color:var(--link-color) !important;}


.wp-block-group.has-background {
	padding:0.5em 1.5em;
}

.wp-block-embed figcaption,
.wp-block-image figcaption {
	text-align:center; color:#9e8173;
	font-size:0.85rem; line-height:1.5;
}


.wp-block-gallery .blocks-gallery-image figcaption, .wp-block-gallery .blocks-gallery-item figcaption {line-height:1.5;}
.wp-block-gallery figure { cursor: pointer; }
.is-pc .wp-block-gallery figure {transition:all 0.3s linear 0s;}
.is-pc .wp-block-gallery figure:hover {transform:scale(1.025); box-shadow:0 2px 1.15em 2px rgba(0,0,0,0.25); transition:all 0.14s linear 0s;}
/*.wp-block-gallery + p {margin-top:calc(1.5em - 32px);}*/

/* .wp-block-gallery + p {margin-top:1em;} */

.wp-block-image figcaption,
.blocks-gallery-caption {
	text-align:center;
	font-size:0.85rem;
	color:#9e8173; 
	line-height:1.5;
}


.wp-block-column {}
.wp-block-column p:first-child {margin-top:0.75em;}
.wp-block-column p:last-child {margin-bottom:0.75em;}
.wp-block-column h3:first-child {margin-top:1rem !important;}


@media (max-width:599px) {
	.wp-block-columns + h3 { margin:0.25em 0 1rem;}	
	.wp-block-columns + h2:is(:not([class]), .wp-block-heading) {margin: 1.75em 0 0.75em;}
}


.wp-block-table > table {margin:0;}


.wp-block-column figcaption {
	font-size:0.8rem; color:#778; text-align:center; 
}
.wp-block-table.is-style-stripes {border:none !important;}

.wp-block-table:not(.is-style-stripes) td, .wp-block-table:not(.is-style-stripes) th {
	border-top:none !important; 
	border-right:none !important; 
	border-left:none !important;
	border-bottom:1px solid #ddd;
}


.wp-block-table tr > td:first-child {white-space:nowrap; word-break:keep-all;}
	
.wp-block-embed { margin-bottom: 1em;}
.wp-block-embed-youtube {
	position:relative; text-align:center; 
	margin:1.5em auto 0;
}
.wp-block-embed__wrapper iframe {
	max-width:100%;
	margin:auto;
}
.wp-block-embed-youtube + .caption { 
	/*text-align:center;*/
	margin-top:-0.5em; padding:0 0.25em;
	font-size:90%; line-height:1.6;
}
ul.blocks-gallery-grid {margin:0; padding:0;}

.wp-block-cover__inner-container {line-height: 1.5;}

.wp-block-cover, .wp-block-cover-image {height:auto; max-height:430px;}

.wp-block-file a {display:inline-block;}
.wp-block-file a.wp-block-file__button {display:none;}



@media (min-width:701px) and (max-width:781px) {
	.wp-block-column:not(:only-child) {
		flex-basis:calc(50% - 1em)!important;
		flex-grow:0;
	}
	.wp-block-column:nth-child(2n) {
		margin-left:2em;
	}
}


@media (max-width:700px) {
	.wp-block-columns {flex-direction:column;}
	.wp-block-column {
		flex-basis:100% !important;
		width:100% !important;
	}
	.wp-block-column:nth-child(2n) {
		margin-left:0em !important;
	}
}



@media(max-width:660px) {
	.wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item {width:100% !important; height:auto !important; margin-right:0 !important;}
	.wp-block-gallery .blocks-gallery-image figure, .wp-block-gallery .blocks-gallery-item figure {width:100% !important; height:auto !important;}
}

/*
.wp-block-gallery .blocks-gallery-item figure {
	display:block !important; position:static !important;
}

.wp-block-gallery.is-cropped .blocks-gallery-item img {
	display:block !important; position:relative !important;
}
.wp-block-gallery .blocks-gallery-item figcaption {
	display:block !important; position:static !important;
}
*/




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Pagination
*/
.pager {margin-top:2.5em;}
	
.pagination {
	clear:both;
	position:relative;
	margin:16px 8px 16px;
	text-align:center;
}
 
.pagination span.current, .pagination a  {
	display: inline-block;
	text-align:center;
	width:48px; height:48px;
	font-size:20px; line-height:1.325;
	padding-top:9px;
	padding-bottom:8px;
	margin:7px;
	border-radius:100%;
}
 
.pagination a {background:#fff; color:var(--acc-color); border:1px solid var(--acc-color); }
.pagination a:hover {text-shadow:none;}
/*  
 !!!!!! memo: hover effect = PConly, wrote in media query !!!!!
*/


.pagination .current{
	background:var(--acc-color);
	color:#fff;
}

.pagination span.dot {
	color:var(--acc-color);
	display: inline-block;
	text-align:center;
	width:20px;
	height:48px;
	font-size:20px;
	padding-top:9px;
	padding-bottom:8px;
	margin:5px;
	border-radius:100%;
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Std - Pager //  Pagination @ Search.php
*/

.prev.page-numbers,
.next.page-numbers {display:none;}

.page-numbers {
	padding:0;
	clear:both;
	position:relative;
	margin:0 8px 16px;
	text-align:center;
	font-weight:400;
}
.page-numbers li {
	display: inline-block;
	text-align:center;
	width:auto; height:auto;
	margin:0;
}
.page-numbers a {
	display:block; width:100%; height:100%;
	padding-top:9px;
	padding-bottom:8px;
	width:48px; height:48px; margin:7px;
	font-size:20px; line-height:1.325;
	border-radius:100%;
	background:#fff; color:var(--acc-color); border:1px solid var(--acc-color); 
}
.page-numbers a:hover {text-shadow:none;}

.page-numbers.current {
	display:block; width:100%; height:100%;
	padding-top:9px;
	padding-bottom:8px;
	width:48px; height:48px; margin:7px;
	font-size:20px; line-height:1.325;
	border-radius:100%;
	background:var(--acc-color); color:#fff;
}

.page-numbers.dots {
	color:var(--acc-color);
	display: inline-block;
	text-align:center;
	width:20px;
	height:48px;
	font-size:28px;
	padding-top:9px;
	padding-bottom:8px;
	margin:5px;
	border-radius:100%;
}



/* ****************************************
  fancybox 3
*/


.fancybox-button--close {z-index:99999 !important; background:var(--hover-color) !important;}
.fancybox-slide--iframe .fancybox-content {height:auto; max-height:85vh !important;}

.fancybox-active html {overflow:hidden;}






/* =============================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 996px) {
	
	.smponly, .tblonly, .smptbl {display:none;}

}


@media only screen and (min-width: 769px) and (max-width: 995px) {

	.smponly, .smptbl, .maxonly  {display:none;}
	
}


@media only screen and (min-width: 801px) {

	.hover-zoom {transition:all 0.33s linear 0s;}
	.hover-zoom:hover {transform:scale(1.025); box-shadow:0 2px 1.15em 2px rgba(0,0,0,0.25); transition:all 0.14s linear 0s;}
	.hover-shrink {transition:all 0.26s linear 0s;}
	.hover-shrink:hover {transform:scale(0.975); transition:all 0.1s linear 0s;}

	.pagination a:hover,
	.page-numbers a:hover {
		transform: scale(1.133);
		transition: all 0.1s linear 0s;
	}

}


@media only screen and (min-width: 769px) {

}


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

	.maxonly, .pconly, .smponly, .tblonly, .for-pc {display:none;}
	.smptbl {display:block;}

	table {font-size:0.95rem;}
	th, td {padding:4px 8px;}

	.flex-table:before, .flex-table:after {content: " "; display: table;}
	.flex-table:after {clear: both;}
	.flex-table {*zoom: 1;}
	.flex-table th, .flex-table td {float:left; width:100% !important;}
	.flex-table th {border-bottom:none;}
	.flex-table tr:first-child {border-top:1px solid #ddd;}

}


@media only screen and (min-width: 481px) and (max-width: 768px) {

	.pconly {display:none;}
	.tblonly {display:block;}
	
}


@media only screen and (max-width: 480px) {
	
	body {font-size:0.95rem;}

	.pconly, .tblonly, .tblpc {display:none;}
	.smponly {display:block;}
	
	/*
	h1 {font-size:1.7em;}
	h2 {line-height:1.25em; font-size:1.95em;}
	h3 {font-size:1.4em;}
	*/
	
	table {margin:8px 2px; width:98%;}

	.flex-table-smp:before, .flex-table-smp:after {content: " "; display: table;}
	.flex-table-smp:after {clear: both;}
	.flex-table-smp {*zoom: 1;}
	.flex-table-smp th, table.flex-table-smp td {float:left;}

	
	#rewind {	padding: 2px 6px 8px; right:2px; bottom:2px;}
	

}


/* +++ PRINT SETTING +++ */
@media print{

	#gblnavi-mobile, .smponly, .tblonly, .smptbl {display:none;}

}


/* ==========================================================================
	//////////////// universal class ////////////////////
   ========================================================================== */
.xxxbroad {margin-top:4em !important; margin-bottom:4em !important;}
.xxbroad {margin-top:3em !important; margin-bottom:3em !important;}
.xbroad {margin-top:2em !important; margin-bottom:2em !important;}
.broad {margin-top:1.5em !important; margin-bottom:1.5em !important;}
.regular {margin-top:1em !important; margin-bottom:1em !important;}
.narrow {margin-top:0.5em !important; margin-bottom:0.5em !important;}
.thin {margin-top:0.25em !important; margin-bottom:0.25em !important;}
.flat {margin-top:0 !important; margin-bottom:0 !important;}
.flat-top {margin-top:0 !important;}
.flat-bottom {margin-bottom:0 !important;}
.narrow-top {margin-top:0.5em !important;}
.narrow-bottom {margin-bottom:0.5em !important;}

.bdrb {border-bottom:1px solid #ddd; padding-bottom:1.5em;}
.xxxbroad.bdrb {padding-bottom:4em;}
.xxbroad.bdrb {padding-bottom:3em;}
.xbroad.bdrb {padding-bottom:2em;}


.ofv {overflow:visible !important;}
.ofh {overflow:hidden;}
.ofa {overflow:auto;}
.ofs {overflow:scroll;}

.tac {text-align:center;}
.tal {text-align:left;}
.tar {text-align:right;}
.taj {text-align:justify;}

.cb {clear: both;}
.fr {float: right;}
.fl {float: left;}

.ib {display:inline-block;}
.il {display:inline;}

.pointer {cursor:pointer}

.vat {vertical-align:top;}

.posr {position:relative;}
.posa {position:absolute;}

.fix8 {font-size: 8px;}
.fix9 {font-size: 9px;}
.fix10 {font-size: 10px;}
.fix11 {font-size: 11px;}
.fix12 {font-size: 12px;}
.fix13 {font-size: 13px;}
.fix14 {font-size: 14px;}
.fix15 {font-size: 15px;}
.fix16 {font-size: 16px;}
.fix17 {font-size: 17px;}
.fix18 {font-size: 18px;}
.fix19 {font-size: 19px;}
.fix20 {font-size: 20px;}

.fs50 {font-size: 50%;}
.fs60 {font-size: 60%;}
.fs70 {font-size: 70%;}
.fs75 {font-size: 75%;}
.fs80 {font-size: 80%;}
.fs85 {font-size: 85%;}
.fs90 {font-size: 90%;}
.fs100 {font-size: 100%;}
.fs110 {font-size: 110%;}
.fs120 {font-size: 120%;}
.fs125 {font-size: 125%;}
.fs130 {font-size: 130%;}
.fs140 {font-size: 140%;}
.fs150 {font-size: 150%;}
.fs160 {font-size: 160%;}
.fs170 {font-size: 170%;}
.fs180 {font-size: 180%;}
.fs190 {font-size: 190%;}
.fs200 {font-size: 200%;}
.fs220 {font-size: 220%;}
.fs250 {font-size: 250%;}
.fs300 {font-size: 300%;}
.fs350 {font-size: 350%;}
.fs400 {font-size: 400%;}

.norm {font-weight: normal;}
.bold {font-weight: bold;}

.lh100 {line-height:1em;}
.lh125 {line-height:1.25em;}
.lh135 {line-height:1.35em;}
.lh150 {line-height:1.5em;}
.lh165 {line-height:1.65em;}
.lh175 {line-height:1.75em;}
.lh200 {line-height:2em;}

.dred {color:crimson;}
.hpink {color:hotpink;}
.dorange {color:darkorange;}
.dblue {color:darkblue;}
.dgray {color:darkgray;}

.underline {text-decoration:underline;}


/* =============================================================================
   Font-Face
   ========================================================================== */
/* This is the proper syntax for an @font-face file*/


