@charset "UTF-8";
/*---------------------------------------------------------
Theme Name: fwc3
Theme URI: https://d7r.com
Description: SP Opt
Author: sada
Author URI: https://d7r.com
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: flexible-width, custom-header, custom-menu, editor-style,
Version: 20250128
---------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------
font-family : sans-serif;
font-family : serif;
font-family : 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, 'メイリオ', Meiryo, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
font-family : '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
font-family : 'Hina Mincho', serif;
font-family : 'Kaisei HarunoUmi', serif;
font-family : 'Noto Sans JP', sans-serif;
font-family : 'Noto Serif JP', serif;
font-family : 'Potta One', cursive;
font-family : 'RocknRoll One', sans-serif;
font-family : 'Shippori Antique', sans-serif;
font-family: 'Ubuntu', sans-serif;
font-family: 'Asap', sans-serif;
font-family: "luxus-brut-sparkling", cursive;
font-weight: 400;
font-style: normal;
font-family: "hummingbird", sans-serif;
font-weight: 400;
font-style: normal;
font-family: "hummingbird", sans-serif;
font-weight: 700;
font-style: normal;
--------------------------------------------------------------------------------------------------------------------*/
:root {
	--scrollbar : 0;
/*ライトモード*/
	--color-01 : #fff;
	--color-02 : #000;
	--color-03 : #f6f6f6;
	--color-04 : #026796;	/*フッタ・マウスオーバー及びポイントカラー*/
	--color-05 : #6090be;	/*フッタナビ・ポイントカラーの反対色*/	
	--color-link : #1a0dab;
	--color-hover : #CC3434;
	--color-cal-normal : #f8f9ff;
	--color-cal-closed : #fff9f8;
	--color-cal-free : #f8fffa;
	--color-cal-hover : #f9f9f9;
/*基本書体指定*/
	--font-family01 : '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
/*見出し書体指定　タイトル等*/
	--font-family02 : 'Asap', sans-serif;
/*基本文字サイズ*/
	--font-size : 16px;
/*基本行間*/
	--line-height : 2em;
/*sitename高さ*/
	--size-sitename : 40px;
/*foot_nav高さ*/
	--size-foot_nav : 56px;
/*記事一覧grid列数*/
	--grid_num : 4;
/*post_listサムネイル画像サイズ*/
	--aspect-ratio : 3 / 2;
/*ブロックサイズ*/
	--w-large : 1000px;
	--w-medium : 640px;
	--w-half : 48%;
	--w-1-third : 32%;
	--w-quater : 24%;
	--w-small : 300px;
	--w-thumb : 150px;
	--w-grid-gap : 10px;
/*トップページVegasSliderサイズ　100vhで全画面*/
	--size-vegas : 100vh;
	--size-vegas-d : 100dvh;
/*トップページflexSliderサイズ　MAX*/
	--size-ml-w : 1000px;
	--size-ml-h : 1000px;
}
/*--------------------------------------------------------------------------------------------------------------------
■HTML・BODY
--------------------------------------------------------------------------------------------------------------------*/
html {
	margin : 0;
	padding : 0;
	height : 100%;
	font-size : var(--font-size);
}
body {
	position : relative;
	margin : 0;
	margin-top : 0!important;	/*scroll_fix.js対策*/
	padding : 0;
	background : var(--color-01);
	line-height : var(--line-height);
	font-family : var(--font-family01);
	color : var(--color-02);
	-webkit-text-size-adjust : 100%;
	-webkit-font-smoothing : antialiased;
	-moz-osx-font-smoothing : grayscale;
	table-layout : fixed;
	overflow-wrap : break-word;
	word-break : break-word;
}
/*----------------------------------------------------------
■リンク・強調・スポットカラー
----------------------------------------------------------*/
a,
a:link {
	color : var(--color-link);
	text-decoration : none;
}
a:hover {
	color : var(--color-hover);
	outline : 0;
}
a img {
	border : none;
}
a:hover img {
	opacity : 0.8;
}
b,
strong {
	font-weight : bold;
/*	font-family : var(--font-family02);*/
}
.spot_color {
	color : var(--color-04);
}
/*--------------------------------------------------------------------------------------------------------------------
■表示コントロール
--------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------
■ブロックサイズ
--------------------------------------------------------------------------------------------------------------------*/
.w-large,
.w-half ,
.w-medium,
.w-small {
	width : 100%;
}
@media print, screen and (min-width : 1000px) {
.w-full {
	width : 100%;
}
.w-large {
	width : var(--w-large);
	margin : 0 auto;
}
.w-medium {
	width : var(--w-medium);
}
.w-half {
	width : var(--w-half);
}
.w-1-third {
	width : var(--w-1-third);
}
.w-quarter {
	width : var(--w-quarter);
}
.w-small {
	width : var(--w-small);
}
.w-thumb {
	width : var(--w-thumb);
}
}
/*--------------------------------------------------------------------------------------------------------------------
■grid2-1 2列一覧表示
--------------------------------------------------------------------------------------------------------------------*/
.grid2-1 {
	display : block;
	margin : 0;
	padding : 0;
}
.grid2-1 div ,
.grid2-1 li {
	margin : 0 0 var(--w-grid-gap) 0;
}
@media print, screen and (min-width: 640px) {
.grid2-1 {
	display : grid;
	grid-template-columns : repeat(2, 1fr);
	justify-content : space-between;
	grid-gap : var(--w-grid-gap);
}
}
/*--------------------------------------------------------------------------------------------------------------------
■3-1col 3列一覧表示
--------------------------------------------------------------------------------------------------------------------*/
.grid3-1 {
	display : block;
}
.grid3-1 div ,
.grid3-1 li {
	margin : 0 0 var(--w-grid-gap) 0;
}
@media print, screen and (min-width: 640px) {
.grid3-1 {
	display : grid;
	grid-template-columns : repeat(3, 1fr);
	justify-content : space-between;
	grid-gap : 20px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■4-1col 4列一覧表示
--------------------------------------------------------------------------------------------------------------------*/
.grid4-1 {
	display : block;
}
.grid4-1 div ,
.grid4-1 li {
	margin : 0 0 var(--w-grid-gap) 0;
}
@media print, screen and (min-width: 640px) {
.grid4-1 {
	display : grid;
	grid-template-columns : repeat(4, 1fr);
	justify-content : space-between;
	grid-gap : var(--w-grid-gap);
}
}
/*--------------------------------------------------------------------------------------------------------------------
■4-1col 4列2列一覧表示
--------------------------------------------------------------------------------------------------------------------*/
.grid4-2 {
	display : grid;
	grid-template-columns : repeat(2, 1fr);
	justify-content : space-between;
	grid-gap : var(--w-grid-gap);
}
.grid4-2 div ,
.grid4-2 li {
	margin : 0 0 var(--w-grid-gap) 0;
}
@media print, screen and (min-width: 1000px) {
.grid4-2 {
	display : grid;
	grid-template-columns : repeat(4, 1fr);
	justify-content : space-between;
	grid-gap : var(--w-grid-gap);
}
}
/*--------------------------------------------------------------------------------------------------------------------
■grid300-1fr
--------------------------------------------------------------------------------------------------------------------*/
.grid300-1fr {
	display : block;
}
.grid300-1fr div:nth-child(1) {
	text-align : center;
}
@media print, screen and (min-width: 640px) {
.grid300-1fr {
	display : grid;
	grid-template-columns : 300px 1fr;
	justify-content : space-between;
	grid-gap : var(--w-grid-gap);
}
}
/*--------------------------------------------------------------------------------------------------------------------
■Container内全幅　要base.js（スクロールバーの幅）
--------------------------------------------------------------------------------------------------------------------*/
.full_width {
	margin-left : -10px;
	margin-right : -10px;
}
@media print, screen and (min-width: 1000px) {
.full_width {
	margin-left : calc( -1 * (100vw - var(--w-large) - var(--scrollbar)) / 2)!important;
	margin-right : calc( -1 * (100vw - var(--w-large) - var(--scrollbar)) / 2)!important;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■flex
--------------------------------------------------------------------------------------------------------------------*/
.flex ,
.flex-nowrap {
	display : block;
}
@media print, screen and (min-width: 640px) {
.flex {
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : -o-flex;
	display : flex;
	-webkit-flex-wrap : wrap;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : stretch;
}
.flex-nowrap {
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : -o-flex;
	display : flex;
	-webkit-flex-wrap : nowrap;
	flex-wrap : nowrap;
	justify-content : space-between;
	align-items : stretch;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■画像
--------------------------------------------------------------------------------------------------------------------*/
img {
	border : 0;
	margin : 0;
}
img.size-thumbnail {
	width : auto;
	height : auto;
}
img.size-small {
	width : 300px;
	height : auto;
}
img.size-medium,
img.size-medium_large,
img.size-large,
img.size-full {
	width : auto;
	max-width : 100%;
	height : auto;
}
.alignleft ,
.alignright ,
.aligncenter {
	float : none;
	display : block;
	margin : 0 auto 10px auto;
}
@media print, screen and (min-width: 640px) {
.aligncenter {
	display : block;
	text-align : center;
	margin-left : auto;
	margin-right : auto;
}
.alignleft {
	float : left;
	margin : 0 20px 10px 0;
}
.alignright {
	float : right;
	margin : 0 0 10px 20px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■no_img NO IMAGE eyecatch
--------------------------------------------------------------------------------------------------------------------*/
.no_img {
	display : block;
	width : 100%;
	height : 0;
	padding : 0 0 66.666% 0;
	background : url(./custom/no_image.png) #ccc no-repeat center center;
	background-size : contain;
	text-indent : -9999px;
}
.no_img-sq {
	display : block;
	width : 100%;
	height : 0;
	padding : 0 0 100% 0;
	background : url(./custom/no_image.png) #ccc no-repeat center center;
	background-size : contain;
	text-indent : -9999px;
}
/*--------------------------------------------------------------------------------------------------------------------
■フルスクリーン・全画面・サイトトップ宣伝用
--------------------------------------------------------------------------------------------------------------------*/
.full_screen {
	position : absolute;
	top : 0;
	bottom : 0;
	left : 0;
	right : 0;
	margin : 0;
	padding : 0;
	width : 100%;
	max-width : 100%;
	height : calc(var(--size-vegas) - ( var(--size-sitename) + 20px + 40px) );
	display : flex;
	align-items : center;
	overflow : hidden;
}
_::-webkit-full-page-media, _:future, :root .full_screen {
	height : calc(var(--size-vegas-d) - ( var(--size-sitename) + 20px + 40px) );
}
/*--------------------------------------------------------------------------------------------------------------------
■スクロールするとふわっと表示される fadein
--------------------------------------------------------------------------------------------------------------------*/
.fadein {
	opacity: 0;
	transform: translateY(30px);
	transition-property: transform, opacity;
	transition-duration: 1.5s;
	transition-delay: 0s;
}

.fadein.is-active {
	opacity: 1;
	transform: translateY(0);
}
/*--------------------------------------------------------------------------------------------------------------------
■表示コントロールその他
--------------------------------------------------------------------------------------------------------------------*/
.box_left ,
.box_right {
	float : none;
}
.pc_only {
	display : none;
}
.mobile_only {
	display : block;
}
@media print, screen and (min-width: 1000px) {
.box_left {
	float : left;
}
.box_right {
	float : right;
}
.pc_only {
	display : block;
}
.mobile_only {
	display : none;
}
.fixed {	/*scroll_fix.js用*/
	position : fixed;
	z-index : 500;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ブロック
--------------------------------------------------------------------------------------------------------------------*/
#wrapper {
	position : relative;
	top : 0;
	padding : calc( var(--size-sitename) + 20px ) 0 0 0;
	margin : 0;
}
header {
	position : fixed;
	top : 0;
	left : 0;
	right : 0;
	height : calc( var(--size-sitename) + 20px);
	margin : 0;
	padding : 0;
	z-index : 999;
	background : var(--color-01);
}
#header {
	position : absolute;
	display: grid;
	grid-template-columns: minmax(auto, 300px) 1fr 60px;
	top : 10px;
	left : 10px;
	right : 10px;
	height : var(--size-sitename);
	padding : 0;
	margin : 0;
	align-items : center;
	justify-content: center;
}
#gnav_outer-float ,
#gnav_outer {
	display : none;
}
#container_outer {
	clear : both;
	position : relative;
	margin : 0;
	padding : 0;
	background : var(--color-01);
}
#container {
	padding : 0;
}
#content,
aside {
	float : none;
	padding :10px;
	height : auto;
}
#gmap {
	clear : both;
	padding : 0!important;
	margin : 0!important;
}
#footer_outer {
	clear : both;
	margin : 0;
	padding : 0;
	background : var(--color-04);
	background : url(images/bg-foot.png);
}
footer {
	padding : 10px;
}
#footertitle_outer {
	clear : both;
	margin : 0 auto;
	background : var(--color-04);
}
#footertitle {
	padding : 10px 10px var(--size-foot_nav) 10px;
}
@media print, screen and (min-width : 1000px) {
#wrapper {
}
#header {
	grid-template-columns: minmax(auto, 300px) 1fr 450px 60px;
}
#gnav_outer-float ,
#gnav_outer {
	display : block;
	margin : 0;
	border-top : 1px solid #666;
	border-bottom : 1px solid #666;
}
#container_outer {
	padding : 70px 0 40px 0;
}
.front_page #container_outer {
	padding-top : 82px;
}
.front_page #container_outer {
	padding : 0 0 40px 0;
}
#container {
}
#content {
	padding : 0;
}
main {
}
aside {
	padding : 0;
}
footer {
	padding : 30px 0;
}
#footertitle {
	padding : 10px 0;
	margin : 0 auto;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ヘッダ header
--------------------------------------------------------------------------------------------------------------------*/
#google_eyecatch {
	visibility : hidden;
	height : 0;
}
#header #sitename {
	padding : 0;
	margin : 0;
	font-weight : bold;
	line-height : var(--size-sitename);
	max-width : calc(100vw - 20px - var(--size-sitename) - 20px);	/*var(--size-sitename)は正方形ハンバーガーメニュー*/
}
#header #sitename a {
	color : var(--color-02);
}
#header #sitename.sitelogo {
}
#header #sitename.sitelogo img {
	max-height : var(--size-sitename);
	width : auto;
}
#header .description,
#sns_button_set {
	display : none;
}
#rndimage {
	display : none;
}
@media print, screen and (min-width: 1000px) {
#header_right {
	overflow : hidden;
}
#header .description {
	display : block;
	padding : 0;
	margin : 0;
	font-size : var(--font-size);
	line-height : var(--size-sitename);
}
#header .description a {
	color : #000;
}
#sns_button_set {
	display : block;
	padding : 0;
	margin : 0 0 0 auto;
}
#rndimage {
	position : relative;
	display : block;
	margin : 0;
	width : 100%;
	height : 240px;
}
#rndimage-inner  {
	position : relative;
	top : 0;
}
#rndimage #site_logo a {
	top : 20px;
	left : 20px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■スマホボタン　3本線が×に
--------------------------------------------------------------------------------------------------------------------*/
div#mobile_menu_set {
	text-align : center;
}
button#mobile_menu_bttn {
	position : relative;
	margin : 0 0 0 auto;
	cursor: pointer;
	width : var(--size-sitename);
	height : var(--size-sitename);
	border : none;
	box-shadow : none;
	background : transparent;
}
#mobile_menu_bttn span.mmb1,
#mobile_menu_bttn span.mmb2,
#mobile_menu_bttn span.mmb3 {
	display : inline-block;
	transition : all .4s;
	position : absolute;
	left : 0;
	height : 2px;
	background : var(--color-02);
	width : 100%;
}
#mobile_menu_bttn:hover span.mmb1,
#mobile_menu_bttn:hover span.mmb2,
#mobile_menu_bttn:hover span.mmb3 {
	background : var(--color-04);
}
#mobile_menu_bttn span.mmb1 {
	top : 0; 
}
#mobile_menu_bttn span.mmb2 {
	top : calc(var(--size-sitename) * 0.3);
}
#mobile_menu_bttn span.mmb3 {
	top :  calc(var(--size-sitename) * 0.6);
}
#mobile_menu_bttn span.mmb4 {
	position : absolute;
	display : block;
	top :  calc(var(--size-sitename) * 0.8);
	left : 0;
	right : 0;
	margin : 0;
	padding : 0;
	font-family : var(--font-family02);
	color : var(--color-02);
	font-size : 10px;
	font-weight : normal;
	line-height : 1;
	background : transparent;
}
#mobile_menu_bttn.close span.mmb1 {
	transform : translateY(calc(var(--size-sitename) * 0.3)) rotate(-31deg);
	width : 100%;
}
#mobile_menu_bttn.close span.mmb2 {
	opacity : 0;
}
#mobile_menu_bttn.close span.mmb3 {
	transform : translateY(calc(var(--size-sitename) * -0.3)) rotate(31deg);
	width : 100%;
	color : var(--color-04);
}
#mobile_menu_bttn.close span.mmb4 {
}
@media print, screen and (min-width: 1000px) {
}
/*--------------------------------------------------------------------------------------------------------------------
■モバイルメニュー Mobile_menu mnav
--------------------------------------------------------------------------------------------------------------------*/
#mobile_menu {
	display : none;
}
#mobile_menu {
	position : fixed;
	-webkit-transform : translateZ(0);
	z-index : 999;
	top : calc(var(--size-sitename) + 20px);
	right : 0;
	width : 240px;
	border-left : 1px solid var(--color-02);
	filter : drop-shadow(-10px 0 10px rgba(0,0,0,0.3));
	background : var(--color-01);
}
#mobile_menu ul.menu {
	overflow : auto;
	-webkit-overflow-scrolling : touch;
	height : calc(100vh - ( var(--size-sitename) + 20px));
	padding-bottom : 100px;
}
_::-webkit-full-page-media, _:future, :root #mobile_menu ul.menu {
	height : calc(100dvh - ( var(--size-sitename) + 20px));
}
#mobile_menu li {
	list-style : none;
	border-top : 1px solid var(--color-02);
	text-align : left;
}
#mobile_menu li a {
	display : block;
	padding : 12px 0 12px 10px;
	font-weight : bold;
	line-height : 24px;
	color : var(--color-02);
	font-family : var(--font-family02);
}
#mobile_menu li#mobile_searchform {
	padding : 0;
	border : none;
	color : #000;
	background : #fff;
}
#mobile_menu li#mobile_searchform form#searchform input {
	border : none;
	border-top : 1px solid #000;
	border-bottom : 1px solid #000;
}
/*--------------------------------------------------------------------------------------------------------------------
■SNSボタン
--------------------------------------------------------------------------------------------------------------------*/
ul#sns-button li {
	display : inline;
}
ul#sns-button i {
	font-family : Fontawesome;
	font-size : 30px;
	font-style : normal;
	color : var(--color-02);
}
ul#sns-button li.sns-twitter i:hover {
	color : #1e9bf0;
}
ul#sns-button li.sns-facebook i:hover {
	color : #1877f2;
}
ul#sns-button li.sns-instagram i:hover {
	color : #ff0c55;
}
ul#sns-button li.sns-youtube i:hover {
	color : #ff0202;
}
ul#sns-button li.sns-line i:hover {
	color : #0eaf15;
}
ul#sns-button li.english-page i:hover {
	color : #30b84c;
}
ul#sns-button li.sns-contact i:hover {
	color : #006a27;
}
header ul#sns-button {
	display : none;
}
footer ul#sns-button {
	display : block;
	padding : 0;
	margin : 20px 0 30px 0;
	position : static;
	text-align : center;
}
footer ul#sns-button:after {
	display : block;
	padding : 30px 0;
	content : "●　●　●";
	font-family : fontawesome;
	font-size : 12px;
	color : #fff;
	text-align : center;
}
footer ul#sns-button li {
	display : inline;
	padding : 0 10px;
	float : none;
	margin-left : 0;
}
footer ul#sns-button i {
	font-family : Fontawesome;
	font-size : 30px;
	font-style : normal;
	color : #fff;
}
@media print, screen and (min-width: 640px) {
header ul#sns-button {
	display : block;
	text-align : right;
/*	position : absolute;
	top : 15px;
	right : 100px;*/
}
header ul#sns-button li {
	float : left;
	margin-left : 20px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■全画面検索　search-overlay　searchform-overlay
--------------------------------------------------------------------------------------------------------------------*/
button#search_button {
	background : transparent;
}
footer button#search_button {
	display : none;
}
button#search_button:hover i {
	color : #c00;
}
#search-overlay {
	display : none;
	z-index : 9999;
	position : fixed;
	top : calc(var(--size-sitename) + 20px);
	left : 0;
	right : 0;
	bottom : var(--size-foot_nav);
	width : 100%;
	height : calc(100% - (var(--size-sitename) + 20px + var(--size-foot_nav)));
	background : rgba(0,0,0,0.6);
	transition : opacity 0.3s ease-in-out;
}
@media print, screen and (min-width: 1000px) {
#search-overlay {
	bottom : 0;
	height : calc(100% - (var(--size-sitename) + 20px));
}
}
#search-overlay.appear {
	display : flex;
	text-align : center;
	align-items : center;
	justify-content: center;
}
form#searchform-overlay input[type="text"] {
	font-size : 1.5rem;
	font-weight : bold;
	width : calc(var(--size-ml-w) * 0.8);
	max-width : 90vw;
	height : 60px;
	border-radius : 30px;
	text-align : center;
	background : #fff;
	color : #000;
}
form#searchform-overlay input[type="submit"] {
	margin : 10px auto 0 auto;
	font-size : 1.5rem;
	font-weight : bold;
	width : 120px;
	height : 60px;
	border-radius : 30px;
	text-align : center;
	background : #fff;
	color : #000;
}
form#searchform-overlay input[type="submit"]:hover {
	background : #c00;
	color : #fff;
}
/*--------------------------------------------------------------------------------------------------------------------
■サイトトップスライダーslick設定
--------------------------------------------------------------------------------------------------------------------*/
#HomeSlide {
	clear : both;
	width : 100%;
	height : 50vh;
	overflow : hidden;
	margin : 0;
	padding :  0;
	box-sizing : content-box;
/*	background : url(images/bg-foot.png);*/
}
#HomeSlide .slick-slide {
	position : relative;
	margin: 0 2px;
	width : 1000px;
	height : 50vh;
	height : 50dvh;
}
#HomeSlide .slick-slide img ,
#HomeSlide .slick-slide video {
	width : 100%;
	height : 100%;
	object-fit : cover;
	object-position : 50% 50%;
}
#HomeSlide .slick-slide span {
	display : block;
	width : 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index: 150;
	color: #fff;
	font-family : var(--font-family02);
	font-size : 6cqw;
	font-weight : bold;
	text-shadow : 0.1cqw 0.1cqw 1cqw #000;
	text-align : center;
}
@media print, screen and (min-width: 1000px) {
#HomeSlide .slick-slide span {
	font-size : 3cqw;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■実績スライダーslick設定
--------------------------------------------------------------------------------------------------------------------*/
#AchievementsSlide {
	clear : both;
	width : 100%;
	height : 50vh;
	overflow : hidden;
	margin : 20px 0;
	padding : 0 0;
}
#AchievementsSlide .slick-slide {
	position : relative;
	margin: 0;
	width : 1000px;
	height : 50vh;
	height : 50dvh;
}
#AchievementsSlide .slick-slide img ,
#AchievementsSlide .slick-slide video {
	width : 100%;
	height : 100%;
	object-fit : cover;
	object-position : 50% 50%;
}
#AchievementsSlide .slick-slide span {
	display : block;
	width : 96%;
	position: absolute;
	top: 2%;
	left: 2%;
	z-index: 150;
	color: #fff;
	font-family : var(--font-family02);
	font-size : 4cqw;
	line-height : 150%;
	font-weight : bold;
	text-shadow : 0.1cqw 0.1cqw 1cqw #000;
	text-align : left;
}
@media print, screen and (min-width: 1000px) {
#AchievementsSlide .slick-slide span {
	font-size : 1.7cqw;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■GNAV
--------------------------------------------------------------------------------------------------------------------*/
nav#gnav {
	display : none;
}
@media print, screen and (min-width: 1000px) {
nav#gnav {
	display : block;
}
nav#gnav ul {
	padding : 0;
	background : var(--color-01);
	height : 40px;
}
nav#gnav ul li {
	position : relative;
	margin : 0;
	padding : 0;
	text-align : center;
	width : 100%;
}
nav#gnav li a {
	display : block;
	color : var(--color-02);
	font-size : 16px;
	line-height : 40px;
	font-family : var(--font-family02);
}
nav#gnav li:hover {
	background : #6c9608;
}
nav#gnav li:hover a {
	color : #fff;
}
nav#gnav li.current-menu-item {
	background : var(--color-04);
}
nav#gnav li.current-menu-item a {
	color : var(--color-01);
}
}
/*----------------------------------------------------------
■submenu
----------------------------------------------------------*/
nav#gnav ul li ul {
	position : absolute;
	top : 40px;
	left : 0;
	width : var(--w-small);
	z-index : 1000;
}
nav#gnav ul li ul li {
	visibility : hidden;
	overflow : hidden;
	width : 100%;
	height : 0;
}
nav#gnav ul li:hover ul li,
nav#gnav ul li:hover ul li a,
nav#gnav ul li a:hover ul li a {
	visibility : visible;
	overflow : visible;
	display : block;
	height : 32px;
	z-index : 10;
	width : var(--w-small);
	background : #efefef;
	color : var(--color-02);
}
nav#gnav ul li:hover ul li,
nav#gnav ul li a:hover ul li {
	border-top : 1px solid #999;
}
nav#gnav ul li:hover ul li a {
	padding : 0 10px;
	background : #999;
	font-size : 16px;
	line-height : 32px;
}
nav#gnav ul li ul li:hover a ,
nav#gnav ul li ul li a:hover ,
nav#gnav ul li ul li.current-menu-item a {
	background : #666;
	color : var(--color-01);;
}
/*--------------------------------------------------------------------------------------------------------------------
■検索
--------------------------------------------------------------------------------------------------------------------*/
.search_numbers {
	margin : 0 0 0 10px;
	font-size : calc(var(--font-size) * 0.8);
	font-weight : normal;
}
/*--------------------------------------------------------------------------------------------------------------------
■post_list 一覧表示
--------------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------
post_listのコンテンツ共通
----------------------------------------------------------*/
dl.post_list {
	margin : 0 -10px;
	padding : 0;
}
.post_list .post_list-box {
}
.post_list dt.post_list-thumb {
	position : relative;
}
.post_list .paper_calendar {
	display : none;
}
.post_list dt.post_list-thumb .pl-cat a {
	display : inline-block;
	position : absolute;
	top : 0;
	left : 0;
	background : #336;
	color : #fff;
	font-size : 11px;
	line-height : 15px;
	font-weight : bold;
	padding : 5px 10px;
}
.post_list dt.post_list-thumb .pl-cat a:hover {
	background : var(--color-04);
}
.post_list dt.post_list-thumb .pl-cat a:before {
	content : "\f07b";
	font-family : fontawesome;
	margin : 0 4px 0 0;
}
.post_list dt.post_list-thumb {
	margin : 0;
	padding : 0;
	width : 100%;
	overflow : hidden;
	font-size : 1rem;
	font-weight : normal;
	line-height : 1.5em;
	text-align : left;
}
.post_list dt.post_list-thumb img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: var(--aspect-ratio);
	transition: transform 0.2s ease-in-out;
}
.post_list dt.post_list-thumb img:hover {
	transform: scale(1.1);
	opacity : 1;
}
.post_list dt.post_list-thumb a {
}
.post_list dd.post_list-content {
	margin : 0;
	padding : 0;
}
.post_list dd.post_list-content .pl_c-cat {
	display : none;
}
.post_list dd.post_list-content h3 {
	padding : 0;
	margin : 0;
	font-family : var(--font-family02);
	font-size : 1rem;
	font-weight : normal;
	line-height : 1.5em;
	text-align : left;
	border : none;
}
.post_list dd.post_list-content h3 a:hover {
	color : #CC3434;
}
.post_list dd.post_list-content h3 a {
	color : var(--color-02);
}
.post_list dd.post_list-content p {
	display : none;
	margin : 0;
	font-size : 1rem;
	line-height : 1.5em;
}
.post_list dd.post_list-content .blog_info {
	font-size : 0.8rem;
	display : none;
}
@media print, screen and (min-width: 640px) {
.post_list dt.post_list-thumb {
	margin : 0;
}
.post_list dd.post_list-content p {
	display : block;
}
.post_list dd.post_list-content .blog_info {
	display : block;
}
}
/*----------------------------------------------------------
post_list-grid
post_list-grid-nocap
----------------------------------------------------------*/
.post_list-grid ,
.post_list-grid-nocap {
	margin : 0 -10px;
}
.post_list-grid .post_list ,
.post_list-grid-nocap .post_list {
}
.post_list-grid .post_list dl.post_list-box ,
.post_list-grid-nocap .post_list dl.post_list-box {
	display : grid;
	grid-template-columns : 120px 1fr;
	grid-gap : 0 10px;
/*	height : 80px;*/
	justify-content : space-between;
	overflow : hidden;
	border-bottom : 1px solid #666;
}
.post_list-grid .post_list dt.post_list-thumb ,
.post_list-grid-nocap .post_list dt.post_list-thumb {
	padding : 0;
	margin : 0;
}
.post_list-grid .post_list dt.post_list-thumb img ,
.post_list-grid-nocap .post_list dt.post_list-thumb img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.post_list-grid .post_list dl.post_list-box h3 ,
.post_list-grid-nocap .post_list dl.post_list-box h3 {
	font-size : 1rem;
	line-height : 1.5em;
}
.post_list-grid .post_list dd.post_list-content p ,
.post_list-grid-nocap .post_list dd.post_list-content p {
	display : block;
	margin : 0;
	font-size : 1rem;
	line-height : 1.5em;
}
.post_list-grid .post_list dd.post_list-content p.a-client ,
.post_list-grid .post_list dd.post_list-content p.a-completion ,
.post_list-grid-nocap .post_list dd.post_list-content p.a-client ,
.post_list-grid-nocap .post_list dd.post_list-content p.a-completion {
	display : block;
	font-family : var(--font-family02);
	font-size : 0.8rem;
	line-height : 1.5em;
}
.post_list-grid-nocap .post_list dd.post_list-content p.a-client {
	margin-top : 5px;
	padding-top : 3px;
	border-top : 1px solid #999;
/*
	content : "\f183";
	font-family : fontawesome;
	padding : 0 5px 0 0 ;
*/
}
.post_list-grid-nocap .post_list dd.post_list-content p.a-completion {
	padding-bottom : 3px;
/*	border-bottom : 1px solid #999;
	content : "\f0ce";
	font-family : fontawesome;
	padding : 0 5px 0 0 ;
*/
}
.post_list-grid .post_list dl.post_list-box p {
	font-size : 0.9rem;
}
.post_list-grid-nocap .post_list dl.post_list-box p {
	display : none;
}
.post_list-grid .post_list dt .post_date,
.post_list-grid .post_list dd .blog_info ,
.post_list-grid-nocap .post_list dt .post_date,
.post_list-grid-nocap .post_list dd .blog_info {
	display : none;
}
@media print, screen and (min-width: 640px) {
.post_list-grid ,
.post_list-grid-nocap {
	margin : 0;
}
.post_list-grid .post_list ,
.post_list-grid-nocap .post_list {
	display : grid;
	grid-template-columns : repeat(var(--grid_num), 1fr);
	grid-gap : 20px;
	justify-content : space-between;
}
.post_list-grid .post_list dl.post_list-box ,
.post_list-grid-nocap .post_list dl.post_list-box {
	display : block;
	margin : 0;
	height : auto;
	border-bottom : none;
}
.post_list-grid .post_list dt.post_list-thumb ,
.post_list-grid-nocap .post_list dt.post_list-thumb {
	margin : 0 0 10px 0;
}
.post_list-grid .post_list dl.post_list-box h3 {
}
.post_list-grid-nocap .post_list dd.post_list-content p.a-completion {
	border-bottom : 1px solid #999;
}
}
/*----------------------------------------------------------
post_list-hotnews
----------------------------------------------------------*/
.post_list-hotnews .post_list dt.post_list-thumb .pl-cat {
	display : none;
}
.post_list-hotnews .post_list dl {
	border : 1px solid #999;
	border-radius : 4px;
	padding : 10px;
}
@media print, screen and (min-width: 640px) {
.post_list-hotnews .post_list {
	grid-template-columns : repeat(2, 1fr);
	grid-gap : 20px;
}
}
/*----------------------------------------------------------
post_list-line
----------------------------------------------------------*/
.post_list-line .post_list {
	display : block;
}
.post_list-line .post_list dl.post_list-box {
	padding : 10px 0;
	border-bottom : 1px dotted #999;
}
.post_list-line .post_list dl.post_list-box dt.post_list-thumb {
	float : left;
	width : 155px;
}
.post_list-line .post_list dl.post_list-box dt.post_list-thumb p.post_date {
	margin : 0;
}
.post_list-line .post_list dl.post_list-box dt.post_list-thumb a.thumb ,
.post_list-line .post_list dt.post_list-thumb .pl-cat {
	display : none;
}
.post_list-line .post_list dd.post_list-content {
	margin : 0 0 0 160px;
}
.post_list-line .post_list dd.post_list-content .pl_c-cat {
	display : inline;
	float : left;
	margin : 0 3px 0 0;
	font-family : var(--font-family02);
	font-size : 1rem;
	line-height : 1.5em;
	font-weight : 500;
}
.post_list-line .post_list dd.post_list-content .pl_c-cat a {
	color : #000;
}
.post_list-line .post_list dd.post_list-content .pl_c-cat a:hover {
	color : #026796;
}
.post_list-line .post_list dd .post_list-excerpt,
.post_list-line .post_list dd .blog_info {
	display : none;
}
/*--------------------------------------------------------------------------------------------------------------------
■read_more続きを読む
--------------------------------------------------------------------------------------------------------------------*/
p.read_more {
	text-align : center;
}
p.read_more a {
	display: inline-block;
	padding: 2px 10px;
	color: #333!important;
	font-family : var(--font-family02);
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}
p.read_more a:hover {
	background-color: #ddd;
}
/*--------------------------------------------------------------------------------------------------------------------
■コンテンツ　本文
--------------------------------------------------------------------------------------------------------------------*/
.post p ,
.post ul ,
.post ol {
	margin : 0 0 10px 0;
}
.post ul ,
.post ol {
	padding : 0 0 0 30px;
}
.post ul li {
	list-style-type : disc;
}
.post ol li {
	list-style-type : decimal;
/*	font-family : var(--font-family02);*/
}
p.single_post-date {
	text-align : right;
}
ul.bubble_list,
ul.wp-tag-cloud {
	margin : 20px 0 0 0;
	padding : 0;
}
ul.bubble_list li ,
ul.wp-tag-cloud li {
	display : inline-block;
	margin : 0;
	padding : 0;
	list-style : none;
}
ul.bubble_list li a ,
ul.wp-tag-cloud li a {
	display : inline-block;
	padding : 10px;
	margin : 0 10px 0 0;
	line-height : 20px;
	border : 1px solid #ccc;
	border-radius : 4px;
	background : var(--color-03);
	color : var(--color-02);
	font-size : var(--font-size)!important;
}
ul.bubble_list li a:hover ,
ul.wp-tag-cloud li a:hover {
	border : 1px solid ;
	background : var(--color-02)!important;
	color : var(--color-01)!important;
}
.event #live_info ul {
	padding : 0;
	margin : 10px 0;
}
.event #live_info ul li {
	display : inline-block;
	list-style : none;
	padding : 5px 12px;
	margin : 0 5px 5px 0;
	border : 1px solid #ccc;
	border-radius : 4px;
	background : var(--color-03);
	font-weight : bold;
}
.ad_box {
	margin : 0 0 20px 0;
	padding : 5px;
	border : 1px solid #666;
	border-radius : 4px;
}
.ad_box h3 {
	margin : 10px 0;
	text-align : center;
}
@media print, screen and (min-width: 1000px) {
p ,
.post ul ,
.post ol {
	margin : 0 0 1em 0;
}
}
/*----------------------------------------------------------
■投稿日・カテゴリ・タグ・投稿者
----------------------------------------------------------*/
p.publish_date {
	padding : 10px;
	margin : 40px 0 20px 0;
	border-top : 1px solid #666;
	border-bottom : 1px solid #666;
	background : var(--color-01);
}
.blog_info {
	margin : 24px 0;
	padding : 5px 0;
	border-top : 1px solid #666;
	border-bottom : 1px solid #666;
}
.blog_info p {
	margin : 0;
}
/*----------------------------------------------------------
■引用
----------------------------------------------------------*/
blockquote {
	padding : 30px 15px 0 15px;
	margin : 20px 0;
	background : #efefef url(./images/quote-top.png) left top no-repeat;
}
blockquote:after {
	display : block;
	padding : 0;
	margin : 0;
	content : url(./images/quote-bottom.png);
	text-align : right;
}
/*----------------------------------------------------------
■必須・注意書き
----------------------------------------------------------*/
span.require,
span.caution {
	color : #d00;;
}
p.attention {
	border : 2px solid #d00;
	padding : 10px;
	color : #d00;
}
/*--------------------------------------------------------------------------------------------------------------------
■関連記事・人気記事一覧
--------------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------
■ポピュラーポスト
------------------------------------------*/
ul.wpp-list {
	margin : 0;
	counter-reset : item;
}
ul.wpp-list li {
	padding : 0;
	margin : 0!important;
	border-bottom : 1px solid #999;
	height : 100px!important;
	overflow : hidden;
}
ul.wpp-list li .wpp-thumbnail {
	float : left;
	width : 100px;
	height : 100px;
}
ul.wpp-list li .no_img-sq {
	padding : 0 0 100px 0;
}

ul.wpp-list li .wpp-post-title ,
ul.wpp-list li p {
	display : block;
	margin : 2px 0 0 110px;
	font-size : var(--font-size);
	line-height : calc(var(--font-size) * 1.25);
}
@media print, screen and (min-width: 1000px) {
ul.wpp-list {
	margin : 0;
	display : grid;
	grid-template-columns : repeat(2, 50%);
	justify-content : space-between;
}
.wpp-meta {
	display : block;
}
}
/*----------------------------------------
■王冠
------------------------------------------*/
#home_wpp ul.wpp-list li:before {
	counter-increment : item;
	content : counter(item)'位';
	display : inline-block;
	padding : 0 10px;
	margin : 0 0 2px 0;
	background : #444;
	border-radius : 4px;
	font-size : 1em;
	color : var(--color-01);;
	font-weight : bold;
	line-height : 1.25em;
}
#home_wpp ul.wpp-list li:nth-child(1):before {
	background : #beb339;
}
#home_wpp ul.wpp-list li:nth-child(2):before {
	background : #9e9e9e;
}
#home_wpp ul.wpp-list li:nth-child(3):before {
	background : #875e47;
}
/*----------------------------------------
■関連記事・人気記事
------------------------------------------*/
#related ,
#home_wpp {
	margin : 0 0 30px 0;
}
#related h4 ,
#home_wpp h3 {
	padding : 10px;
	margin : 30px 0 0 0;
	background : var(--color-02);
	color : var(--color-01);;
	text-align : center;
	border : none;
	font-size : 24px;
	line-height : 30px;
}
@media print, screen and (min-width: 1000px) {
}
/*--------------------------------------------------------------------------------------------------------------------
■コメント
--------------------------------------------------------------------------------------------------------------------*/
#comments_outer {
	margin : 2em 0;
	overflow : hidden;
}
h4#resp ,
h4#message {
	margin : 1.5em 0 0 0;
}
h4#resp:before {
	font-family : fontawesome;
	content : "\f086";
	margin : 0 1em 0 0;
}
#comments_resp ,
#comments {
	padding : 10px 20px;
	margin : 0;
	background : #efefef;
	border : 1px solid #999;
	color : #000;
}
.comment-body {
	padding : 10px;
	margin-bottom : 20px;
}
#comments h3 {
	display : none;
}
#comments ol.commets-list li {
	list-style-type : none;
}
#comments p {
	margin : 0;
	padding : 5px 0;
}
#comments label {
	display : inline-block;
}
.metadata {
	font-size : 1em;
	line-height : 1.5;
}
.commentmetadata {
	border-bottom : 1px dotted #666;
	font-size : 1em;
	line-height : 1.2em;
	width : 100%;
	clear : both;
	padding : 10px 0 5px 0;
	margin : 10px 0;
}
.reply a {
	display : inline-block;
	padding : 5px 15px;
	background : var(--color-02);
	border-radius : 4px;
	color : var(--color-01);
}
.reply a:hover {
	background : #d00;
}
#comments #respond {
	margin : 0 0 10px 0;
	padding : 5px 0 0 0;
}
.logged-in-as {
	font-weight : bold;
}
#comments #commentform .tags {
	padding : 10px;
	background : #ccc;
}
#comments #commentlist img {
	padding : 10px;
}
.commets-list {
	padding : 0;
	list-style-type : none;
}
ul.children {
	padding : 0;
}
.commets-list li {
	list-style-type : none;
}
.comment-author.vcard .avatar {
	float : left;
	margin : 0 10px 0 0;
}
.form-allowed-tags {	/* コメント欄の下にある使用できるタグの表記を消す */
	display : none;
}
#comments textarea {
	margin : 0;
	padding : 5px;
	width : 100%;
	background : #fff;
	color : #000;
}
#comments input {
	padding : 10px;
	width : 100%;
}
#comments input[type="submit"] {
	background : #999;
	color : var(--color-01);
	font-weight : bold;
}
#comments input[type="submit"]:hover {
	background : var(--color-02);
}
/*--------------------------------------------------------------------------------------------------------------------
■404
--------------------------------------------------------------------------------------------------------------------*/
p.e404 {
	padding : 0;
	margin : 0;
	font-family : 'Shippori Antique', sans-serif;
	font-size : 100px;
	line-height : 120px;
	text-align : center;
}
p.e404 a {
	color : var(--color-02);
}
#get_search_form {
	margin : 20px 0 40px 0;
}
@media print, screen and (min-width: 1000px) {
p.e404 {
	margin : 0 0 40px 0;
	font-size : 300px;
	line-height : 360px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■サイドバー
--------------------------------------------------------------------------------------------------------------------*/
aside ,
aside p {
	margin : 0 0 0.25em 0;
}
aside a ,
aside a:visited {
	color : var(--color-02);
}
aside a:hover {
	color : #d00;;
}
aside h4 {
	margin : 0 0 10px 0;
}
aside h4 a {
	color : var(--color-01);;
}
#aside-search {
	margin : 0 0 1.25em 0;
}
/*--------------------------------------------------------------------------------------------------------------------
■フッター
--------------------------------------------------------------------------------------------------------------------*/
.footer_box {
}
.footer_box h1.entry-title,
.footer_box h1.page-title ,
.footer_box h4.entry-title,
.footer_box h4.page-title {
	line-height : 24px;
	color : #000;
	text-align : center;
	padding : 10px 20px;
	margin : 0 0 10px 0;
	background-color : #fff;
}
.footer_box ,
.footer_box p {
	color : var(--color-01);
	line-height : 1.5em;
	text-decoration : none;
}
.footer_box a {
	color : var(--color-01);
}
.footer_box a:hover {
	color : #fc0;
}
.footer_box h4 {
	color : var(--color-02);
	text-align : center;
	margin : 0 0 10px 0;
	background-color : var(--color-01);
}
@media print, screen and (min-width: 1000px) {
.footer_box {
	display : block;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■フッターSEO対策
--------------------------------------------------------------------------------------------------------------------*/
#footertitle p,
#footertitle a,
#footertitle h1,
#footertitle h1 a {
	color : #fff;
	font-weight : normal;
	font-size : var(--font-size);
	line-height : 1.5em;
}
/*--------------------------------------------------------------------------------------------------------------------
■page_top　ページトップ
--------------------------------------------------------------------------------------------------------------------*/
#foot_nav {
	position : fixed;
	bottom : 0;
	left : 0;
	right : 0;
	margin : 0;
	padding : 0;
	height : var(--size-foot_nav);
	display : grid;
	grid-template-columns : repeat(5, 1fr);
	justify-content : space-between;
}
#foot_nav li {
}
#foot_nav a,
#foot_nav button {
	position : relative;
	bottom : 0;
	right : 0;
	display : block;
	padding : 0;
	width : 100%;
	background : var(--color-05);
	text-align : center;
	color : #fff;
	font-size : 11px;
	line-height : 40px;
}
#foot_nav a:hover {
	background : #CC3434;;
}
#foot_nav a i,
#foot_nav button i {
	font-size : 24px;
	line-height : 20px;
	margin : 10px 0 0 0;
}
#foot_nav a i::after ,
#foot_nav button i::after {
	content : "\A"attr(data-cap);
	white-space : pre;
	margin : 0;
	font-size : 9px;
	font-weight : bold;
	line-height : 0;
}
@media print, screen and (min-width: 1000px) {
#foot_nav {
	position : initial;
	display : block;
	bottom : auto;
	left : auto;
	right : auto;
	height : auto;
}
#foot_nav a {
	display : block;
	position : fixed;
	padding : 5px 0;
	width : 70px;
	right : 20px;
	border-radius : 4px;
	line-height : 1em;
}
#foot_nav button {
	display : none;
}
#foot_nav a i {
	font-size : 20px;
	line-height : 20px;
	margin : 0;
}
#foot_nav a i::after {
	font-size : 9px;
	font-weight : bold;
	line-height : 3px;
}
#foot_nav a:hover {
	background : #CC3434;
}
#foot_nav li#foot_nav-page_top a {
	bottom : 225px;
}
#foot_nav li#foot_nav-home a {
	bottom : 165px;
}
#foot_nav li#foot_nav-contact a {
	bottom : 105px;
}
#foot_nav li#foot_nav-e-calendar a {
	bottom : 30px;
	right : 20px;
	width : 200px;
	padding : 15px 0;
	font-size : 16px;
	line-height : 32px;
}
#foot_nav li#foot_nav-e-calendar a i {
	margin : 0 5px 0 0;
}
#foot_nav li a i::after {
	font-weight : normal;
}
#foot_nav li#foot_nav-e-calendar a i::after {
	content : attr(data-cap);
	margin : 0 0 0 5px;
	font-size : 16px;
	line-height : 20px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ページャー fwc-pagination pager
--------------------------------------------------------------------------------------------------------------------*/
.fwc-pagination {
	margin : 20px 0;
	text-align : center;
}
.fwc-pagination .page-numbers {
	display : inline-block;;
	margin : 0 2px;
	text-align : center;
	align-items : center;
	justify-content: center;
	background : #ccc;
	color : #fff;
	font-size : 0.8em;
	width : 2em;
	height : 2em;
	line-height : 2em;
}
.fwc-pagination .page-numbers:hover {
	background : #c00;
}
.fwc-pagination .page-numbers.current {
	background : #666;
}
.fwc-pagination .control {
	display : inline-block;;
	margin : 0 2px;
	text-align : center;
	align-items : center;
	justify-content: center;
	color : #000;
	font-size : 0.8em;
	height : 2em;
	line-height : 2em;
}
.fwc-pagination .control:hover {
	color : #c00;
}
/*--------------------------------------------------------------------------------------------------------------------
■ぱんくず　パンくず
--------------------------------------------------------------------------------------------------------------------*/
nav#braudcrumb-list {
	margin : 0 0 10px 0;
	font-size : 15px;
	line-height : 22px;
}
nav#braudcrumb-list a {
	color : var(--color-02);
}
nav#braudcrumb-list ol {
	padding : 0;
	margin : 0;
}
nav#braudcrumb-list ol li {
	float : left;
	padding : 0;
	margin : 0 10px 0 0;
	list-style : none;
}
nav#braudcrumb-list i {
	font-size : 16px;
	margin-right : 2px;
	color : #666;
}
/*--------------------------------------------------------------------------------------------------------------------
■前後の記事
--------------------------------------------------------------------------------------------------------------------*/
.page_nav {
	margin : 40px 0;
	display : grid;
	grid-template-columns : repeat(2, 49%);
	justify-content : space-between;
}
.page_nav a {
	display : block;
	position : relative;
	height : 100%;
	color : var(--color-02);
	font-size : 16px;
	line-height : 24px;
	background : var(--color-01);
	border : 1px solid var(--color-02);
}
.page_nav .previous a {
	padding : 10px 10px 10px 50px;
}
.page_nav .previous a::before {
	font-family : fontawesome;
	content : "\f060";
	position : absolute;
	top : 0;
	bottom : 0;
	left : 0;
	display : flex;
	align-items : center;
	justify-content: center;
	width : 40px;
	color : var(--color-02);
	text-align : center;
}
.page_nav .next a {
	padding : 10px 40px 10px 10px;
}
.page_nav .next a::after {
	font-family : fontawesome;
	content : "\f061";
	position : absolute;
	top : 0;
	bottom : 0;
	right : 0;
	display : flex;
	align-items : center;
	justify-content: center;
	width : 40px;
	color : var(--color-02);
	text-align : center;
}
.page_nav a:hover ,
.page_nav .previous a:hover::before ,
.page_nav .next a:hover::after {
	background : var(--color-02);
	color : var(--color-01);
}
/*--------------------------------------------------------------------------------------------------------------------
■テーブル
--------------------------------------------------------------------------------------------------------------------*/
table {
	width : 100%;
	margin : 0 0 10px 0;
	border-collapse : collapse;
	border-spacing : 0;
}
table th,
table td {
	margin : 0;
	padding : 5px;
	border-collapse : collapse;
	border : 1px solid #999;
	border-spacing : 0;
	vertical-align : top;
}
table th p ,
table td p {
	margin : 0;
}
/* === ソートボタンを表示するエリア ============== */
.tsImgArea{
  line-height: 1;
}
/* === ソートボタン ============================== */
.tsImg{
  display    : inline-block;
  width      : 8px;
  height     : 6px;
  background : #eee;
  border     : 1px solid #777;
  margin     : 1px 3px;
  padding    : 3px;
  cursor     : pointer;
}
/* === ソートボタン（カーソルオーバー時）========= */
.tsImg:hover{
  background : #FFD700;
}
/* === ソートボタン内の三角の色（SVG）============ */
.tsImg path{
  fill       : #777;
}

@media print, screen and (min-width: 1000px) {
table th,
table td {
	padding : 10px;
}
}
/*----------------------------------------------------------
はみ出しスライドテーブル・スマホ
<div class="slide_tbl">
<table>〜</table>
</div>
----------------------------------------------------------*/
.slide_tbl {
	overflow-x : auto;
	white-space : normal;
}
.slide_tbl table th,
.slide_tbl table td ,
.slide_tbl table td p {
	line-height : 120%;
	min-width : 100px;
	max-width : 100px;
	margin-bottom : 0!important;
	margin : 0!important;
}
/*PCの場合*/
@media print, screen and (min-width: 1000px) {
.slide_tbl {
	overflow-x : hidden;
	white-space : normal;
}
.slide_tbl table th,
.slide_tbl table td ,
.slide_tbl table td p {
	line-height : 120%;
	min-width : initial;
	max-width : initial;
	margin-bottom : 0!important;
	margin : 0!important;
}
tr.pc_no_disp {
	display : none;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ウィジェットコントロール　widget
--------------------------------------------------------------------------------------------------------------------*/
.asidebox ,
.footer_box ,
.widget_box {
	margin-bottom : 10px;
}
.widget_box {
	padding : 0 10px;
}
.widget_box h4 {
	margin : 0 -10px 10px -10px;
}
#widget-post_bottom02 {
	height : 100%;
}
#widget-post_bottom02 a {
	display : block;
	width : 100%;
	height : 100%;
	padding : 40px 0;
	color : #fff;
	text-align : center;
	background : #ccc;
	font-size : 1.5rem;
}
@media print, screen and (min-width: 1000px) {
.asidebox ,
.footer_box ,
.widget_box {
	margin-bottom : 20px;
}
.widget_box {
	padding : 0;
}
.widget_box h4 {
	margin : 0 0 10px 0;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ウィジェット widget対策
--------------------------------------------------------------------------------------------------------------------*/
#aside-02 img {
	max-width : 150px!important;
}
@media print, screen and (min-width: 1000px) {
#aside-02 img {
	max-width : var(--size-small)!important;
}
}
/*----------------------------------------
■最近の投稿・最近の記事
------------------------------------------*/
#recent-posts-2 {
}
#recent-posts-2 ul {
	margin : -10px 0 0 0;
}
#recent-posts-2 ul li {
	padding : 5px 0;
	border-bottom : 1px solid #999;
}
/*----------------------------------------
■image widget
------------------------------------------*/
.widget_sp_image-description {
	line-height : 120%;
}
/*----------------------------------------
■タグクラウド
------------------------------------------*/
.tagcloud {
	padding : 0 10px;
}
.tagcloud a {
	display : inline-block;
	padding : 5px;
	margin : 0 5px 5px 0;
	font-size : 14px!important;
	color : var(--color-01);;
	background : var(--color-04);
	border-radius : 4px;
}
.tagcloud a:visited {
	color : var(--color-01);;
}
.tagcloud a:hover {
	color : var(--color-01);;
	background : #d00;;
}
/*--------------------------------------------------------------------------------------------------------------------
■Contactform7
--------------------------------------------------------------------------------------------------------------------*/
table.contactform {
	border : none;
	color : var(--color-02);
}
table.contactform tr {
	padding : 0;
	margin : 0;
}
table.contactform td {
	display : block;
	padding : 0;
	margin : 0;
	border : none;
}
table.contactform td p {
	margin : 10px 0 0 0;
}
table.contactform td:nth-child(1) {
	font-weight : bold;
}
table.contactform td:nth-child(2) {
}
.wpcf7-list-item {
	display : block;
}
.form_fullsize {
	width : 100%;
}
table.contactform input[type="text"] ,
table.contactform input[type="email"] ,
table.contactform select ,
table.contactform textarea {
	padding : 4px 2px;
	border : 1px solid #999;
	box-shadow : none;
	color : #000;
}
.contact_submit input[type="submit"] {
	display : inline-block;
	margin : 30px auto;
	padding : 10px 0;
}
.contact_submit input[type="submit"]:hover {
	background : var(--color-03);
}
.wpcf7-list-item-label {
	color : var(--color-02);
}
@media print, screen and (min-width: 1000px) {
table.contactform {
	border-collapse : separate;
	border-spacing : 5px;
	color : #000;
}
table.contactform tr {
}
table.contactform td {
	display : table-cell;
	padding : 10px;
	vertical-align : middle;
}
table.contactform td p {
	margin : 0;
}
table.contactform td:nth-child(1) {
	width : 25%;
	background : #efefef;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■Contactform7
.wpcf7-list-item {
	display : block;
}
input[type="submit"].wpcf7-submit {
}
input[type="submit"].wpcf7-submit:hover {
}
table.contactform td:nth-child(1) {
	width : 25%;
}
.form_fullsize {
	width : 100%;
}
.contact_submit input[type="submit"] {
	display : inline-block;
	margin : 20px auto;
	padding : 10px 0;
	color : var(--color-01);;
}
.contact_submit input[type="submit"]:hover {
	background : var(--color-02);
}
--------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------
■HOME ホーム　home_main　全画面動画/静止画
--------------------------------------------------------------------------------------------------------------------*/
/*.front_page #home_main {
	position : relative;
	top : 0;
	bottom : 0;
	left : 0;
	right : 0;
	margin : 0;
	padding : 0;
	width : 100%;
	height : calc(var(--size-vegas) - ( var(--size-sitename) + 20px + 40px) );
	overflow : hidden;
	display : flex;
	align-items : center;
}
_::-webkit-full-page-media, _:future, :root #home_main {
	height : calc(var(--size-vegas-d) - ( var(--size-sitename) + 20px + 40px) );
	top : 0;
	bottom : 0;
	left : 0;
	right : 0;
}*/
#front_image_outer {
	position : relative;
	width : var(--size-ml-w);
	max-width : 100%;
	margin : 0 auto;
}
#front_image {
	position : absolute;
	top : 0;
}
#center_catch_txt {
	position : relative;
	margin : 0 auto;
	width : var(--size-ml-w);
	max-width : 100%;
	text-align : center;
	color : #fff;
	font-size : 36px;
	line-height : 54px;
}
#video {
	position : absolute;
	top : 50%;
	left : 50%;
	display : block;
	width : auto;
	max-width : none!important;
	min-width : 100%!important;
	height : auto;
	max-height : none!important;
	min-height : 100%!important;
	-webkit-transform : translate(-50%, -50%);
	-moz-transform : translate(-50%, -50%);
	transform : translate(-50%, -50%);
}
#video_dot {
	position : absolute;
	top : 0;
	right : 0;
	left : 0;
	bottom : 0;
	max-width : none!important;
	min-height : calc(var(--size-vegas) - var(--size-sitename) - 40px );
	background : url(images/video_dot-black.png);
	text-indent : -9999px;
}
@media print, screen and (min-width: 1000px) {
.full_screen {
	height : calc(var(--size-vegas) - ( var(--size-sitename) + 20px) );
}
_::-webkit-full-page-media, _:future, :root .full_screen {
	height : calc(var(--size-vegas-d) - ( var(--size-sitename) + 20px) );
}
#video {
	min-height : calc(100vh - var(--size-sitename) - var(--size-gnav) );
}
#front_image_outer {
	width : var(--size-ml-w);
	max-width : 100%;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■vegas slider
--------------------------------------------------------------------------------------------------------------------*/
#vegasslider {
	position : absolute;
	top : 0;
	left : 0;
	right : 0;
	bottom : 0;
}
/*--------------------------------------------------------------------------------------------------------------------
■flexslider
--------------------------------------------------------------------------------------------------------------------*/
.flexslider {
	background : transparent!important;
	border : none!important;
	padding : 0!important;
	margin : 0!important;
}
/*--------------------------------------------------------------------------------------------------------------------
■HOME ホーム　バナー　banners
--------------------------------------------------------------------------------------------------------------------*/
.top_banners {
	position : relative;
	width : var(--size-ml-w);
	max-width : 100%;
	margin : 0 auto;
	padding : 0 10px;
}
/*--------------------------------------------------------------------------------------------------------------------
■home_content ホームコンテンツ
.front_page #container_outer {
	padding : 0;
	margin : 0;
}
.front_page #container_outer.blog_style {
	padding : 0 0 10px 0;
	margin : 0;
}
.front_page #container_outer.paged2 {
	padding : calc(var(--size-gnav) + var(--size-sitename)) 0 10px 0;
	margin : 0;
}
#home_content {
	padding : 0;
	margin : 0 0 20px 0;
}
#home_content-column {
	margin : 0 auto 20px auto;
}
#home_search_form-column {
	padding : 0;
	margin : 0 auto 40px auto;
	width : 75%;
}
@media print, screen and (max-width: 1000px) {
#home_content-column {
	margin : 0 auto 20px auto;
	width : 100%;
}
}
--------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------
■イベントカレンダー
--------------------------------------------------------------------------------------------------------------------*/
h1.calendar-ttl {
	font-family : var(--font-family02);
	font-weight : 300;
	font-size:  1.5rem;
	line-height : 1.2em;
	border-bottom: solid 1px #000;
	padding-bottom:  10px;
	margin: 20px 0 30px 0;
	text-align : center;
}
#month_lnk-cal_change {
	margin : 0;
}
#month_lnk-cal_change-bottom {
	margin : 20px 0;
}
p.month_lnk {
	display : inline-block;
	margin : 0 20px 0 0;
	font-size : 18px;
	line-height : 40px;
}
button#cal_change {
	display : none;
	max-width : 100%;
	margin : 0;
	padding : 0 10px;
	font-size : 24px;
	line-height : 40px;
	height : 40px;
	border : 1px solid #ccc;
	border-radius : 6px;
	background : var(--color-03);
	color : var(--color-02);
}
button#cal_change:hover {
	color : #fff;
	background : var(--color-04);
}
p.month_lnk a {
	display : inline-block;
	margin : 0;
	height : 40px;
	border : 1px solid #ccc;
	background : var(--color-03);
	color : var(--color-02)!important;
}
p.month_lnk a:hover {
	background : var(--color-04);
	border : 1px solid ;
	color : var(--color-01)!important;
}
p.month_lnk .prev {
	border-radius : 20px 0 0 20px;
	padding : 0 10px 0 20px;
}
p.month_lnk .this {
	padding : 0 10px;
	border-left : none!important;
	border-right : none!important;
}
p.month_lnk .next {
	border-radius : 0 20px 20px 0;
	padding : 0 20px 0 10px;
}
#calendar_outer #content {
	padding : 0!important
}
#calendar_outer {
	padding : 0;
	margin : 0;
	border-top : 1px solid #666;
}
#calendar_outer .youbi_header,
#calendar_outer .null_day {
	display : none;
}
.single_day {
	display : grid;
	grid-template-columns : 40px 1fr;
	justify-content : space-between;
	padding : 0;
	margin : 0;
	border-bottom : 1px solid #666;
}
.single_day.today {
	background : rgba(255,0,0,0.3);
}
.date_card {
	width : 40px;
	background : var(--color-01);
	border-right : 1px solid #666;
	text-align : center;
	padding : 0 0 10px 0;
}
.date_card .day {
	display : flex;
	padding : 0;
	margin : 0;
	width : 100%;
	align-items : center;
	justify-content: center;
	height : 30px;
	font-size : 21px;
	text-align : center;
}
.single_day.today .date_card {
	background : rgba(255,0,0,0.3);
}
.date_card .jyoubi {
	display : inline-block;
	padding : 0;
	margin : 0;
	width : 24px;
	height : 24px;
	font-size : 14px;
	line-height : 24px;
	font-weight : bold;
	background : var(--color-01);
	border : 1px solid #ccc;
	border-radius : 12px;
}
.date_card .jyoubi.sunday {
	background : #b02c2c;
	border : 1px solid #b02c2c;
	color : #fff;
}
.date_card .jyoubi.saturday {
	background : #2c4c63;
	border : 1px solid #2c4c63;
	color : #fff;
}
a.single_event {
	padding : 0;
	margin : 0;
	display : grid;
	grid-template-columns : 110px 1fr;
	justify-content : space-between;
	color : var(--color-02);
	border-bottom : 1px solid #666;
}
.s-calendar a.single_event {
	display : block;
}
a.single_event:last-child {
	border-bottom : none;
}
a.single_event:hover {
	background : var(--color-cal-hover);
}
a.single_event p {
	margin : 0;
}
.event-thumbnail {
	position : relative;
	width : 100px;
	height : 100px;
	overflow : hidden;
}
.event-thumbnail .event_genre {
	position : absolute;
	display : inline-block;
	bottom : 0;
	right : 0;
	padding : 0 5px;
	margin : 0;
	font-size : 12px;
	line-height : 20px;
	color : var(--color-01);
	background : var(--color-02);
}
.event-thumbnail .event_session {
	position : absolute;
	display : inline-block;
	top : 0;
	left : 0;
	padding : 0 5px;
	margin : 0;
	font-size : 12px;
	line-height : 20px;
	color : #fff;
	background : var(--color-04);
}
.single_event-content {
	padding : 5px;
}
.single_event-content .event-time {
	margin : -5px 0 0 0;
}
.single_event-content .event-time_price {
	display : inline-block;
	padding : 0 5px;
	margin-right : 1px;
	border-radius : 0;
	color : #fff;
	font-size: 13px;
	line-height : 24px;
}
.single_event-content .event-open {
	background : #7480a8;
}
.single_event-content .event-start {
	background : #74a88d;
}
.single_event-content .event-end {
	background : #8b74a8;
}
.single_event-content .event-price {
	background : #a996da;
}
.single_event-content .event-title {
	font-size : 110%;
	font-weight : bold;
}
p.normal_business ,
p.shop_closed ,
p.shop_free {
	padding : 10px 0 0 10px;
}
p.shop_closed {
	background : var(--color-cal-closed);
}
p.shop_closed:before {
	content : "\f410";
	font-family : fontawesome;
	color : #ea6e61;
	margin-right : 4px;
}
p.shop_free {
	background : var(--color-cal-free);
}
p.shop_free:before {
	content : "\f130";
	font-family : fontawesome;
	color : #3bc562;
	margin-right : 4px;
}
@media print, screen and (min-width: 640px) {
h1.calendar-ttl {
	font-size:  2rem;
}
.single_day {
	grid-template-columns : 60px 1fr;
}
.date_card {
	width : 60px;
}
.date_card .day {
	height : 40px;
	font-size : 24px;
}
a.single_event {
	grid-template-columns : 160px 1fr!important;
	height : 150px;
	overflow : hidden;
}
.s-calendar a.single_event {
	display : block;
	height : auto;
}
.event-thumbnail {
	width : 150px;
	height : 150px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■カレンダー月表示
--------------------------------------------------------------------------------------------------------------------*/
@media print, screen and (min-width: 640px) {
button#cal_change {
	display : inline-block;
}
#calendar_outer.monthly_view {
	display : grid;
	grid-template-columns : repeat(7, 1fr);
	justify-content : space-between;
	padding : 0;
	margin : 0;
	border-top : 1px solid #666;
	border-left : 1px solid #666;
}
#calendar_outer.monthly_view .youbi_header {
	display : block;
	padding : 3px 0;
	background : #efefef;
	color : #000;
	text-align : center;
	border-right : 1px solid #666;
	border-bottom : 1px solid #666;
}
#calendar_outer.monthly_view .youbi_header.sunday {
	background : #933;
	color : #fff;
}
#calendar_outer.monthly_view .youbi_header.saturday {
	background : #339;
	color : #fff;
}
#calendar_outer.monthly_view .null_day ,
#calendar_outer.monthly_view .single_day {
	display : block;
	padding : 0;
	margin : 0;
	border-bottom : 1px solid #666;
	border-right : 1px solid #666;
}
#calendar_outer.monthly_view .date_card {
	display : block;
	width : 100%;
	margin : 0;
	background : #555;
	color : #fff;
	text-align : center;
	height : 30px;
	border-right : none;
}
#calendar_outer.monthly_view .single_day.today .date_card {
	background : rgba(255,0,0,0.3);
}
#calendar_outer.monthly_view .date_card .day {
	padding : 0;
	margin : 0;
	height : 30px;
	font-size : 14px;
	line-height : 22px;
}
#calendar_outer.monthly_view .date_card .jyoubi {
	display : none;
}
#calendar_outer.monthly_view .day_events {
	display : block;
	min-height : 60px;
}
#calendar_outer.monthly_view .single_event {
	display : block;
	height : auto;
}
#calendar_outer.monthly_view .event-thumbnail {
	display : none;
}
#calendar_outer.monthly_view .event-title {
	padding : 5px 10px;
	margin : 0;
	font-size : 14px;
	line-height : 18px;
}
#calendar_outer.monthly_view .event-excerpt {
	display : none;
}
#calendar_outer.monthly_view .day_events {
	min-height : 50px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■予約カレンダー
--------------------------------------------------------------------------------------------------------------------*/
.cal_div {
	padding : 5px 0;
	border-bottom : 1px dotted #999;
	text-align : center;
}
.cal_div03 {
	border-bottom : none;
}
.cal_div.close {
	background : #933;
	color : #999!important;
}
.cal_div.close::before {
	content : "×";
}
/*--------------------------------------------------------------------------------------------------------------------
■本日のライブ
--------------------------------------------------------------------------------------------------------------------*/
#todays_live {
	position : absolute;
	top : 10px;
	left : calc((100vw - 320px) / 2);
	text-align : center;
}
#todays_live h3 {
	margin : 0 0 10px 0;
	font-family: 'Asap', sans-serif;
	font-weight : 700;
	font-size : 30px;
	color : #fff;
	text-shadow : 1px 1px 6px #fff;
}
#todays_live-scroll {
	display : block;
	width : 320px;
	background : #fff;
	border : 4px solid #000;
	text-align : center;
	overflow : hidden;
	line-height : 40px;
	border-radius : 20px;
}
#todays_live-scroll span {
	display : inline-block;
	padding-left: 100%;
	white-space : nowrap;
	line-height : 1em;
	animation : scrollAnime 8s linear infinite;
}
#todays_live-scroll span ,
#todays_live-scroll span a {
	color : #000;
}
#todays_live-scroll span a {
	margin-right : 100px;
}
@keyframes scrollAnime{
	0% { transform: translateX(0)}
	100% { transform: translateX(-100%)}
}
@media print, screen and (min-width : 1000px) {
#todays_live {
	top : 60px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■店舗情報　INFO
--------------------------------------------------------------------------------------------------------------------*/
#info {
}
#info > div {
	position : relative;
	border : 1px solid #999;
	border-radius : 10px;
	padding : 10px 10px 60px 10px;
}
#info h3 {
	padding : 0;
	margin : 20px 0 30px 0;
	font-weight : 400;
	text-align : center;
}
.todays_live {
	position : relative;
}
.todays_live-date {
	position : absolute;
	top : -10px;
	left : 5px;
	width : 60px;
	height : 60px;
	border : 1px solid #666;
	background : var(--color-01);
}
p.detail ,
.post_list-hotnews a.read_more {
	position : absolute;
	bottom : 10px;
	right : 10px;
	margin : 0;
}
/*--------------------------------------------------------------------------------------------------------------------
■フード＆ドリンク　food_drink
--------------------------------------------------------------------------------------------------------------------*/
.food_drink .grid2-1 {
	grid-gap : 60px;
}
.food_drink h3 {
	font-weight : 500;
	font-size : 22px;
}
.food_drink dl {
}
.food_drink dt {
	float : left;
	padding : 5px 0;
}
.food_drink dd {
	text-align : right;
	padding : 5px 0;
	line-height : 24px;
	border-bottom : 1px dotted #999;
}
.food_drink dd::after {
	content : "";
	display : block;
	clear : both;
	overflow : hidden;
	font-size : 0.1px;
	line-height : 0;
}
/*--------------------------------------------------------------------------------------------------------------------
■フワッと表示されるfadein・scroll_up
--------------------------------------------------------------------------------------------------------------------*/
/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
	transition: 0.8s ease-in-out;
	transform: translateY(100px);
	opacity: 0;
}
.scroll_up.on {
	transform: translateY(0);
	opacity: 1.0;
}
body.mceContentBody .scroll_up {
	opacity: 1.0;
}
/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
	-webkit-transition: 0.8s ease-in-out;
	-moz-transition: 0.8s ease-in-out;
	-o-transition: 0.8s ease-in-out;
	transition: 0.8s ease-in-out;
	transform: translateX(-150px);
	opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
}
.scroll_left.on {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	transform: translateX(0);
}
body.mceContentBody .scroll_left {
	opacity: 1.0;
}
/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
	-webkit-transition: 0.8s ease-in-out;
	-moz-transition: 0.8s ease-in-out;
	-o-transition: 0.8s ease-in-out;
	transition: 0.8s ease-in-out;
	transform: translateX(100px);
	opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
}
.scroll_right.on {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	transform: translateX(0);
}
body.mceContentBody .scroll_right {
	opacity: 1.0;
}
/*--------------------------------------------------------------------------------------------------------------------
■wpdiscuz 画像付きコメントSVGサイズ調整
--------------------------------------------------------------------------------------------------------------------*/
.wpd-rating-stars svg {
	width : 26px!important;
	height : 26px!important;
}
.wpd-vote svg {
	width : 16px!important;
	height : 16px!important;
}

/*--------------------------------------------------------------------------------------------------------------------
■オリジナル
--------------------------------------------------------------------------------------------------------------------*/
#HomeTop {
	margin : 30px 0 0 0;
}
.lead-body {
	grid-gap : 40px;
}
.lead-body p {
	font-size : 15px;
	line-height : 1.7em;
}
.lead-body p.policy {
	margin : 20px 0 10px 0;
	font-family : var(--font-family02);
	font-size : 1.5em;
	text-align : center;
}
#what_is_iso {
	margin : 10px 0;
	padding : 10px 0;
	color : #444;
	font-size : 0.9em;
	line-height : 1.4em;
	border-top : 1px solid #999;
	border-bottom : 1px solid #999;
}
#what_is_iso p {
	margin : 0 0 5px 0;
}
#HomeTop .read_more {
	margin : 10px 0 20px 0;
}
@media print, screen and (max-width : 640px) {
#HomeTop img {
	display : block;
	width : 30%;
	margin : 0 auto;
}
}
/*--------------------------------------------------------------------------------------------------------------------
■文字アニメーション　home-lead
--------------------------------------------------------------------------------------------------------------------*/
/* 初期CSS */
#home-lead {
	box-sizing : content-box;
	margin : 0 auto;
	padding : 0;
	overflow: hidden;
	width : 1200px;
	max-width: 100%;
	container-type: inline-size;
	height: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: transparent;
}
@media print, screen and (max-width : 640px) {
#home-lead {
	height: 200px;
}
}
#home-lead .visuallyHidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
#home-lead .text {
	overflow: hidden;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #000;
	font-family: "Shippori Antique", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 7cqw;
	line-height : 1.1em;
	text-transform: uppercase;
	text-align : center;
}
#home-lead .text.is-active {
	--skewX: 0deg;
	--x: 0;
}
#home-lead .text1,
#home-lead .text2,
#home-lead .text3 {
	transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#home-lead .text2,
#home-lead .text3 {
	position: absolute;
}
#home-lead .text1 {
	mask-image: linear-gradient(
		to bottom, 
		#000 0%, 
		transparent 33.3%
	);
	transform: translateX(var(--x, -110%)) skewX(var(--skewX, 40deg));
}
#home-lead .text2 {
	mask-image: linear-gradient(
		to bottom,
		transparent 0%,
		#000 33.3%,
		#000 66.6%,
		transparent 100%,
	);
	transform: translateX(var(--x, 110%)) skewX(var(--skewX, -40deg));
}
#home-lead .text3 {
	mask-image: linear-gradient(
		to bottom, 
		transparent 0%, 
		#000 66.6%
		#000 100%
	);
	transform: translateX(var(--x, -110%)) skewX(var(--skewX, 40deg));
}
/*--------------------------------------------------------------------------------------------------------------------
■dlリスト　沿革・歴史・会社概要
--------------------------------------------------------------------------------------------------------------------*/
dl.tabular {
	width : 100%;
	margin : 10px 0;
}
dl.tabular dt {
	background : #dfdfdf;
	font-family : var(--font-family02);
	padding : 10px;
	vertical-align : middle;
	font-size : 1rem;
	line-height : 1.5em;
}
dl.tabular dd {
	background : #f9f9f9;
	font-size : 1rem;
	line-height : 1.5em;
	padding : 10px;
	vertical-align : middle;
}
dl.tabular dt p ,
dl.tabular dd p {
	margin : 0!important;
	line-height : 1.5em!important;
}
dl.tabular dd ul {
	margin : 0!important;
	padding : 0 0 0 16px!important;
}
@media print, screen and (min-width : 1000px) {
dl.tabular {
	display : grid;
	grid-template-columns : 200px 1fr;
	justify-content : space-between;
	grid-gap : 4px;
}
dl.tabular dt {
}
dl.tabular dd {
}
}
/*--------------------------------------------------------------------------------------------------------------------
■ロゴ　表彰
--------------------------------------------------------------------------------------------------------------------*/
#logos {
	margin : 40px 0;
	text-align : center;
}
#logos .logos-lead {
	margin : 0 0 20px 0;
	font-family : var(--font-family02);
}
#logos img {
	padding : 0 10px;
}
/*--------------------------------------------------------------------------------------------------------------------
■電話
--------------------------------------------------------------------------------------------------------------------*/
.telephone a {
	display : inline-block;
	padding : 15px 20px;
	font-family : var(--font-family02);
	font-size : 30px;
	line-height : 30px;
	border-radius : 30px;
	font-weight : bold;
	background : #026796;
	color : #fff;
}
.telephone a:hover {
	background : #6c9608;
}
.telephone i {
	font-family : fontawesome;
	margin : 0 5px 0 0;
	color : #fff;
}
/*--------------------------------------------------------------------------------------------------------------------
■CSR・SDGs
--------------------------------------------------------------------------------------------------------------------*/
#csr_logos {
	margin : 20px 0 30px 0;
}
#grandslam {
	margin : 0 0 20px 0;
	text-align : center;
}
#grandslam img {
	max-width : 100%;
}
/*--------------------------------------------------------------------------------------------------------------------
画像
--------------------------------------------------------------------------------------------------------------------*/
img.size-full,
img.size-large {
	max-width : 100%;
	height : auto;
}
img.size-medium ,
img.size-thumb300 {
	padding : 10px;
	box-sizing : content-box;
}
img.alignright {
	display : inline;
	float : right;
	margin : 0 0 10px 20px;
}
img.alignleft {
	display : inline;
	float : left;
	margin : 0 20px 10px 0;
}
img.aligncenter {
	display : block;
	margin : 0 auto;
}
.photo_frame {
	border : 12px solid #fff;
	box-shadow : 2px 2px 6px #999;
	margin : 0 10px 10px 0;
}
@media only screen and (max-width: 780px) {
img.alignright ,
img.alignleft ,
img.aligncenter {
	display : block;
	float : none;
	margin : 0 0 10px 0;
}
}
.client_completion {
	text-align : right;
}
#nav_menu-2 ul li ,
#nav_menu-3 ul li {
	font-family : var(--font-family02);
	font-weight : bold;
}
