@charset "utf-8";
/*!
Theme Name: ryokenfarm
Author: arrows inc.
Author URI: https://arrows-web.net/
Description: This is an original theme using splus05 created by Arrows Co., Ltd.
Version: 2.0.0
*/
/*=================================================================================================
  CSS reset
=================================================================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;box-sizing: border-box;}
body{line-height:1;-webkit-text-size-adjust:100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
blockquote,q{quotes:none;}
blockquote:before, blockquote:after,q:before,q:after{content:'';content:none;}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
/********** 任意色変更 **********/
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{text-decoration:line-through;}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
/********** 任意配置変更 **********/
input,select{vertical-align:middle;}
ul,ol {padding-left: 1.5rem;}
nav ul {list-style: none;padding-left: 0;}
p {margin-bottom: 1.5rem;}
/********** img **********/
img{display: block;}
/*=================================================================================================
  Write standard CSS for the entire site
=================================================================================================*/
:root {
--both-ends: 13rem;
--font-bld: 600;
--font-nml: 400;
--font-size-nml: clamp(0.9375rem, 0.8801rem + 0.2137vw, 1.0625rem);/*MIN430/15-MAX1366/17*/
--color-def: #222;
--color-theme: #204D21;
--color-theme-hover: #2C692D;
--color-theme-gld: #CC9900;
--color-theme-gld-hover: #ECB100;
--color-bg-gry: #f7f7f7;
--sec-mt: 7rem;
--border-color: #ddd;
}
@media (max-width: 1920px) {
  :root {
    --both-ends: 4%;
  }
}
@media (max-width: 1180px) {
  :root {
	--sec-mt: 4rem;
  }
}
html{font-size:clamp(0.9375rem,0.8801rem + 0.2137vw,1.0625rem);min-height:100%;background:#315b24;}
body{font-family:"Inter","Zen Kaku Gothic New","Noto Sans JP","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-feature-settings:"palt";font-weight:var(--font-nml);line-height:1.79;letter-spacing:.05rem;margin:0;padding:0;color:var(--color-def);display:flex;flex-direction:column;min-height:100dvh;background:#fff;}
/*=================================================================================================
  Layout
=================================================================================================*/
header {color: #fff;}
nav ul {list-style-type: none;padding: 0;}
nav ul li {display: inline;margin-right: 10px;}
main {flex:1 0 auto;width:100%;}
.content-area{width:calc(100% - 46px);margin-left:46px;box-sizing:border-box;}
.sub-content-wrap {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;box-sizing:border-box;padding:0 5%;}
.sub-content-area {width: calc(95% - 300px);order: 2;}
#secondary {width: 300px;order: 1;}
.sticky-wrap {position: sticky;top: 170px;}
section{margin-top:clamp(3.75rem,1.25rem + 6.25vw,10rem);}/* SP約60px・タブレット約80〜100px・PC最大160px */
@media (max-width: 1180px) {
	.sub-content-area {width: calc(95% - 250px);}
	#secondary {width: 250px;}
}
@media (max-width: 834px) {
	.sub-content-area {width: 100%;margin-bottom: 3rem;order: 1;}
	#secondary {width: 100%;order: 2;}
}
@media (max-width: 500px) {
	.content-area{width:100%;margin-left:0;box-sizing:border-box;}
}
/*
Loading
-------------------------------------------------------------------------------------------------*/
#loading{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#fff;opacity:1;visibility:visible;transition:opacity .9s ease,visibility .9s ease}
#loading.is-loaded{opacity:0;visibility:hidden;pointer-events:none}
.loader{width:min(620px,84vw);text-align:center}
.loader-logo{width:100%;margin:0 0 36px;padding:0;text-align:center;}
.loader-logo img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto;}
/* 馬 */
.horse-area{position:relative;width:240px;height:150px;margin:0 auto 18px;filter:drop-shadow(0 7px 4px rgba(0,0,0,.08))}
.horse{position:absolute;top:50%;left:50%;display:block;width:100px;height:62px;object-fit:contain;animation:horseBody .17s ease-in-out infinite alternate;will-change:transform}
@keyframes horseBody{
  from{transform:translate(-50%,-50%) translateY(0)}
  to{transform:translate(-50%,-50%) translateY(-2px)}
}
/* 砂ぼこり */
.dust{position:absolute;left:21px;bottom:23px;width:90px;height:34px;pointer-events:none}
.dust i{position:absolute;left:54px;bottom:0;width:4px;height:4px;border-radius:50%;background:#a9a49a;opacity:0;animation:dust 1s linear infinite}
.dust i:nth-child(2){animation-delay:.18s;width:3px;height:3px}
.dust i:nth-child(3){animation-delay:.36s;width:5px;height:5px}
.dust i:nth-child(4){animation-delay:.54s;width:2px;height:2px}
.dust i:nth-child(5){animation-delay:.72s;width:3px;height:3px}
@keyframes dust{
  0%{transform:translate(0,0) scale(.7);opacity:0}
  18%{opacity:.42}
  100%{transform:translate(-78px,-19px) scale(.15);opacity:0}
}
/* プログレスバー */
.loading-bar{position:relative;width:100%;height:2px;overflow:hidden;background:#dedbd4}
.loading-progress{height:100%;width:0;background:var(--color-theme-hover);transition:width .25s ease}
.loading-label{margin:16px 0 0;font:10px/1 Arial,sans-serif;letter-spacing:.34em;padding-left:.34em;color:var(--color-theme-hover);}
/* スマホ */
@media(max-width:600px){
  .loader-logo{margin-bottom:27px}
  .horse-area{transform:scale(.82);margin-top:-13px;margin-bottom:-1px}
  .loader{width:84vw}
}
/* モーション軽減設定 */
@media(prefers-reduced-motion:reduce){
  .horse{animation:none}
  .dust i{display:none}
  #loading{transition-duration:.2s}
}
/*
Inner
-------------------------------------------------------------------------------------------------*/
.wide-inner {box-sizing:border-box;padding:0 var(--both-ends);width:100%;}
.inner {margin:0 auto;width:1280px;}
@media (max-width: 1366px) {
	.inner {width:89.84375%;}
}
@media (max-width: 960px) {
	.inner {box-sizing:border-box;padding:0 4%;width:100%;}
}
/*
Heading @320px to @1200px
-------------------------------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {font-weight: var(--font-bld);color: var(--colo-def);margin: 7rem 0 .5rem;letter-spacing: 0.08rem;}
h1 {font-size: clamp(2.25rem, 1.6757rem + 2.1368vw, 3.5rem);}/*MIN 430@36px-MAX 1366@56px*/
h2 {font-size: clamp(2rem, 1.5406rem + 1.7094vw, 3rem);}/*MIN 430@32px-MAX 1366@48px*/
h3 {font-size: clamp(1.5rem, 1.1554rem + 1.2821vw, 2.25rem);}/*MIN 430@24px-MAX 1366@36px*/
h4 {font-size: clamp(1.25rem, 1.0203rem + 0.8547vw, 1.75rem);}/*MIN 430@20px-MAX 1366@28px*/
h5 {font-size: clamp(1rem, 0.9426rem + 0.2137vw, 1.125rem)}/*MIN 430@16px-MAX 1366@18px*/
@media (max-width: 500px) {
	h1, h2, h3, h4, h5, h6 {margin: 4rem 0 .5rem;}
}
/*
Image Icon
-------------------------------------------------------------------------------------------------*/
img {max-width: 100%;height: auto;}
/*
Link
-------------------------------------------------------------------------------------------------*/
.link-area {position: relative;transition: 0.3s;}
.link-area .link {position: absolute;display: block;top: 0;left: 0;width: 100%;height: 100%;}
.link-area:hover {opacity: 0.7;}
/* anchor */
a.anchor {display: block;}
/********** 外部リンクボタン **********/
a.obl-btn {display:inline-block;border: 1px solid #000;margin: .5rem 0;padding: .6rem 1.5rem;color: var(--color-def);text-decoration: none;transition: .3s;}
a.obl-btn[href^="http"]:after,
a.obl-btn[href^="//"]:after {margin: 0 0 0 5px;position: relative;top: 2px;font-family: "Material Icons";content: '\e89e';}
a.obl-btn[href^="http://arrowscms14.xsrv.jp/test"]:after {margin: inherit;font-family: inherit;content: '';font-weight: inherit;}
a:hover.obl-btn {opacity: .6;}
@media (max-width: 500px) {
	a.obl-btn {display:block;text-align: center;}
}
/* テキスト用外部リンク */
a.obl-txt[target="_blank"]{display:inline-flex;align-items:center;gap:0.3em;color:#0066cc;}
a.obl-txt[target="_blank"]::after{content:"";display:inline-block;width:1em;height:1em;flex-shrink:0;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h7v7h-2V6.41l-9.29 9.3-1.42-1.42 9.3-9.29H14V3zM5 5h6v2H7v10h10v-4h2v6H5V5z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h7v7h-2V6.41l-9.29 9.3-1.42-1.42 9.3-9.29H14V3zM5 5h6v2H7v10h10v-4h2v6H5V5z'/%3E%3C/svg%3E") center/contain no-repeat;}
/* 
PDF
-------------------------------------------------------------------------------------------------*/
/********** PDFリンクボタン **********/
a.pdf-btn {display: block;width:300px;color: var(--color-def);border: 1px solid var(--color-theme);box-sizing: border-box;padding: .6rem 1.5rem .6rem 3.8rem;text-align: left;text-decoration: none;position: relative;transition-duration: 0.3s;}
a.pdf-btn:hover {  opacity: .7;}
a.pdf-btn:before {display: inline-block;position: absolute;top: 50%;transform: translateY(-50%);left: .7rem;font-family: "Material Icons";content: '\e415';font-size: calc(22 / 16 * 1rem);}
a.pdf-btn:after {content: "";display: inline-block;width: 1px;height: 100%;background-color: var(--color-theme);box-shadow: 0px 0px 2px 0px rgb(255, 255, 255);position: absolute;top: 0;left: 2.8rem;}
@media (max-width: 1180px) {
	a.pdf-btn:before {margin-top: .1rem;}
}
@media (max-width: 500px) {
	a.pdf-btn {width:100%;}
}
/********** PDF制御 **********/
@media (max-width: 1180px){
	.wp-block-file:before {content: "※下記のPDFは1枚目のみの表示となっております。全てを閲覧する場合は、下記の「～を閲覧する」をタップしてご覧ください。ダウンロードの場合は、ダウンロードボタンをタップしてください。";color: red;}
	.wp-block-file a {font-size: 1.6rem;}
	.wp-block-file a:after {content: "の全てを閲覧する";}
	a.wp-block-file__button:after {content: ""!important;}
	a.wp-element-button:after {content: ""!important;}
	.wp-block-file .wp-block-file__embed {display: block!important;}
}
/* 
Tel-to-link
-------------------------------------------------------------------------------------------------*/
a.tel {color: var(--color-def);text-decoration: none;font-size: 120%;font-weight: var(--font-bld);}
a.tel::before {font-family: "Material Icons";content: "\e0b0";font-size: 85%;margin-right: .3rem;position: relative;top: .1rem;}
/********** 電話番号リンクをスマホのみ有効 **********/
a[href*="tel:"] {color: inherit;text-decoration: none;}
a:hover[href*="tel:"] {opacity: 1;}
@media (min-width: 501px) {
	a[href*="tel:"] {pointer-events: none;}
}
/*
Ul Ol Design
-------------------------------------------------------------------------------------------------*/
/********** maru-lst **********/
ul.maru-lst {list-style: none;margin: 0;padding: 0;}
ul.maru-lst li {position: relative;padding-left: 24px;}
ul.maru-lst li::before {content: '';display: inline-block;position: absolute;top: 10px;left: 0;width: 10px;height: 10px;background-color: var(--color-theme);border-radius: 5px;}
/********** num-lst **********/
ol.num-lst li::marker {font-weight: var(--font-bld);color: var(--color-theme);}
/*
Table
-------------------------------------------------------------------------------------------------*/
table {border-collapse: collapse;border-spacing: 0;width: 100%;margin: 1rem 0;}
table th,table td {border: 1px solid #ddd;padding: 10px;}
table th {background: var(--color-bg-gry);text-align: left;}
/********** Rps-table **********/
@media (max-width: 640px) {
	.rps-table {border: 1px solid #ccc;}
	.rps-table tr {border-bottom: 1px solid #ddd;}
	.rps-table tr:last-child {border-bottom: none;}
	.rps-table th, .rps-table td {display: list-item;list-style-type: none;border: none;}
	.rps-table th {width: 100%;}
}
/********** Cp-table **********/
.cp-table td p {margin-bottom: 0;}
@media (max-width: 640px) {
	.cp-table {border: 1px solid #ccc;}
	.cp-table thead {display:none;}
	.cp-table tbody tr {border-bottom: 1px solid #ddd;}
	.cp-table tbody th {display:block;width: 100%;border: none;}
	.cp-table tbody td {display:block;border: none;border-bottom:1px dotted #ddd;}
	.cp-table tbody td::before {content: attr(label);float: left;clear:both;font-weight:bold;}
	.cp-table tbody td:last-child {border-bottom: none;}
	.cp-table tbody td p,.cp-table tbody td ul {margin: 0;padding:0 0 0 10em;}
}
/********** scroll **********/
.scroll {overflow: auto;}
.scroll table {table-layout: fixed;margin: 1.5rem 0;}
@media (max-width: 834px){
	.scroll table {width: 1080px;}
}
/*
Box
-------------------------------------------------------------------------------------------------*/
/********** box01 角丸グレー背景 **********/
.box01 {margin: .5rem 0;padding: 1rem;background-color: var(--color-bg-gry);border: 1px solid var(--border-color);border-radius: 8px;}
/********** box02 シャドー付き白背景 **********/
.box02 {margin: .5rem 0;padding: 1rem;background-color: #fff;border: 1px solid var(--border-color);box-shadow: 0 1px 3px 0 rgba(195, 195, 195, 0.3);}
/********** box03 点線枠白背景 **********/
.box03 {margin: .5rem 0;padding: 1rem;border: 1px dashed #cdcdcd;background: #fcfcfc;box-shadow: 0 1px 3px 0 rgba(195, 195, 195, 0.3);}
/********** box04 色背景 **********/
.box04 {margin: .5rem 0;padding: 1rem;background: #FFF2CC;box-shadow: 0 1px 3px 0 rgba(195, 195, 195, 0.3);}
/*
Font
-------------------------------------------------------------------------------------------------*/
.content-area p,.sub-content-area p {margin-bottom: 1.5rem;}
/********** font-family **********/
.ffG {font-family: "Inter","Zen Kaku Gothic New","Noto Sans JP","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;}
.ffM {font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;}
.ffE {font-family: "Oswald", sans-serif;}
.fwB {font-weight: var(--font-bld);}
.fwN {font-weight: var(--font-nml);}
/********** font-size **********/
.text50 {font-size: 50%!important;}.text60 {font-size: 60%!important;}.text70 {font-size: 70%!important;}.text80 {font-size: 80%!important;}.text90 {font-size: 90%!important;}.text100 {font-size: 100%!important;}.text110 {font-size: 110%!important;}.text120 {font-size: 120%!important;}.text130 {font-size: 130%!important;}.text140 {font-size: 140%!important;}.text150 {font-size: 150%!important;}.text160 {font-size: 160%!important;}.text170 {font-size: 170%!important;}.text180 {font-size: 180%!important;}.text190 {font-size: 190%!important;}.text200 {font-size: 200%!important;}
/********** font-color **********/
.red {color: red!important;}.white {color: white!important;}
/********** text-align **********/
.taL {text-align: left!important;}.taC {text-align: center!important;}.taR {text-align: right!important;}
.right {margin: 0 0 0 auto!important;}
/* 
Widget_categories
-------------------------------------------------------------------------------------------------*/
.widget_categories {margin-top: 2rem;border-top: 1px solid var(--border-color);}
.widget_categories h2.widgettitle {display: none;}
.widget_categories ul {list-style-type: none;margin: 0;padding: 0;border-bottom: none;}
.widget_categories ul li {border-bottom: 1px solid var(--border-color);position: relative;}
.widget_categories ul li::after {position: absolute;top: 1.5rem;right: 10px;content: '';width: 7px;height: 7px;border-top: 2px solid var(--color-theme);border-right: 2px solid var(--color-theme);transform: rotate(45deg); transition: all .3s;}
.widget_categories ul li a {display: block;padding: .7rem;color: var(--color-def);text-decoration: none;transition: .3s;}
.widget_categories ul li a:hover {color: var(--color-theme);background: var(--color-bg-gry);}
.widget_categories ul li ul.children li {margin-left: 1rem;}
.widget_categories ul li ul.children li:first-child {border-top: 1px solid var(--border-color);}
.widget_categories ul li ul.children li:last-child {border-bottom: none;}
/*  
Scroll Animation 2026
-------------------------------------------------------------------------------------------------*/
/********** scroll-in ｜ フェードイン **********/
.scroll-in{opacity:0;filter:blur(8px);transform:translateY(15px) scale(.99);transition:opacity 1.8s cubic-bezier(.16,1,.3,1),filter 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);will-change:opacity,filter,transform;}
.scroll-in.on{opacity:1;filter:blur(0);transform:translateY(0) scale(1);}
/********** scroll-up ｜ 下から上 **********/
.scroll-up {opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.scroll-up.on {opacity:1;transform:translateY(0);}
/********** scroll-left ｜ 左から **********/
.scroll-left {opacity:0;transform:translateX(-40px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.scroll-left.on {opacity:1;transform:translateX(0);}
/********** scroll-right ｜ 右から **********/
.scroll-right {opacity:0;transform:translateX(40px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.scroll-right.on {opacity:1;transform:translateX(0);}
/********** scroll-zoom ｜ 小さい状態から拡大 **********/
.scroll-zoom {opacity:0;transform:scale(.92);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.scroll-zoom.on {opacity:1;transform:scale(1);}
/********** scroll-blur ｜ ぼかしながら出現 **********/
.scroll-blur {opacity:0;filter:blur(12px);transform:translateY(20px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s cubic-bezier(.22,1,.36,1);}
.scroll-blur.on {opacity:1;filter:blur(0);transform:translateY(0);}
/********** scroll-reveal ｜ 下から開く **********/
.scroll-reveal {opacity:0;clip-path:inset(100% 0 0 0);transform:translateY(20px);transition:clip-path 1s cubic-bezier(.76,0,.24,1),transform 1s cubic-bezier(.22,1,.36,1),opacity .4s ease;}
.scroll-reveal.on {opacity:1;clip-path:inset(0 0 0 0);transform:translateY(0);}
/********** scroll-mask ｜ マスクが横へ抜ける **********/
.scroll-mask {position:relative;overflow:hidden;}
.scroll-mask::after {content:"";position:absolute;z-index:2;inset:0;background:#111;transform:translateX(0);transition:transform 1s cubic-bezier(.76,0,.24,1);pointer-events:none;}
.scroll-mask.on::after {transform:translateX(101%);}
/********** timing ｜ 時差 **********/
.timing02 {transition-delay:.2s;}
.timing03 {transition-delay:.4s;}
.timing04 {transition-delay:.6s;}
.timing05 {transition-delay:.8s;}
.scroll-mask.timing02::after {transition-delay:.2s;}
.scroll-mask.timing03::after {transition-delay:.4s;}
.scroll-mask.timing04::after {transition-delay:.6s;}
.scroll-mask.timing05::after {transition-delay:.8s;}
/********** text-anime ｜ 1文字ずつ出現 **********/
.txt-anime span {opacity: 0;}
.txt-anime.appeartext span { animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {0% {opacity:0;}100% {opacity:1;}}
/*
Page-top
-------------------------------------------------------------------------------------------------*/
/********** pagetop1 四角 **********/
.pagetop1 {width: 40px;height: 40px;position: fixed;right: 0;bottom: 0;background: var(--color-theme);transition: .3s;}
.pagetop1 a {width: 40px;height: 40px;position: relative;display: block;text-decoration: none;transition: .3s;}
.pagetop1 a::before {content: "";display: block;width: 10px;height: 10px;border-top: 1px solid #fff;border-right: 1px solid #fff;transform: rotate(-45deg);position: absolute;top: 5px;bottom: 0;right: 0;left: 0;margin: auto;text-align: center;}
.pagetop1:hover {opacity: 0.7;}
/********** pagetop1 四角 **********/
.pagetop2 {width: 40px;height: 40px;position: fixed;right: 0;bottom: 0;border: 1px solid var(--color-theme);background: rgba(255,255,255,.7);}
.pagetop2 a {width: 40px;height: 40px;position: relative;display: block;text-decoration: none;transition: .3s;}
.pagetop2 a::before {content: "";display: block;width: 10px;height: 10px;border-top: 1px solid var(--color-theme);border-right: 1px solid var(--color-theme);transform: rotate(-45deg);position: absolute;top: 10px;bottom: 0;right: 0;left: 0;margin: 0 auto;text-align: center;}
.pagetop2 a::after {content: "上部へ";position: absolute;bottom: 3px;right: 0;left: 0;margin: auto;text-align: center;font-size: 10px;letter-spacing: 0.01rem;font-weight: var(--font-bld);color: var(--color-theme);}
.pagetop2 a:hover {opacity: 0.7;}
/********** pagetop3 上片方矢印PAGETOP **********/
.pagetop3 {position: fixed;right: 1rem;bottom: 0;display: inline-block;width: 2px;height: 44px;margin-right: 10.6px;border-radius: 9999px;background-color: var(--color-theme);cursor: pointer;}
.pagetop3::before {content: "";position: absolute;top: 0;left: calc(50% - 1px);width: 2px;height: 17px;border-radius: 9999px;background-color: var(--color-theme);transform: rotate(-45deg);transform-origin: 50% 1px;}
.pagetop3::after {content: "PAGETOP";writing-mode: vertical-rl;position: absolute;bottom: 0;right: 3px;font-size: calc(8 / 16 * 1rem);letter-spacing: 0.01rem;font-weight: var(--font-bld);}
.pagetop3 a {display: block;width: 100%;height: 100%;transition: .3s;}
.pagetop3:hover {opacity: 0.7;}
/********** pagetop4 上矢印 **********/
.pagetop4 {width: 40px;position: fixed;right: 0;bottom: 0;border-top: 3px solid var(--color-theme);text-align: center;cursor: pointer;transition: .3s;}
.pagetop4::before {display:none;}
.pagetop4::after {content:"";display:inline-block;width: 32.5px;height: 27px;background: var(--color-theme);clip-path: polygon(0 60.2%, 50% 0, 100% 60.2%, 73.1% 60.2%, 73.1% 100%, 26.9% 100%, 26.9% 60.2%);position: relative;top: 5px;}
.pagetop4:hover {opacity: 0.7;}
/*=================================================================================================
# Margin-Padding
=================================================================================================*/
.main-mt {margin-top: var(--sec-mt);}
.no-obi-mt {margin-top: 7rem;}
/* 
Margin
-------------------------------------------------------------------------------------------------*/
.m0 {margin: 0!important;}.mt0 {margin-top: 0!important;}.mr0 {margin-right: 0!important;}.mb0 {margin-bottom: 0!important;}.ml0 {margin-left: 0!important;}
.m05rem {margin: 0.5rem!important;}.mt05rem {margin-top: 0.5rem!important;}.mr05rem {margin-right: 0.5rem!important;}.mb05rem {margin-bottom: 0.5rem!important;}.ml05rem {margin-left: 0.5rem!important;}
.m1rem {margin: 1rem!important;}.mt1rem {margin-top: 1rem!important;}.mr1rem {margin-right: 1rem!important;}.mb1rem {margin-bottom: 1rem!important;}.ml1rem {margin-left: 1rem!important;}
.m2rem {margin: 2rem!important;}.mt2rem {margin-top: 2rem!important;}.mr2rem {margin-right: 2rem!important;}.mb2rem {margin-bottom: 2rem!important;}.ml2rem {margin-left: 2rem!important;}
.m3rem {margin: 3rem!important;}.mt3rem {margin-top: 3rem!important;}.mr3rem {margin-right: 3rem!important;}.mb3rem {margin-bottom: 3rem!important;}.ml3rem {margin-left: 3rem!important;}
.m4rem {margin: 4rem!important;}.mt4rem {margin-top: 4rem!important;}.mr4rem {margin-right: 4rem!important;}.mb4rem {margin-bottom: 4rem!important;}.ml4rem {margin-left: 4rem!important;}
.m5rem {margin: 5rem!important;}.mt5rem {margin-top: 5rem!important;}.mr5rem {margin-right: 5rem!important;}.mb5rem {margin-bottom: 5rem!important;}.ml5rem {margin-left: 5rem!important;}
.m6rem {margin: 6rem!important;}.mt6rem {margin-top: 6rem!important;}.mr6rem {margin-right: 6rem!important;}.mb6rem {margin-bottom: 6rem!important;}.ml6rem {margin-left: 6rem!important;}
.m7rem {margin: 7rem!important;}.mt7rem {margin-top: 7rem!important;}.mr7rem {margin-right: 7rem!important;}.mb7rem {margin-bottom: 7rem!important;}.ml7rem {margin-left: 7rem!important;}
.m8rem {margin: 8rem!important;}.mt8rem {margin-top: 8rem!important;}.mr8rem {margin-right: 8rem!important;}.mb8rem {margin-bottom: 8rem!important;}.ml8rem {margin-left: 8rem!important;}
.m9rem {margin: 9rem!important;}.mt9rem {margin-top: 9rem!important;}.mr9rem {margin-right: 9rem!important;}.mb9rem {margin-bottom: 9rem!important;}.ml9rem {margin-left: 9rem!important;}
.m10rem {margin: 10rem!important;}.mt10rem {margin-top: 10rem!important;}.mr10rem {margin-right: 10rem!important;}.mb10rem {margin-bottom: 10rem!important;}.ml10rem {margin-left: 10rem!important;}
/* 
Padding
-------------------------------------------------------------------------------------------------*/
.p0 {padding: 0!important;}.pt0 {padding-top: 0!important;}.pr0 {padding-right: 0!important;}.pb0 {padding-bottom: 0!important;}.pl0 {padding-left: 0!important;}
.p05rem {padding: 0.5rem!important;}.pt05rem {padding-top: 0.5rem!important;}.pr05rem {padding-right: 0.5rem!important;}.pb05rem {padding-bottom: 0.5rem!important;}.pl05rem {padding-left: 0.5rem!important;}
.p1rem {padding: 1rem!important;}.pt1rem {padding-top: 1rem!important;}.pr1rem {padding-right: 1rem!important;}.pb1rem {padding-bottom: 1rem!important;}.pl1rem {padding-left: 1rem!important;}
.p2rem {padding: 2rem!important;}.pt2rem {padding-top: 2rem!important;}.pr2rem {padding-right: 2rem!important;}.pb2rem {padding-bottom: 2rem!important;}.pl2rem {padding-left: 2rem!important;}
.p3rem {padding: 3rem!important;}.pt3rem {padding-top: 3rem!important;}.pr3rem {padding-right: 3rem!important;}.pb3rem {padding-bottom: 3rem!important;}.pl3rem {padding-left: 3rem!important;}
.p4rem {padding: 4rem!important;}.pt4rem {padding-top: 4rem!important;}.pr4rem {padding-right: 4rem!important;}.pb4rem {padding-bottom: 4rem!important;}.pl4rem {padding-left: 4rem!important;}
.p5rem {padding: 5rem!important;}.pt5rem {padding-top: 5rem!important;}.pr5rem {padding-right: 5rem!important;}.pb5rem {padding-bottom: 5rem!important;}.pl5rem {padding-left: 5rem!important;}
.p6rem {padding: 6rem!important;}.pt6rem {padding-top: 6rem!important;}.pr6rem {padding-right: 6rem!important;}.pb6rem {padding-bottom: 6rem!important;}.pl6rem {padding-left: 6rem!important;}
.p7rem {padding: 7rem!important;}.pt7rem {padding-top: 7rem!important;}.pr7rem {padding-right: 7rem!important;}.pb7rem {padding-bottom: 7rem!important;}.pl7rem {padding-left: 7rem!important;}
.p8rem {padding: 8rem!important;}.pt8rem {padding-top: 8rem!important;}.pr8rem {padding-right: 8rem!important;}.pb8rem {padding-bottom: 8rem!important;}.pl8rem {padding-left: 8rem!important;}
.p9rem {padding: 9rem!important;}.pt9rem {padding-top: 9rem!important;}.pr9rem {padding-right: 9rem!important;}.pb9rem {padding-bottom: 9rem!important;}.pl9rem {padding-left: 9rem!important;}
.p10rem {padding: 10rem!important;}.pt10rem {padding-top: 10rem!important;}.pr10rem {padding-right: 10rem!important;}.pb10rem {padding-bottom: 10rem!important;}.pl10rem {padding-left: 10rem!important;}
/*=================================================================================================
  Page - Single Common
=================================================================================================*/
/*
Signage
-------------------------------------------------------------------------------------------------*/
.signage {background: #eaeaea;background-repeat: no-repeat;background-position: center center;background-size: cover;display: table;height: 50vh;position: relative;width: 100%;}
.not-signage {background: #eaeaea;background-repeat: no-repeat;background-position: center center;background-size: cover;display: table;height: 10vh;position: relative;width: 100%;}
.signage-content {display: table-cell;color: var(--color-def);text-align: center;vertical-align: middle;}
.signage-title {font-size: clamp(1.438rem, 1.21rem + 1.14vw, 2.063rem);}
@media (max-width: 480px) {
	.signage {height:30vh;}
}
/*
Breadcrumb
-------------------------------------------------------------------------------------------------*/
.breadcrumb-content {padding: .2rem var(--both-ends);font-size: 80%;}
.breadcrumb-content ul {list-style: none;padding: 0;}
.breadcrumb-content ul li {display: inline;}
.breadcrumb-content ul li a {color: inherit;text-decoration: none;}
.breadcrumb-content ul li + li::before {content: ">";margin:.5em;}
@media (max-width: 1920px) {
	.breadcrumb-content {padding: .2rem var(--both-ends);}
}
/*
Prev-next navi
-------------------------------------------------------------------------------------------------*/
#prev-next {display: flex;justify-content: space-between;border-top: 1px solid var(--border-color);border-bottom: 1px solid var(--border-color);padding: 1rem 0;}
#prev-next a {color: var(--color-def);text-decoration: none;}
#prev-next p {font-size: 90%;margin-bottom: 0;}
#prev-next #prev {margin-right: .8rem;}
#prev-next #prev-title::before,#prev-next #next-title::after {font-family: "Material Icons";content: "\e5c4";margin-right: .5rem;position: relative;top: .1rem;color: var(--color-theme);}
#prev-next #next-title::after {content: "\e5c8";margin-right: 0;margin-left: .5rem;}
/*
Toback-wrap
-------------------------------------------------------------------------------------------------*/
.toback-wrap {text-align: center;margin-top: 2rem;}
.toback {position: relative;display: inline-block;padding: .9em 4em;background-color: var(--color-theme);color: #fff;text-align: center;text-decoration: none;}
.toback::after {position: absolute;top: 50%;right: .8em;content: '';margin-top: -5px;border: 7px solid transparent;border-top-width: 5px;border-bottom-width: 5px;border-left-color: #fff;opacity: 0;}
.toback:hover::after {animation: arrow 1.2s infinite;}
@keyframes arrow {50% {right: .2em;opacity: 1;}100% {right: -.4em;opacity: 0;}}
/*
Pagination
-------------------------------------------------------------------------------------------------*/
.pagination {margin: 4rem 0;text-align: center;}
.pagination ul {font-size: 0;list-style: none;padding: 0;}
.pagination ul li {font-size: 1rem;display: inline-block;margin-right: .75rem;}
.pagination ul li:last-child {margin-right: 0;border: 0;}
.pagination ul li a,.pagination ul li .current {font-weight: 600;line-height: 1;display: block;padding: .75rem .875rem;border: 1px solid #ddd;}
.pagination ul li a {text-decoration: none;color: var(--color-def);}
.pagination ul li .current {color: #fff;background-color: var(--color-theme);}
.pagination ul li .prev,.pagination ul li .next {padding: .75rem .5rem;border: 0;}
.pagination ul li i {font-size: 1rem;color: #1d2d43;}
@media (max-width: 580px) {
	.pagination {margin: 3rem 0;}
	.pagination ul li a {padding: .5rem .675rem;}
}
/*
Side-menu
-------------------------------------------------------------------------------------------------*/
#secondary li::marker {content:'';}
#secondary li{list-style-type: none;}
.side-menu {margin:3em 0;}
.side-menu ul {list-style-type: none;margin: 0;padding: 0;}
.side-menu ul.s-navi {border-bottom: none;}
.side-menu ul.s-navi li {border-bottom: 1px solid var(--border-color);position: relative;}
.side-menu ul.s-navi li::after {position: absolute;top: 45%;right: 10px;content: '';width: 7px;height: 7px;border-top: 2px solid var(--border-color);border-right: 2px solid var(--border-color);transform: rotate(45deg); transition: all .3s;}
.side-menu ul.s-navi li:hover::after {right: 5px;border-top: 2px solid var(--color-theme);border-right: 2px solid var(--color-theme);}
.side-menu ul.s-navi li a {display: block;padding: .7rem;color: var(--color-def);text-decoration: none;transition: .3s;}
.side-menu ul.s-navi li a:hover {color: var(--color-theme);}
/* 現在値 */
.side-menu ul.s-navi li.current_page_item::after {border-top: 2px solid var(--color-theme);border-right: 2px solid var(--color-theme);}
.side-menu ul.s-navi li.current_page_item a {color: var(--color-theme);}
/* 先頭 */
.side-menu ul.s-navi li:first-child::before {position: absolute;content: "\e5df";font-family: "Material Icons";padding: .25rem;color: var(--color-theme);font-size: 140%;}
.side-menu ul.s-navi li:first-child::after {border-top: none;border-right: none;}
.side-menu ul.s-navi li:first-child a {padding: .5rem .7rem .7rem 1.7rem;font-weight: var(--font-bld);}
.side-menu ul.s-navi li:first-child a:hover {padding: .5rem .7rem .7rem 2rem;}
/*=================================================================================================
  Single
=================================================================================================*/
/* 
Cat-ymd-wrap
-------------------------------------------------------------------------------------------------*/
.cat-ymd-wrap {display: flex;justify-content: space-between;font-size: 80%;margin-top: .5rem;}
.cat-ymd-wrap .ymd {display: inline-block;background: var(--color-theme);color: #fff;padding: 0 .5rem .1rem;}
.cat-ymd-wrap .cat a {border: 1px solid var(--border-color);color: var(--color-def);text-decoration: none;padding: .1rem .5rem .2rem;}
.single-signage-title {margin: 1rem 0 3rem;font-size: clamp(1.25rem, 1.068rem + 0.91vw, 1.75rem);}
@media (max-width: 768px) {
	.cat-ymd-wrap {flex-direction: column;}
	.cat-ymd-wrap .ymd {display: block;margin-bottom: 1rem;}
}
/*=================================================================================================
  Archive
=================================================================================================*/
/* 
Archive-cnt-wrap
-------------------------------------------------------------------------------------------------*/
ul.archive-cnt-wrap {position: relative;display: flex;flex-flow: row wrap;border-bottom: 1px solid var(--border-color);padding: 2rem 0;transition: .3s;}
ul.archive-cnt-wrap:first-of-type {border-top: 1px solid var(--border-color);}
ul.archive-cnt-wrap li {display: block;margin: 0 .5rem;}
ul.archive-cnt-wrap li:first-child {flex-basis: 170px;}
ul.archive-cnt-wrap li:nth-child(2) {background: var(--color-theme);color: #fff;font-size: 70%;padding: .2rem .5rem 0;text-align: center;}
ul.archive-cnt-wrap li:nth-child(3) {flex-basis: auto;}
ul.archive-cnt-wrap::after {position: absolute;top: 50%;transform: translateY(-50%);right: 0;font-family: "Material Icons";content: "\e089";font-size: 120%;}
ul.archive-cnt-wrap .link {display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
ul.archive-cnt-wrap:hover {background: var(--color-bg-gry);}
@media (max-width: 1180px) {
	ul.archive-cnt-wrap li:first-child {flex-basis: 140px;}
}
@media (max-width: 950px) {
	ul.archive-cnt-wrap li:nth-child(3) {flex-basis: 100%;margin-top: .5rem;}
}
/*
Archive-eyecatch　どちらかを選択
-------------------------------------------------------------------------------------------------*/
/********** archive-nav-menu
.archive-nav-menu {width: 100%;margin-bottom: 2rem;position:relative;z-index: 1;}
ul.archive-nav {display: table;list-style: none;padding: 0;}
ul.archive-nav li {display: table-cell;margin-right: 2rem;border: 1px solid var(--border-color);}
ul.archive-nav li a {display: block;color: var(--color-def);text-decoration: none;padding: 1em;transition: all .2s ease-in;}
ul.archive-nav li a:hover {opacity: 0.7;}
ul.archive-nav li:not(:first-child) {border-left: none;}
ul.archive-nav li:hover {color: var(--color-def);background: var(--color-bg-gry);}
ul.archive-nav li:hover ul {max-height: 9999px;opacity: 1;}
ul.archive-nav li ul {transition:all .2s ease-in;max-height: 0;opacity: 0;overflow: hidden;width: 100%;left: 0;position: absolute;background: var(--color-bg-gry);}
ul.archive-nav li ul.children {padding: .3rem var(--both-ends) .1rem;}
ul.archive-nav li ul.children li {display: inline-block;margin: 0 .5rem;border: none;}
ul.archive-nav li ul.children li+ li {border-left: 1px solid var(--border-color);}
@media (max-width: 1920px) {
	ul.archive-nav li ul.children {padding: .3rem var(--both-ends-sp) .1rem;}
}
@media (max-width: 500px) {
	ul.archive-nav li ul.children li {display: block;}
	ul.archive-nav li ul.children li+ li {border-left: none;border-top: 1px solid var(--border-color);}
}
 **********/
.archive-nav-menu { max-width: 100%; margin: 20px auto; }
.archive-nav, .archive-nav ul.children { list-style: none; padding: 0; margin: 0; }
@media (min-width: 768px) {
    .archive-nav { display: flex; flex-wrap: wrap; gap: 10px; border-bottom: 2px solid #e0e0e0; padding-bottom: 12px; position: relative; margin-bottom: 80px; }
    .archive-nav > .cat-item { position: static; }
    .archive-nav > .cat-item > a { display: block; padding: 10px 24px; background-color: var(--color-bg-grn); color: var(--color-def); text-decoration: none; font-weight: bold; border-radius: 6px 6px 0 0; transition: all 0.3s ease; }
    .archive-nav > .cat-item > a:hover { background-color: var(--color-theme); color: #fff; }
    .archive-nav > .cat-item.current-cat > a, .archive-nav > .cat-item.current-cat-parent > a { background-color: var(--color-theme); color: #fff; }
    .archive-nav .children { display: none; position: absolute; left: 0; top: 100%; width: 100%; flex-wrap: wrap; gap: 8px; padding: 15px 0 0 0; }
    .archive-nav > .cat-item.current-cat .children, .archive-nav > .cat-item.current-cat-parent .children { display: flex; }
}
.archive-nav .children .cat-item { margin: 0; }
.archive-nav .children a { display: block; margin-top: 1rem; padding: 6px 14px; background-color: #fff; color: #666; text-decoration: none; font-size: 85%; border: 1px solid #ddd; border-radius: 20px; white-space: nowrap; transition: all 0.2s ease; }
.archive-nav .children a:hover, .archive-nav .children .current-cat > a { background-color: var(--color-bg-gry); color: var(--color-theme); border-color: var(--color-theme); }
@media (max-width: 767px) {
    .archive-nav { display: flex; flex-direction: column; gap: 5px; }
    .archive-nav > .cat-item > a { display: block; padding: 12px 15px; background-color: var(--color-bg-grn); color: var(--color-def); text-decoration: none; font-weight: bold; font-size: 14px; border-radius: 4px; }
    .archive-nav > .cat-item.current-cat > a, .archive-nav > .cat-item.current-cat-parent > a { background-color: var(--color-theme); color: #fff; }
    .archive-nav .children { display: none; flex-wrap: wrap; gap: 6px; padding: 10px 0 10px 15px; }
    .archive-nav > .cat-item.current-cat .children, .archive-nav > .cat-item.current-cat-parent .children { display: flex; }
}
/********** archive-eye-wrap **********/
.archive-eye-wrap {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;}
.archive-eye-wrap::before {content: "";display: block;height: 0;order: 1;}
.archive-eye-wrap::after {content: "";display: block;height: 0;}
.archive-eye-wrap::before,.archive-eye-wrap::after,.archive-eye-col {width: 24%;margin-bottom: 2rem;}
.archive-eye-col {background: var(--color-bg-gry);cursor: pointer;}
.archive-eye-col a {color: var(--color-def);text-decoration: none;}
.archive-eye-col img {display: block;width: 100%;height: 400px;object-fit: cover;font-family: 'object-fit: cover;';}
.archive-eye-col-txtarea {padding: 1.5rem;}
.archive-eye-col-txtarea .ymd {font-size: 90%;}
.archive-eye-col-txtarea .ttl {font-weight: var(--font-bld);margin-bottom: .5rem;}
.archive-eye-col-txtarea ul.post-categories {list-style: none;padding-left: 0;font-size: 90%;}
.archive-eye-col-txtarea ul.post-categories li {display: inline-block;border: 1px solid var(--border-color);margin-bottom: .3rem;padding: .1rem .5rem;}
.archive-eye-col-txtarea ul.post-categories li a {display: block;width: 100%;height: 100%;text-decoration: none;color: var(--color-def);}
@media (max-width: 1780px) {
	.archive-eye-col img {height: 300px;}
}
@media (max-width: 1300px) {
	.archive-eye-col img {height: 250px;}
}
@media (max-width: 1024px) {
	.archive-eye-wrap::before,.archive-eye-wrap::after,.archive-eye-col {width: 48%;}
}
@media (max-width: 500px) {
	.archive-eye-wrap {flex-direction: column;}
	.archive-eye-wrap::before,.archive-eye-wrap::after,.archive-eye-col {width: 100%;}
}
/*=================================================================================================
  Search
=================================================================================================*/
/*
Search-form
-------------------------------------------------------------------------------------------------*/
.widget_search label {display: none;}
input.wp-block-search__input {width: calc(98% - 44px);}
input.wp-block-search__input,.wp-block-search__button {height: 40px;}
.wp-block-search__button {background: var(--color-theme);border: var(--color-theme);padding: 0 .5rem;transition: .3s;}
.wp-block-search__button i {vertical-align: middle;color: #fff;}
.wp-block-search__button:hover {opacity: 0.7;}
@media (max-width: 834px) {
	input.wp-block-search__input {width: calc(98% - 40px);}
}
/*
Search-cnt-wrap
-------------------------------------------------------------------------------------------------*/
ul.search-cnt-wrap {position: relative;display: flex;flex-flow: row wrap;border-bottom: 1px solid var(--border-color);padding: 2rem 0;transition: .3s;}
ul.search-cnt-wrap:first-of-type {border-top: 1px solid var(--border-color);}
ul.search-cnt-wrap::after {position: absolute;top: 50%;transform: translateY(-50%);right: 0;font-family: "Material Icons";content: "\e089";font-size: 120%;}
ul.search-cnt-wrap li {display: block;margin: 0 .5rem;padding-right: 1.5rem;}
ul.search-cnt-wrap li:first-child {font-size: 110%;font-weight: var(--font-bld);}
ul.search-cnt-wrap .link {display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
ul.search-cnt-wrap:hover {background: var(--color-bg-gry);}
/*=================================================================================================
  404
=================================================================================================*/
/*
404-ttl-area
-------------------------------------------------------------------------------------------------*/
.notfound-ttl-area {background: #e0e0e0;padding: 2rem;margin-bottom: 5rem;}
.notfound-area {margin-top: 2rem;padding-top: 2rem;border-top: 1px solid #ccc;}
a.notfound-btn {display: block;box-sizing: border-box;text-decoration: none;text-align: center;color: var(--color-def);border: 1px solid #666;max-width: 250px;margin: 2rem auto 0;padding: 1rem;transition: .3s;}
a.notfound-btn:hover {background: #fff;}
/*=================================================================================================
  Footer
=================================================================================================*/
footer{position:relative;z-index:0;width:100%;min-height:450px;background:url(img/common/footer.jpg) no-repeat center center;background-size:cover;color:#fff;border-top:1px solid var(--border-color);overflow:hidden;}
footer::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.25);z-index:-1;}
footer .wide-inner{position:absolute;left:50%;bottom:0;width:100%;height:auto;transform:translateX(-50%);display:flex;flex-direction:column;gap:2rem;padding-top:4rem;padding-bottom:1rem;box-sizing:border-box;}
.footer-nav{display:flex;flex-direction:column;align-items:flex-start;width:max-content;margin:0 0 0 auto;padding:0;list-style:none;font-size:13px;}
.footer-nav li{margin:0 0 10px;}
.footer-nav li:last-child{margin-bottom:0;}
.footer-nav a{position:relative;display:block;padding-left:30px;color:#fff;font-size:13px;font-weight:400;line-height:1.2;letter-spacing:.04em;text-decoration:none;transition:opacity .3s ease;}
.footer-nav a::before{content:"";position:absolute;left:0;top:50%;width:15px;height:1px;background:#fff;transform:translateY(-50%);transition:width .4s cubic-bezier(.16,1,.3,1);}
.footer-nav a:hover{opacity:.6;}
.footer-nav a:hover::before{width:22px;}
.copyright{width:100%;margin:0;font-size:13px;text-align:right;}
.copyright p{margin:0;line-height:1.4;}
@media(max-width:1180px){
	footer{min-height:300px;}
}
@media(max-width:500px){
	footer .wide-inner{gap:3rem;padding-top:2rem;padding-bottom:1rem;}
	.footer-nav a{font-size:12px;}
	.copyright{font-size:11px;}
}
/*=================================================================================================
  Top-content
=================================================================================================*/
:root {
--header-height: 60px;
--li-width: calc(100% / 6);
--li-height: 50px;
--mega-w: 700px;
}
@media (max-width: 1180px) {
  :root {
	--header-height: 60px;
  }
}
/* =========================================================
   左固定サイドナビ
========================================================= */
.side-fixed{position:fixed;top:var(--header-height);left:0;width:46px;height:calc(100dvh - var(--header-height));background:#fff;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;transition:top .4s ease,height .4s ease;z-index:70;}
.side-fixed.is-scroll{top:0;height:100dvh;}
/* 
RYOKEN FARM
-------------------------------------------------------------------------------------------------*/
.side-copy{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;letter-spacing:.08em;color:var(--color-theme);font-size:clamp(10px,1.5vh,12px);white-space:nowrap;overflow:hidden;}
.side-copy span{font-size:120%;}
/* 
求人情報
-------------------------------------------------------------------------------------------------*/
.side-recruit{width:100%;height:clamp(130px,24vh,200px);flex-shrink:0;background:var(--color-theme);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-decoration:none;transition:background .3s ease,color .3s ease;}
.side-recruit-icon{line-height:1;}
.side-recruit-icon::before{font-family:"Material Icons";content:"\e7fe";}
.side-recruit-text{writing-mode:vertical-rl;font-size:14px;letter-spacing:.12em;line-height:1;}
.side-recruit:hover{background:var(--color-theme-hover);}
@media(max-height:650px) and (min-width:501px){
	.side-recruit{height:120px;gap:5px;}
	.side-copy{font-size:9px;letter-spacing:.03em;}
	.side-recruit-text{font-size:12px;}
}
@media(max-width:500px){
	.side-fixed{display:none;}
}
/* 
Header
-------------------------------------------------------------------------------------------------*/
.header {position: fixed;transition: color 0.4s ease-out;width: 100%;z-index: 90;}
.header a {color: #fff;text-decoration: none;transition: .3s;}
.header ul li {margin: 0;}
/* header change-color */
.header.change-color {background-color: #fff;transition: 0.3s;}
.header.change-color a {color: var(--color-def);}
/********** header-inner **********/
.header-inner {position: relative;display: flex;justify-content: space-between;align-items: center;width: 100%;height: var(--header-height);}
.header-item:first-child {margin-left: 46px;}
.header-item:last-child {margin-right: var(--both-ends);}
/* header-logo */
.header-logo {font-size: clamp(0.9375rem, 0.8801rem + 0.2137vw, 1.0625rem);/*MIN430/15-MAX1366/17*/width: 224px;height: auto;margin: 0;}
.header-logo.headerLogoScroll.-before {display: none;}
.header-logo.-after {display: none;}
.header-logo.headerLogoScroll.-after {display: block;}
@media (max-width: 1920px) {
  .header-item:last-child {margin-right: var(--both-ends);}
}
@media (max-width: 1180px) {
  .header-inner {flex-wrap: wrap;height:var(--header-height);}
  .header-item:first-child {margin-left: 4%;}
  .header-item:last-child {width: 100%;}
  .header-logo {margin-top: 7px;width: 180px;}
  /* header change-color */
  .header.change-color .header-logo {margin-top: 7px;}/* .header-logo + .menu-container */
}
/********** global-nav **********/
.menu-container {font-weight: var(--font-bld);z-index: 88;}
.global-nav ul {position: relative;display: flex;justify-content: center;align-items: center;list-style: none;margin: 0;padding: 0;width: var(--mega-w);}
/** 2階層目 **/
.global-nav ul li {width: var(--li-width);margin: 0;font-size: 15px;}
.global-nav ul li:not(:first-child) {border-left: 1px solid rgba(255,255,255,0.6);}
.global-nav ul li a {display: block;text-align: center;/*height: var(--li-height);line-height: var(--li-height);*/position: relative;cursor: pointer;}
.global-nav ul li a:hover {color: var(--color-theme-gld);}
/** 3階層目 **/
.global-nav ul ul.sub-menu {display: flex;flex-wrap: wrap;justify-content: flex-start;margin: 0;padding: 0;}
.global-nav ul li ul li {width: calc(100% / 2);}
.global-nav ul li ul li:not(:first-child) {border-left: 1px solid rgba(0,0,0,0.2);}
.global-nav ul li ul li a {padding: 0.5rem 0;}
.global-nav ul li ul li a:hover {color: var(--color-theme-gld);}
.global-nav ul li ul li a:hover::after{opacity: 0;}
/* normal-menu 親にクラスをふる */
.global-nav ul li.normal-menu ul.sub-menu {left: auto;width: var(--li-width);}
.global-nav ul li.normal-menu ul li {width: 100%;}
/* mega-menu 親にクラスをふる　子要素をタイトルとして表示　孫要素*/
.global-nav ul li.mega-menu > ul.sub-menu {position: absolute;left: 50%;transform: translateX(-50%);flex-wrap: wrap;justify-content: space-between;align-items: stretch;width: 100vw;margin-left: calc(-50vw + (var(--mega-w) / 2) + var(--both-ends));padding: 2rem;}
.global-nav ul li.mega-menu ul li.menu-item-has-children {width: 48%;}
.global-nav ul li.mega-menu ul li.menu-item-has-children a {border-bottom: 1px solid red;}
.global-nav ul li.mega-menu ul li.menu-item-has-children ul {width: 100%;}
.global-nav ul li.mega-menu ul li.menu-item-has-children ul li {width: 100%;padding: 0;}
.global-nav ul li.mega-menu ul li.menu-item-has-children ul li a {border-bottom: 1px solid #999;}
/* mega-menu　最初の子要素が左側にタイトルとして表示　残りを2カラムで表示する
.global-nav ul li.mega-menu > ul.sub-menu {position: absolute;left: 50%;transform: translateX(-50%);display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;width: 100vw;margin-left: calc(-50vw + (var(--mega-w) / 2) + var(--both-ends));padding: 2rem;}
.global-nav ul li.mega-menu ul.sub-menu li {width: 32%;}
.global-nav ul li.mega-menu ul.sub-menu li:first-child {font-size: 120%;}
.global-nav ul li.mega-menu ul.sub-menu li:first-child ~ li {border-bottom: 1px solid #999;}
.global-nav ul li.mega-menu ul.sub-menu li:nth-child(2n) {margin-left: 34%;}
.global-nav ul li.mega-menu ul.sub-menu li:nth-child(2) {margin-left: 0;}
.global-nav ul li.mega-menu ul.sub-menu li a {text-align: left;}
 */
/* 下の階層を持っているulの指定 */
.global-nav > ul > li > ul {position: absolute;visibility: hidden;width: 100%;background: #fff;opacity: 0;top: 54px;left: 0;transition: all .3s;z-index: 89;border-radius: 10px;}
.global-nav > ul > li > ul > li a {color: var(--color-def);}
/* hoverしたら表示 */
.global-nav li.menu-item-has-children:hover > ul,
.global-nav li.menu-item-has-children ul li:hover > ul,
.global-nav li.menu-item-has-children:active > ul,
.global-nav li.menu-item-has-children ul li:active > ul{visibility: visible;opacity: 1;}
  /* header change-color */
  .header.change-color .global-nav ul li:not(:first-child) {border-left: 1px solid rgba(0,0,0,0.2);}
@media (max-width: 1920px) {
  .global-nav > ul > li.mega-menu > ul.sub-menu {margin-left: calc(-50vw + 450px + var(--both-ends));}
}
/********** menu-icon toggle **********/
#menu-icon {position: fixed;z-index: 100;top: 0;right:0;cursor: pointer;width: var(--header-height);height: var(--header-height);background: var(--color-theme);font-family: "Oswald", sans-serif;}
#menu-icon span {border:1px solid #fff;width:20px;margin: 0 0 5px 20px;display:block;-webkit-transition:all .5s;transition:all .5s;}
#menu-icon span.first {margin-top: 15px;}
#menu-icon span.second {top: 10px;}
#menu-icon span.third  {top: 18px;}
#menu-icon:after {content: "MENU";display: block;line-height: 1.0;color: #fff;font-size: calc(9 /16 * 1rem);text-align: center;}
/* active */
#menu-icon.active span.first {transform: rotate(45deg);-webkit-transform: rotate(45deg);margin-top: 24px;}
#menu-icon.active span.second {transform: rotate(135deg);-webkit-transform: rotate(135deg);width:20px;position: relative;top: -7px;}
#menu-icon.active span.third {display: none;}
#menu-icon.active:after {content: "CLOSE";display: block;line-height: 1.0;color: #fff;font-size: calc(9 /16 * 1rem);margin-left: -.25rem;}
/* header change-color
.header.change-color #menu-icon span {border:1px solid #000;}
.header.change-color #menu-icon:after,.header.change-color #menu-icon.active:after {color: #000;}
*/
@media (max-width: 1180px) {
  .global-nav {display: none;}
}
/********** toggle-menu-container **********/
.header.change-color .toggle-menu-container a {color: #fff;}
.toggle-menu-container{position:fixed;margin-top:0;top:0;right:-120%;width:100%;height:100vh;background:var(--color-theme);transition:all .9s;z-index:90;cursor:default;overflow:hidden;}
.toggle-menu-container::before{content:"";position:absolute;inset:0;background:url("img/common/toggle-bg.png") no-repeat left bottom;background-size:30% auto;opacity:.07;pointer-events:none;z-index:0;}
.toggle-menu-container>*{position:relative;z-index:1;}
.toggle-menu-container.panelactive {right: 0;}/*アクティブクラスがついたら位置を0に*/
.toggle-menu-container.panelactive .toggle-global-nav {z-index: 90;width: 100%;height: 100vh;/*表示する高さ*/overflow: auto;-webkit-overflow-scrolling: touch;}
/*ここからtoggle-global-nav内のデザインCSS*/
.toggle-global-nav {display: flex;justify-content: center;align-items: center;flex-direction: column;}
.toggle-global-nav-logo {margin-bottom: 2rem;}
.toggle-global-nav-wrap {width: 90%;display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;}
.toggle-global-nav-col {width: 33%;}
/*メニュー*/
.toggle-global-nav-col ul {list-style: none;}
.toggle-global-nav-col ul li {padding: 0.3rem 0;}
/* 親メニュー */
.toggle-global-nav-col>ul>li>a{position:relative;display:inline-block;padding-left:0;text-decoration:none;color:inherit;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .3s ease;}
.toggle-global-nav-col>ul>li>a::before{content:"";position:absolute;left:-2rem;top:50%;width:1.4rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right center;transition:transform .45s cubic-bezier(.16,1,.3,1);}
.toggle-global-nav-col>ul>li>a:hover{transform:translateX(2rem);opacity:.65;}
.toggle-global-nav-col>ul>li>a:hover::before{transform:scaleX(1);}

/* 子メニュー */
.toggle-global-nav-col ul li ul li{position:relative;padding-left:1.5rem;transition:padding-left .45s cubic-bezier(.16,1,.3,1);}
.toggle-global-nav-col ul li ul li::after{content:"";position:absolute;top:50%;left:0;width:.6rem;height:1px;background:currentColor;transform:translateY(-50%);transition:width .45s cubic-bezier(.16,1,.3,1);}
.toggle-global-nav-col ul li ul li:hover{padding-left:2.5rem;}
.toggle-global-nav-col ul li ul li:hover::after{width:1.6rem;}
.toggle-global-nav-col ul li ul li a{display:inline-block;text-decoration:none;color:inherit;transition:opacity .3s ease;}
.toggle-global-nav-col ul li ul li:hover>a{opacity:.65;}
/*お問い合わせテーブル*/
.toggle-global-nav-col table {text-align: center;}
.toggle-global-nav-col table tr td {width: 50%;transition: 0.3s;}
.toggle-global-nav-col table tr td:hover {background: rgba(255,255,255,0.2);}
.toggle-global-nav-col table tr td a {display: block;width: 100%;height: 100%;}
@media (max-width: 900px) {
	.toggle-global-nav-col {width: 50%;}
	.toggle-global-nav-col:last-child {width: 100%;margin-top: 1rem;}
}
@media (max-width: 500px) {
	.toggle-global-nav {padding: 2rem 0 10rem;justify-content: space-between;}
	.toggle-global-nav-col {width: 100%;}
	.toggle-global-nav-col:last-child {margin-bottom: 5rem;}
	.toggle-menu-container::before{background-size:50% auto;}
}
/* 
Main-slider
-------------------------------------------------------------------------------------------------*/
.main-img {position: relative;width: 100%;height: 100vh;overflow: hidden;cursor: default;}
.main-img .video {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);min-width: 100%;min-height: 100vh;z-index: 1;}
.main-slide-ttl-area {position: absolute;bottom: 8%;left: 46px;z-index: 2;margin: 0 var(--both-ends);opacity: 0.8;color: #fff;text-shadow: 1px 1px 1px #000;}
.main-slide-ttl {font-size: 8vw;line-height: 1.2;font-weight: bold;}
.main-slide-subttl {font-size: clamp(1.25rem, 1.0203rem + 0.8547vw, 1.75rem);font-weight: 500;}
@media (max-width: 900px) {
	.main-slide-ttl {font-size: 12vw;}
}
@media (max-width: 500px) {
	.main-slide-ttl-area {bottom: 10%;left: 0;}
}
/* 
Top-common-tips
-------------------------------------------------------------------------------------------------*/
/* main-ttl */
.main-ttl {font-size: clamp(1.625rem, 0.821rem + 2.9915vw, 3.375rem);/*MIN 430@26px-MAX 1366@54px*/font-weight: bold;display: flex;align-items: center;}
.main-ttl span {font-weight: normal;font-size: var(--font-size-nml);}
.main-ttl span::before {content: "/";font-size: 20px;margin: 0 14px;}
/* main-btn */
.main-btn {position: relative; height: 50px; margin: 2rem auto; border: none; background: var(--color-theme-gld); color: #fff; font-weight: bold; cursor: pointer; transition: all 0.3s ease; box-sizing: border-box; display: flex; align-items: center; justify-content: center; overflow: hidden; border-radius: 4px; text-decoration: none;max-width: 280px;}
.main-btn::after {content: "→"; position: absolute; right: 15px; transition: all 0.3s;}
.main-btn:hover {background: var(--color-theme-gld-hover);border-radius: 50px;} 
.main-btn:hover::after {animation: arrowPass 0.6s infinite linear;} @keyframes arrowPass {0% {transform: translateX(0); opacity: 1;} 49% {transform: translateX(15px); opacity: 0;} 50% {transform: translateX(-15px); opacity: 0;} 100% {transform: translateX(0); opacity: 1;}}
/* more-btn */
.more-btn{display:flex;align-items:center;justify-content:space-between;width:180px;margin-top:32px;padding:12px 14px 12px 18px;border:1px solid #111;border-radius:100px;box-sizing:border-box;color:#111;font-size:11px;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:background .4s ease,color .4s ease;}
.more-btn-arrow{font-size:16px;font-weight:400;transition:transform .4s cubic-bezier(.16,1,.3,1);}
.more-btn:hover{background:#111;color:#fff;}
.more-btn:hover .more-btn-arrow{transform:translateX(4px);}
@media(max-width:950px){
	.more-btne{width:165px;margin-top:35px;padding:11px 14px 11px 18px;}
}
/* 
#Top-area01
-------------------------------------------------------------------------------------------------*/
#top-area01{background:url(img/top/top-area01.gif) no-repeat right top;background-size:85% auto;padding:5rem 0 0;margin-top:0;padding-left:var(--both-ends);}
#top-area01 .main-ttl {margin-top: 0;}
@media (max-width: 1550px) {
	#top-area01{background-size:100% auto;}
}
@media (max-width: 1180px) {
	#top-area01{background-size:130% auto;}
}
@media (max-width: 500px) {
	#top-area01{background-size:150% auto;}
}
:root {
--top-area01-slideh: 399px;
}
/********** top-area01-slider-wrap スライダー レスポンシブ対応 **********/
.top-area01-slider-wrap{color:#000;padding:1rem 0 0;overflow:hidden;}
.top-area01-slider-wrap .slider-section{position:relative;width:100%;margin:0 auto;box-sizing:border-box;}
/* HEADER */
.top-area01-slider-wrap .slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;}
.top-area01-slider-wrap .slide-number{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border:1px solid rgba(0,0,0,.4);border-radius:50%;font-size:1.25rem;line-height:1;box-sizing:border-box;}
.top-area01-slider-wrap .slider-controls{display:flex;align-items:center;gap:10px;margin-right:4%;}
.top-area01-slider-wrap .top-area01-nav-btn{display:flex;align-items:center;justify-content:center;width:45px;height:45px;padding:0;border:1px solid rgba(0,0,0,.4);background:#fff;color:#000;font-size:1.1rem;line-height:1;cursor:pointer;transition:background .3s ease;}
.top-area01-slider-wrap .top-area01-nav-btn:hover{background:var(--color-theme-gld);color: #fff;}
/* SWIPER */
.top-area01-slider-wrap .top-area01Swiper{position:relative;width:100%;height:var(--top-area01-slideh);padding:0;overflow:hidden;box-sizing:border-box;}
.top-area01-slider-wrap .swiper-wrapper{height:100%;align-items:flex-end;}
/* SLIDE */
.top-area01-slider-wrap .swiper-slide{position:relative;height:100%;overflow:visible;box-sizing:border-box;cursor:pointer;}
/* 画像エリア */
.top-area01-slider-wrap .slide-img-wrapper{position:absolute;left:0;bottom:0;width:100%;height:266px;overflow:hidden;transition:height .4s ease,clip-path .4s ease;}
.top-area01-slider-wrap .slide-img-wrapper img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s ease,opacity .3s ease;}
/* ACTIVE */
.top-area01-slider-wrap .swiper-slide.swiper-slide-active .slide-img-wrapper{height:100%;clip-path:polygon(0 0,90% 0,100% 16%,100% 100%,0 100%,0 50%);}
/* HOVER */
.top-area01-slider-wrap .swiper-slide:hover .slide-img-wrapper img{transform:scale(1.02);opacity:.7;}
/* LABEL */
.top-area01-slider-wrap .job-label{position:absolute;top:0;left:0;z-index:2;padding:4px 12px;background:rgba(204,153,0,.6);color:#fff;font-size:.75rem;font-weight:bold;line-height:1.6;letter-spacing:.05em;}
/* LINK */
.top-area01-slider-wrap .swiper-slide>a{display:block;position:relative;width:100%;height:100%;color:inherit;text-decoration:none;}
/* FOOTER */
.top-area01-slider-wrap .profile-footer{margin-top:60px;padding-top:2rem;min-height:80px;border-top:1px solid rgba(0,0,0,.2);box-sizing:border-box;}
.top-area01-slider-wrap .profile-name{margin:0 0 10px;font-size:120%;font-weight:bold;line-height:1.5;}
.top-area01-slider-wrap .profile-meta{margin:0 0 1rem;font-size:.85rem;line-height:1.7;color:rgba(0,0,0,.7);}
@media screen and (min-width:768px) and (max-width:1023px){
	/*.top-area01-slider-wrap .slider-header{margin-bottom:25px;}*/
	.top-area01-slider-wrap .slider-controls{margin-right:2%;}
	.top-area01-slider-wrap .top-area01Swiper{height:320px;}
	.top-area01-slider-wrap .slide-img-wrapper{height:230px;}
	.top-area01-slider-wrap .swiper-slide.swiper-slide-active .slide-img-wrapper{height:100%;clip-path:polygon(0 0,90% 0,100% 14%,100% 100%,0 100%,0 50%);}
	.top-area01-slider-wrap .profile-footer{margin-top:45px;padding-top:1.5rem;}
}
@media (max-width:767px){
	.top-area01-slider-wrap{width:100%;padding:1rem 0 0;overflow:hidden;}
	.top-area01-slider-wrap .slider-section{width:100%;}
	.top-area01-slider-wrap .slider-header{margin-bottom:20px;}
	.top-area01-slider-wrap .slide-number{width:40px;height:40px;font-size:1rem;}
	.top-area01-slider-wrap .slider-controls{gap:8px;margin-right:0;}
	.top-area01-slider-wrap .top-area01-nav-btn{width:40px;height:40px;font-size:1rem;}
	.top-area01-slider-wrap .top-area01Swiper{position:relative;width:100%;height:66.6667vw;max-height:none;padding:0;overflow:hidden;box-sizing:border-box;}
	.top-area01-slider-wrap .swiper-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;align-items:stretch;}
	.top-area01-slider-wrap .swiper-slide{position:relative;width:100%!important;height:100%!important;overflow:hidden;box-sizing:border-box;flex-shrink:0;}
	.top-area01-slider-wrap .slide-img-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto!important;overflow:hidden;clip-path:polygon(0 0,90% 0,100% 12%,100% 100%,0 100%,0 50%);transition:none;}
	.top-area01-slider-wrap .swiper-slide.swiper-slide-active .slide-img-wrapper{height:auto!important;clip-path:polygon(0 0,90% 0,100% 12%,100% 100%,0 100%,0 50%);}
	.top-area01-slider-wrap .slide-img-wrapper img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
	.top-area01-slider-wrap .job-label{padding:4px 10px;font-size:.7rem;}
	.top-area01-slider-wrap .profile-footer{margin-top:30px;padding-top:1.5rem;min-height:auto;}
	.top-area01-slider-wrap .profile-name{margin-bottom:6px;font-size:1rem;}
	.top-area01-slider-wrap .profile-meta{margin-bottom:.5rem;font-size:.8rem;}
}
@media(max-width:767px){
	.top-area01-slider-wrap .profile-footer{height:115px;min-height:115px;margin-top:30px;padding-top:1.5rem;overflow:hidden;box-sizing:border-box;}
	.top-area01-slider-wrap .profile-name{height:24px;margin:0 0 6px;line-height:24px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
	.top-area01-slider-wrap .profile-meta{height:42px;margin:0;line-height:21px;overflow:hidden;}
}
@media (max-width: 500px){
	.top-area01-slider-wrap .profile-footer{margin-right:4%;}
}
/* 
#Top-area02
-------------------------------------------------------------------------------------------------*/
.wide-link-banner{width:100%;overflow:hidden;}
.wide-link-banner-link{position:relative;display:block;width:100%;overflow:hidden;}
.wide-link-banner-link img{display:block;width:100%;height:auto;transition:transform .8s cubic-bezier(.16,1,.3,1);}
.wide-link-banner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.12) 45%,rgba(0,0,0,0) 75%);transition:background .5s ease;pointer-events:none;}
.wide-link-banner-content{position:absolute;left:7%;top:50%;display:flex;flex-direction:column;align-items:flex-start;color:#fff;transform:translateY(-50%);z-index:2;}
.wide-link-banner-title{display:block;font-size:clamp(1.5rem, 1.1554rem + 1.2821vw, 2.25rem);font-weight:600;line-height:1.3;letter-spacing:.01em;}
.wide-link-banner-sub{display:block;margin-top:.4rem;font-size:var(--font-size-nml);font-weight:400;line-height:1.5;}
.wide-link-banner-viewmore{display:flex;align-items:center;justify-content:space-between;width:140px;margin-top:1.5rem;padding:11px 16px;border:1px solid rgba(255,255,255,.8);border-radius:30px;color:#fff;font-size:11px;letter-spacing:.08em;line-height:1;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .6s cubic-bezier(.16,1,.3,1);pointer-events:none;}
.wide-link-banner-viewmore span{font-size:15px;transition:transform .4s ease;}
.wide-link-banner-link:hover img{transform:scale(1.035);}
.wide-link-banner-link:hover .wide-link-banner-overlay{background:linear-gradient(90deg,rgba(0,0,0,.52) 0%,rgba(0,0,0,.18) 45%,rgba(0,0,0,0) 75%);}
.wide-link-banner-link:hover .wide-link-banner-viewmore{opacity:1;transform:translateY(0);}
.wide-link-banner-link:hover .wide-link-banner-viewmore span{transform:translateX(4px);}
@media(max-width:900px){
	.wide-link-banner-link img{height:350px;object-fit: cover;}
	.wide-link-banner-content{left:6%;}
	.wide-link-banner-viewmore{width:120px;margin-top:1rem;padding:9px 13px;font-size:9px;}
}
@media(max-width:500px){
	.wide-link-banner-link img{height:250px;object-fit: cover;}
}
/* 
#Top-area03
-------------------------------------------------------------------------------------------------*/
#top-area03{width:100%;overflow:hidden;}
.top-area03-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:stretch;}
.top-area03-img{display:flex;width:calc(100% - 1030px);min-width:0;height:90vh;}
.top-area03-photo{width:calc(100% - 200px);overflow:hidden;border-radius:0 32px 32px 0;}
.top-area03-photo img{display:block;width:100%;height:100%;min-height:500px;object-fit:cover;}
.top-area03-address{width:30px;margin:0;padding:18px 0 0;font-size:10px;font-weight:400;letter-spacing:.02em;color:#777;line-height:1;writing-mode:vertical-rl;text-orientation:mixed;box-sizing:border-box;}
.top-area03-textarea{display:flex;flex-direction:column;width:1030px;padding:0 7% 1rem 6%;box-sizing:border-box;}
.top-area03-heading{padding-top:0;border-top:1px solid #222;}
.top-area03-heading h2{margin:2rem 0 0.8rem;font-family:serif;font-size:clamp(2rem,2.3vw,3rem);font-weight:400;line-height:1;letter-spacing:.04em;}
.top-area03-heading p{margin:0;font-size:86%;line-height:1.6;}
.top-area03-body{margin-top:auto;padding-top:80px;}
.top-area03-body p{margin:0 0 2rem;line-height:1.9;letter-spacing:.02em;}
.top-area03-body strong{font-weight:700;}
.top-area03-more{display:flex;align-items:center;justify-content:space-between;width:180px;margin-top:32px;padding:12px 14px 12px 18px;border:1px solid #111;border-radius:100px;box-sizing:border-box;color:#111;font-size:11px;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:background .4s ease,color .4s ease;}
.top-area03-more-arrow{font-size:16px;font-weight:400;transition:transform .4s cubic-bezier(.16,1,.3,1);}
.top-area03-more:hover{background:#111;color:#fff;}
.top-area03-more:hover .top-area03-more-arrow{transform:translateX(4px);}
@media(max-width:1920px){
	.top-area03-img{width:calc(100% - 730px);}
	.top-area03-photo{width:calc(100% - 50px);}
	.top-area03-textarea{width:730px;}
}
@media(max-width:1400px){
	.top-area03-img{height:80vh;}
}
@media(max-width:1180px){
	.top-area03-img{width:calc(100% - 630px);}
	.top-area03-textarea{width:630px;}
}
@media(max-width:1024px){
	.top-area03-img{width:calc(100% - 500px);height:auto;}
	.top-area03-textarea{width:500px;}
}
@media(max-width:950px){
	.top-area03-wrap{display:block;}
	.top-area03-img{display:block;width:100%;}
	.top-area03-photo{width:calc(100% - 24px);border-radius:0 20px 20px 0;}
	.top-area03-photo img{width:100%;height:60vw;min-height:0;object-fit:cover;}
	.top-area03-address{width:auto;margin:0;padding:12px 0 0;font-size:9px;line-height:1.5;letter-spacing:.03em;writing-mode:horizontal-tb;text-orientation:mixed;}
	.top-area03-textarea{display:block;width:100%;padding:2rem 4% 0 0;}
	.top-area03-heading{border-top:1px solid #222;}
	.top-area03-heading h2{margin:28px 0 6px;}
	.top-area03-body{margin-top:45px;padding-top:0;}
	.top-area03-body p{margin-bottom:24px;line-height:2;font-size:14px;}
	.top-area03-more{width:165px;margin-top:35px;padding:11px 14px 11px 18px;}
	.top-area03-heading h2,.top-area03-heading p,.top-area03-body {padding-left: 1rem;}
}
@media(max-width:500px){
	.top-area03-photo img{height:65vw;}
	.top-area03-textarea{padding:2rem 4% 0 0;}
	.top-area03-heading h2,.top-area03-body {padding-left: 4%;}
}
/******************ループで流れる横スライドショーSTOP*********************/
.top-area03-slider {display: flex;overflow: hidden;padding: 7rem 0 0;}
.top-area03-slider-list {display: flex;margin: 0;padding: 0;align-items: center;animation: slideShow 60s infinite linear;list-style: none;}
.top-area03-slider-item {width: 400px;height: 266px;margin-right: 2rem;}
.top-area03-slider-item:nth-child(odd) {margin-top: 4rem;}
.top-area03-slider-item img {width: 100%;height: 100%;object-fit: cover;margin: 0 0.5rem;border-radius: 10px;}
.top-area03-slider:hover .slider-list {animation-play-state: paused;}
@keyframes slideShow {
0% {transform: translateX(0%);}100% {transform: translateX(-100%);}
}
@media(max-width:950px){
	.top-area03-slider {padding: 4rem 0 0;}
}
@media(max-width:500px){
	.top-area03-slider {padding: 2rem 0 0;}
	.top-area03-slider-list {animation: slideShow 40s infinite linear;}
	.top-area03-slider-item {width: 280px;height: 186px;}
}
/* 
#Top-area04
-------------------------------------------------------------------------------------------------*/
.top-area04-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:stretch;}
.top-area04-col{width:50%;overflow:hidden;}
.top-area04-link{position:relative;display:block;width:100%;height:500px;overflow:hidden;color:#fff;text-decoration:none;}
.top-area04-img{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;}
.top-area04-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1);}
.top-area04-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.58) 0%,rgba(0,0,0,.34) 42%,rgba(0,0,0,.05) 100%);pointer-events:none;}
.top-area04-content{position:absolute;z-index:2;top:45px;right:32px;bottom:28px;display:flex;flex-direction:column;align-items:center;}
.top-area04-title{display:flex;flex-direction:row;align-items:flex-start;gap:8px;color:#fff;}
.top-area04-title-ja{font-weight:400;line-height:1.45;letter-spacing:.12em;writing-mode:vertical-rl;text-orientation:upright;font-size: clamp(1.25rem, 1.0203rem + 0.8547vw, 1.75rem);}/*MIN 430@20px-MAX 1366@28px*/
.top-area04-title-en{font-size:11px;font-weight:400;line-height:1;letter-spacing:.08em;opacity:.55;writing-mode:vertical-rl;text-orientation:mixed;}
.top-area04-arrow{position:relative;display:flex;align-items:center;justify-content:center;width:76px;height:76px;margin-top:auto;border:1px solid rgba(255,255,255,.85);border-radius:50%;box-sizing:border-box;transition:background .45s ease,transform .45s cubic-bezier(.16,1,.3,1);}
.top-area04-arrow-line{position:relative;display:block;width:34px;height:1px;background:#fff;transition:transform .45s cubic-bezier(.16,1,.3,1);}
.top-area04-arrow-line::after{content:"";position:absolute;right:0;top:50%;width:11px;height:11px;border-top:1px solid #fff;border-right:1px solid #fff;transform:translateY(-50%) rotate(45deg);}
.top-area04-link:hover .top-area04-img img{transform:scale(1.06);}
.top-area04-link:hover .top-area04-arrow{background:rgba(255,255,255,.15);}
.top-area04-link:hover .top-area04-arrow-line{transform:translateX(5px);}
@media screen and (max-width:500px){
	.top-area04-col{width:100%;}
	.top-area04-link{height:300px;}
	.top-area04-content{top:28px;right:20px;bottom:22px;}
	.top-area04-title{gap:6px;}
	.top-area04-title-en{font-size:10px;}
	.top-area04-arrow{width:62px;height:62px;}
	.top-area04-arrow-line{width:28px;}
}
/* 
#Top-area05
-------------------------------------------------------------------------------------------------*/
#top-area05{background: var(--color-bg-gry);padding: 5rem 0;}
.top-area05-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;}
.top-area05-news{width:calc(96% - 180px);}
.top-area05-btn{width:180px;}
@media screen and (max-width:1180px){
	.top-area05-wrap{flex-direction: column;}
	.top-area05-news,.top-area05-btn{width:100%;}
}
/********** news02 **********/
.news02 {width: 100%;list-style: none;padding: 0;}
.news02 li {background-color: #F8F8F8;box-shadow: 0px 2px 2px rgba(225,225,225,0.5);margin-bottom: 2px;}
.news02 li a {box-sizing: border-box;color: #000;display: table;padding: 15px;text-decoration: none;transition: 0.2s ease-in-out;width: 100%;}
.news02 li a:hover {background: #FFF;text-decoration: none;}
.news02 li time {color: var(--color-theme-hover);display: table-cell;vertical-align: middle;width: 160px;font-size: 84%;}
.news02 li p {display: table-cell;padding-left: 20px;vertical-align: middle;}
@media screen and (max-width:850px){
	.news02 li time {width: 140px;}
	.news02 li p {padding-left: 10px;}
}
@media screen and (max-width:700px){
	.news02 li time {display: block;}
	.news02 li p {padding-left: 0;display: block;margin-bottom: 0;}
}
/********** top-access **********/
.top-access{width:100%;padding:7rem 0 3rem;}
.top-access-link{position:relative;display:block;width:100%;height:550px;overflow:hidden;border-radius:22px;color:#fff;text-decoration:none;}
.top-access-img{position:absolute;inset:0;width:100%;height:100%;}
.top-access-img img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform 1.2s cubic-bezier(.16,1,.3,1);}
.top-access-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.16) 48%,rgba(0,0,0,.12) 100%);pointer-events:none;}
.top-access-info{position:absolute;z-index:2;top:45px;left:38px;}
.top-access-name{margin:0 0 14px;font-weight:600;line-height:1.6;letter-spacing:.05em;}
.top-access-address{margin:0;font-size:15px;font-weight:500;line-height:2;letter-spacing:.03em;}
.top-access-more{display:flex;align-items:center;justify-content:space-between;width:180px;height:38px;margin-top:22px;padding:0 15px;border:1px solid rgba(255,255,255,.85);border-radius:30px;box-sizing:border-box;font-size:11px;font-weight:600;letter-spacing:.04em;transition:background .4s ease,color .4s ease;}
.top-access-more-arrow{display:block;font-size:18px;font-weight:300;transition:transform .4s cubic-bezier(.16,1,.3,1);}
.top-access-title{position:absolute;z-index:2;right:45px;bottom:27px;display:flex;flex-direction:column;align-items:flex-end;}
.top-access-title-ja{display:block;margin-bottom:7px;line-height:1;letter-spacing:.12em;}
.top-access-title-en{display:block;font-size: clamp(1.625rem, 0.821rem + 2.9915vw, 3.375rem);/*MIN 430@26px-MAX 1366@54px*/font-weight: bold;line-height:1;letter-spacing:.02em;}
.top-access-link:hover .top-access-img img{transform:scale(1.04);}
.top-access-link:hover .top-access-more{background:#fff;color:#111;}
.top-access-link:hover .top-access-more-arrow{transform:translateX(5px);}
@media screen and (max-width:767px){
	.top-access{padding:4rem 0 2rem;}
	.top-access-link{height:400px;border-radius:16px;}
	.top-access-img img{object-position:center center;}
	.top-access-overlay{background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.35) 100%);}
	.top-access-info{top:28px;left:25px;right:25px;}
	.top-access-name{margin-bottom:10px;}
	.top-access-address{line-height:1.9;font-size:14px;text-shadow:0 1px 5px rgba(0,0,0,.9),0 0 10px rgba(0,0,0,.65);}
	.top-access-more{width:160px;height:38px;margin-top:20px;padding:0 14px;font-size:10px;}
	.top-access-title{right:25px;bottom:25px;}
	.top-access-title-ja{margin-bottom:6px;}
}
/* 
#Top-area06
-------------------------------------------------------------------------------------------------*/
#top-area06{width:100%;padding:7rem 0;overflow:hidden;margin-top: 0;}
.top-area06-wrap{display:flex;width:100%;align-items:stretch;gap:clamp(70px,6vw,120px);padding: 0 6%;box-sizing:border-box;}
/* テキストエリア */
.top-area06-textarea{position:relative;flex:0 0 480px;width:480px;}
.top-area06-text-inner{position:relative;will-change:transform;}
.top-area06-heading{padding-top:0;border-top:1px solid #222;}
.top-area06-heading h2{margin:2rem 0 .8rem;font-family:serif;font-size:clamp(2rem,2.3vw,3rem);font-weight:400;line-height:1;letter-spacing:.04em;}
.top-area06-heading p{margin:0;font-size:86%;line-height:1.6;}
.top-area06-body{margin-top:7rem;}
.top-area06-body p{margin:0 0 2rem;line-height:1.9;letter-spacing:.02em;}
.top-area06-body strong{font-weight:700;font-size: 120%;}
.top-area06-more{display:flex;align-items:center;justify-content:space-between;width:180px;margin-top:32px;padding:12px 14px 12px 18px;border:1px solid #111;border-radius:100px;box-sizing:border-box;color:#111;font-size:11px;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:background .4s ease,color .4s ease;}
.top-area06-more-arrow{font-size:16px;font-weight:400;transition:transform .4s cubic-bezier(.16,1,.3,1);}
.top-area06-more:hover{background:#111;color:#fff;}
.top-area06-more:hover .top-area06-more-arrow{transform:translateX(4px);}
/* 画像エリア */
.top-area06-img{display:flex;flex:1;min-width:0;gap:3%;padding-right:1.5%;box-sizing:border-box;}
.top-area06-photo{position:relative;overflow:hidden;will-change:transform;}
.top-area06-photo img{display:block;width:100%;height:100%;object-fit:cover;}
.top-area06-photo01{align-self:flex-end;width:38%;height:45%;border-radius:8px;}
.top-area06-photo02{align-self:flex-start;width:62%;height:75%;border-radius:14px;}
@media(max-width:1920px){
	.top-area06-wrap{padding: 0 4%;}
}
@media(max-width:1100px){
	#top-area06{padding:5rem 0;}
	.top-area06-wrap{display:flex;flex-direction:column;gap:0;padding: 0 4%;}
	.top-area06-textarea{width:100%;flex:0 0 auto;box-sizing:border-box;}
	/*.top-area06-text-inner{transform:none!important;}*/
	.top-area06-heading{padding-top:0;border-top:1px solid #222;}
	.top-area06-heading h2{margin:2rem 0 .6rem;}
	.top-area06-body{margin-top:4rem;}
	.top-area06-img{display:flex;width:100%;flex:none;gap:6%;margin-top:4rem;padding:0 3%;box-sizing:border-box;}
	/*.top-area06-photo{transform:none!important;}*/
	.top-area06-photo01{align-self:flex-end;width:38%;height:36vw;border-radius:8px;}
	.top-area06-photo02{align-self:flex-start;width:62%;height:52vw;border-radius:14px;}
}
/********** RYOKEN FARM text **********/
.ryoken-text{display:flex;align-items:flex-end;justify-content:space-between;width:100%;white-space:nowrap;font-size:clamp(60px,10vw,190px);font-weight:400;line-height:.85;letter-spacing:-.04em;}
.ryoken-char{display:block;overflow:hidden;}
.ryoken-char i{display:block;font-style:normal;transform:translateY(110%);transition:transform 1.1s cubic-bezier(.16,1,.3,1);will-change:transform;}
.ryoken-space{display:block;width:.3em;}
.ryoken-text.is-show .ryoken-char i{transform:translateY(0);}
.ryoken-text.is-show .ryoken-char:nth-child(1) i{transition-delay:0s;}
.ryoken-text.is-show .ryoken-char:nth-child(2) i{transition-delay:.06s;}
.ryoken-text.is-show .ryoken-char:nth-child(3) i{transition-delay:.12s;}
.ryoken-text.is-show .ryoken-char:nth-child(4) i{transition-delay:.18s;}
.ryoken-text.is-show .ryoken-char:nth-child(5) i{transition-delay:.24s;}
.ryoken-text.is-show .ryoken-char:nth-child(6) i{transition-delay:.30s;}
.ryoken-text.is-show .ryoken-char:nth-child(8) i{transition-delay:.36s;}
.ryoken-text.is-show .ryoken-char:nth-child(9) i{transition-delay:.42s;}
.ryoken-text.is-show .ryoken-char:nth-child(10) i{transition-delay:.48s;}
.ryoken-text.is-show .ryoken-char:nth-child(11) i{transition-delay:.54s;}
@media(max-width:500px){
	.ryoken-text{font-size:11.5vw;line-height:.9;letter-spacing:-.05em;}
}








/* 
Contact form
-------------------------------------------------------------------------------------------------*/
.mw-table input,.mw-table textarea {font-size: calc(14 / 16 *1rem);}
.mwb button, input[type="button"], .mwb input[type="reset"], .mwb input[type="submit"] {background-color:#003d96!important;}
.mwb button:hover, input[type="button"]:hover, .mwb input[type="reset"]:hover, .mwb input[type="submit"]:hover {opacity:0.6!important;}
table.mw-table tr:nth-child(9) input[type=text] ,table.mw-table tr:nth-child(10) input[type=text] {width:100%;}
.mwform-radio-field-text {font-size: calc(16 / 16 *1rem);font-weight: var(--font-bld);}
.mw-table th {vertical-align: top;width: 270px;}
.mw-table input {padding: 0.5rem;}
@media (max-width: 1180px) {
	.mw-table th {width: 250px;}
}
@media (max-width: 640px) {
	.mw-table input,.mw-table textarea {font-size: 14px;}
	.mw-table input.mwtel {width: 70px;}/* html設定時に電話番号のところに任意でクラスを下記のように追加『class="mwtel"』 */
	.mw-table input[type="text"],
	.mw-table input[type="email"],
	.mw-table input[type="tel"],
	.mw-table textarea {padding: 0.5rem;border: 1px solid #ccc!important;}
	.mw-table {border: 1px solid #ccc;width: 100%;max-width: 100%;}
	.mw-table tr {display: block;margin-bottom: 0;}
	.mw-table tr {border-bottom:1px solid #ccc;}
	.mw-table tr:last-child {border: none;}
	.mw-table th, .mw-table td {display: list-item;list-style-type: none;border: none;}
	.mw-table th {width: 100%;vertical-align: middle!important;}
	.mw-table td {border:none!important;}
}
.mwb button,input[type="button"],.mwb input[type="reset"],.mwb input[type="submit"] {position: relative;display: block;width: 225px;height: 48px;margin: 30px auto 0;background-color: #333333;cursor: pointer;border: none !important;color: #fff;text-align: center;text-decoration: none;font-size: calc(16 / 16 *1rem);line-height: 1.5;outline: none;-webkit-transition: all .3s;transition: all .3s;letter-spacing:0.1rem;}
.mwb button:hover,.mwb input[type="button"]:hover,.mwb input[type="reset"]:hover,.mwb input[type="submit"]:hover {background-color: #666;}
.mwb button:active, .mwb button:focus,.mwb input[type="button"]:active,.mwb input[type="button"]:focus,.mwb input[type="reset"]:active,.mwb input[type="reset"]:focus,.mwb input[type="submit"]:active,.mwb input[type="submit"]:focus {border-color: #aaa #bbb #bbb;}
/* 必須テキスト */
.required-srt {margin-left: .5rem;padding: 2px 6px 2px 5px;background: #CC0000;font-size: calc(12 / 16 *1rem);color: #fff;border-radius: 3px;-webkit-border-radius: 3px;-moz-border-radius: 3px;}
/* mw-inq-box */
.mw-inq-box {padding: 0.5em 1em;margin: 2em 0;border: solid 2px #ddd;}
.mw-inq-box p {margin: 0;padding: 2rem;}
.mw-inq-box .consent{font-weight:900!important;color:#CC0000;}
@media (max-width: 690px) {
	.mw-inq-box {height: 100px;overflow-y: scroll;}
	.mw-inq-box p {margin: 0;padding: 1rem;}
	.mwform-radio-field-text {font-size: calc(15 / 16 *1rem);font-weight: var(--font-bld);}
}


