@charset "utf-8";
/* CSS Document */
/*
Theme Name: ORIGINAL
Description: オリジナルテーマ
Version: 1.1
Author: FAM
*/

@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Noto+Serif+JP:wght@200..900&display=swap');


/* ===============================
  ナチュラルオリーブ
================================= */

html[data-theme="olive"]  {
  --color-cv: #3A7D6B;
  --color-btn: #A89F91;
  --color-text: #4A403A;
  --color-sns: #4A403A;
  --color-bg-light: #F4F2EE;
  --color-bg-dark: #E7E1D8;
  --color-mask-rgba:168, 159, 145;
}

/* ===============================
   くすみピンクベージュ
================================= */
html[data-theme="pink"] {
  --color-cv: #B76E79;
  --color-btn: #C9A9A6;
  --color-text: #5A4746;
  --color-sns: #5A4746;
  --color-bg-light: #F7F1F0;
  --color-bg-dark: #EBDDDC;
  --color-mask-rgba:201, 169, 166;
}

/* ===============================
   上品ブルーグレー
================================= */
html[data-theme="blue"] {
  --color-cv: #2F5D62;
  --color-btn: #9AA8A8;
  --color-text: #3E4A4A;
  --color-sns: #3E4A4A;
  --color-bg-light: #F2F5F5;
  --color-bg-dark: #E0E8E8;
  --color-mask-rgba:154, 168, 168;
}

/* ===============================
   ラテベージュ
================================= */
html[data-theme="latte"] {
  --color-cv: #8C6A4A;
  --color-btn: #B8A28D;
  --color-text: #4F433B;
  --color-sns: #4F433B;
  --color-bg-light: #F6F2ED;
  --color-bg-dark: #E9DFD4;
  --color-mask-rgba:184, 162, 141;
}

/* ===============================
   モダングレージュ
================================= */
html[data-theme="greige"] {
  --color-cv: #4C6A6D;
  --color-btn: #9C9B97;
  --color-text: #3F3F3D;
  --color-sns: #3F3F3D;
  --color-bg-light: #F3F3F1;
  --color-bg-dark: #E5E5E2;
  --color-mask-rgba:156, 155, 151;
}


/* ================

/* CLEAR FIX */
.cf:after{content: "."; display: block; height: 0;  clear: both; visibility:hidden;}
.cf{display: inline-table;} 
/* Hides from IE Mac */
* html .cf{height: 1%;}
.cf{display:block;}
/* BOXSIZING */
.boxSizing { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}
/* iOSでのsubmitのスタイルをリセット */
input[type="submit"],input[type="button"] {border-radius: 0;-webkit-box-sizing: content-box;-webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer;}
input[type="submit"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration {display: none;}
input[type="submit"]::focus,input[type="button"]::focus {outline-offset: -2px;}
/* スクロール関係リセット */
html {scroll-behavior: auto;}

/* =======PRUGIN SETTINGS======= */
/* PAGE TOP */
.pagetop {z-index: 999; position: fixed;bottom: 55px;right: 55px;opacity: 0;filter: alpha(opacity=0);-webkit-transform: scale(0.3);-moz-transform: scale(0.3);-ms-transform: scale(0.3);-o-transform: scale(0.3);transform: scale(0.3);-webkit-transition: all .4s;-moz-transition: all .4s;	-o-transition: all .4s;	transition: all .4s;}
.pagetop a {display: block;width: 50px;	height: 50px;background-color: #000;text-align: center;color: #fff;font-size: 1em;text-decoration: none;line-height: 50px; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%;}
.pagetop.show {	opacity: 1;filter: alpha(opacity=100);-webkit-transform: scale(1);-moz-transform: scale(1);-ms-transform: scale(1);-o-transform: scale(1);transform: scale(1);}
#pagetop{content: ""; display: block; height: 111px;  margin-top: -111px; visibility: hidden;}

/* BLOCK LINK */
.box-link{cursor:pointer;}
.box-link,
.box-link::before,
.box-link::after {-webkit-transition: all .3s;transition: all .3s;}
.box-link:hover{background:#EEE;}

/* =======WP PAGENAVI SETTINGS======= */
.wp-pagenavi {clear: both; text-align: center; margin-bottom: 100px;}
.wp-pagenavi a, .wp-pagenavi span {text-decoration: none; display:inline-block;color:#444; background-color:var(--color-bg-dark); padding: 8px 15px; margin:0 1px 2px; white-space: nowrap; border-radius: 50px; -webkit-transition: 0.2s ease-in-out;-moz-transition: 0.2s ease-in-out;-o-transition: 0.2s ease-in-out;transition: 0.2s ease-in-out;}
.wp-pagenavi a:hover, .wp-pagenavi span.current {color:#FFF;background-color:#666;border-color:#666;}
.wp-pagenavi span.current {color: #FFF; background-color: var(--color-btn); border-color: var(--color-btn); font-weight: bold;  border-radius: 50%;}

/* =======TABLE ======= */
/* .table-col1 */
.basic-table { width: 100%; background:#FFF;}
.basic-table td{border: 1px solid #EEE; padding: 16px 20px;}
.basic-table th {width: 20%; border: 1px solid #EEE; padding: 16px 20px; white-space: nowrap; }
.basic-table a {text-decoration: underline;}

.tablepress {width: 100%; background: #FFF;}
.tablepress td {border: 1px solid #CCC; padding: 13px 15px;}

/* =======ACCORDION======= */
.accordion {margin: 0 auto 50px;}
.option {position: relative; border-bottom: solid 1px #ccc;}
.title {padding: 16px 50px 16px 16px; display: block; font-weight: bold; cursor: pointer;  position: relative;}
.title::after {content: "＋"; position: absolute; right: 20px; top: 16px; font-size: 20px; transition: transform 0.3s;}
.option.active .title::after {content: "－";}
.content {display: none; padding: 0 20px 20px;}

/* =======SLIDER======= */
.slick-slide {box-sizing: border-box;}
.slick-slider div { transition: none; }
.slick-dots {bottom: 0!important;z-index: 100;}
.slick-dots li {height: 50px!important;}
.slick-dots li button:before {color: #FFF!important; opacity: 1!important;}
.slick-dots li.slick-active button:before {color: #CCC!important;}

/* ======= BASIC ======= */
html,body { height: 100%; width: 100%; min-width: 1200px; }
body{font-family: "Noto Serif JP", serif; color:var(--color-text); letter-spacing: 0.1em;}
img {max-width: 100%; height: auto;}
a{text-decoration: none; color:var(--color-text); -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all  0.3s ease;}
a:hover{color:#CCC;}
strong{font-weight:bold;}

div.wp-caption {max-width: 100%!important; height: auto;}

img.arrow {width: 20px; height: 20px;}

/* OTHER-STYLING */
.big{font-size:1.4em;}
.small{font-size:0.6em;}
.bg-brack{display:inline-block; background:#000; padding:10px 15px; font-size:0.8em; color:#FFF; margin-right:10px; vertical-align: super; margin:10px 0;}
.bgGlay {background: #EEE; padding: 30px;}.bgGlay p{margin:0;}
.bgBlue {background: #E0F1F4; padding: 30px; margin-bottom: 50px;}

.arrow-down{ margin-bottom: 30px; font-size: 3em;}
.mb0{margin-bottom:0 !important;}
.mb10{margin-bottom:10px;}
.mb30{margin-bottom:30px;}
.mb50{margin-bottom:50px;}
.pc{display:block!important;}
.sp {display: none!important;}
.menu-sp{display:none;}
.text-left{text-align:left;}
.text-right{text-align:right;}
.text-center{text-align:center;}
.strong{font-weight:bold;}
.wsnw{white-space: nowrap;}

.jump{margin-top:-100px; padding-top:100px;}
.jump2 {margin-top: -180px; padding-top: 180px;}
.name {font-weight: bold; display: block; text-align: left; margin-top: 17px;}

.youtube {position: relative; width: 100%; padding-top: 56.25%;}
.youtube iframe {position: absolute; top: 0; right: 0; width: 100%; height: 100%;}

/* ======= HEADER ======= */
header{width:100%; z-index: 9999; position: fixed; top: 0; background: rgba(255,255,255,0.9); border-bottom: 1px solid #EEE; letter-spacing: normal;}
header h1 img {height: 40px;}

/* global nav */
#gnav {padding: 0 100px 0 3%; height: 100px;}
#gnav h1 {position: absolute; top: 30px;}
.headBox {display: flex; justify-content: flex-end; flex-direction: row; height: 100px;}

.nav01{display: flex;}
ul.snsBtn{display: flex; align-items: center; margin-right: 10px;}
ul.snsBtn li{margin:0 5px;}
ul.snsBtn img {width: 24px;}

ul.recBtn{display: flex; align-items: center;}
ul.recBtn li{margin:0 5px;}
ul.recBtn li:first-child a{display:block; background:var(--color-btn);}
ul.recBtn li:last-child a{display:block; background:var(--color-cv);}
ul.recBtn a {color: #FFF; width: 150px; text-align: center; padding: 8px; border-radius: 50px;}

/*ハンバーガーメニュー*/
.nav-button-box {position: absolute; top: 0; right: 0; display: flex; text-align: center; width: 100px; height: 100px; z-index: 50; color: #FFF; flex-direction: column; align-content: center; justify-content: center; align-items: center;}
.nav-button {display: block; cursor: pointer; }
/*ハンバーガーメニューのエフェクト*/
.nav-button span { display: inline-block; transition: all 0.4s; box-sizing: border-box;}
.nav-button { z-index: 20; position: relative; width: 40px; height: 36px;}
.nav-button span {position: absolute; left: 0; width: 100%; height: 1px; background-color: #333; border-radius: 4px;}
.nav-button span:nth-of-type(1) {top: 0;}
.nav-button span:nth-of-type(2) {top: 16px;}
.nav-button span:nth-of-type(3) {bottom: 0;}
.nav-button.active span:nth-of-type(1) {-webkit-transform: translateY(16px) rotate(-45deg);transform: translateY(16px) rotate(-45deg);}
.nav-button.active span:nth-of-type(2) {opacity: 0;}
.nav-button.active span:nth-of-type(3) {-webkit-transform: translateY(-18px) rotate(45deg);transform: translateY(-18px) rotate(45deg);}

/* 展開後 */
.nav-wrap {display:none; width: 100%; height: 100%; padding: 0; box-sizing: border-box; z-index: 10; }
.navBox {width: 100%; height: 100vh; background: #FFF; box-sizing: border-box; position: fixed; top: 0; right: 0; text-align: center; padding: 100px 0 0 0;}
.navBox ul li {font-size: 24px; margin-bottom: 26px;}

/* ======= FOOTER ======= */
footer {width: 100%; padding: 100px 0 0 0; text-align: center;}
footer h1 img {width: 250px; margin-bottom: 50px;}
.footbox01 {margin-bottom: 50px;}
.footbox01 p {margin-bottom: 50px;}
.footbox01 ul.snsBtn {display: flex; align-items: center; margin-right: 10px; justify-content: center;}

.footbox02 {margin: 0 auto; padding: 20px 0; border-top: 1px solid #CCC;}
.footbox02 ul {display: flex; justify-content: center;}
.footbox02 ul li a {letter-spacing: normal; margin: 0 10px;}
p.copyRights {font-size: 12px; text-align: center; padding: 30px 0; background: var(--color-bg-dark); letter-spacing: normal;}

.footFixed {background: var(--color-bg-dark); text-align: center; padding: 100px 0;}
.footFixed h3 {border: none; margin-bottom: 50px; letter-spacing: 0.2em;}

/*  ======= TOP =======  */
section.wrapCont {width: 90%; max-width: 1400px; min-width: 1200px; margin: 0 auto; position: relative; z-index: 1;}
#container.toppage {z-index: 1; position: relative; padding: 0 0 100px 0; background: var(--color-bg-light);}

.toppage p {text-align: justify;}
.toppage h3 {position: relative; font-size: 37px; margin-bottom: 32px; border: none;}
.toppage h3 span{ font-family: "Libre Baskerville", serif; display:block; font-size: 16px; margin-top: 10px;}

h2 {font-family: "Libre Baskerville", serif; position: relative; font-size: 104px; margin-bottom: 30px;}
h2 span{font-family: "Noto Serif JP", serif;font-size: 26px;}

h3 {position: relative; font-size: 36px; margin-bottom: 32px; border-bottom:1px solid #534741;}
h4 {font-size: 36px; margin-bottom: 32px;}
h5 {font-size: 1.4em; margin-bottom: 16px;}
h6 {font-weight: bold;}

/* TEASER */
#teaser {margin: 100px auto 2%; position: relative; width: 96%; height: 600px; }
.teaserInr {background:url(img/top/tesaer.jpg) no-repeat; background-size:cover; position: relative; width: 100%; height: 100%; text-align: center; box-sizing: border-box; padding-top: 190px;}
.teaserInr h2 {font-family: "Noto Serif JP", serif; font-size: 38px;  }
.teaserInr p {font-size: 18px; text-align: center; }

/* STAGE01 */
#stage01 {position: relative; text-align: center;}
#stage01 h3 {position: absolute; z-index: 100; color: #FFF; height: 80px; top: 0; bottom: 0; left: 0; right: 0; margin: auto;}
.mask {width: 100%; background: rgba(var(--color-mask-rgba), 0.4); height: 100%; z-index: 10; position: absolute; left: 0; top: 0;}

ul.slider li{height: 600px;}
ul.slider li img{width: 100%; height: 100%; object-fit: cover; }

.linkBar{position: absolute;z-index: 100;bottom: 5%;right: 3%; display: flex; align-items: center;}
.linkBar a {display: flex; align-items: center;}
.linkBar p {color: #FFF; letter-spacing: normal; font-size: 11px; margin: 0 10px 0 0 !important;}

.progBar{width:200px; height:1px; background-color:#ececec; position:relative; overflow: hidden;}
.progBar .bar {position: absolute; left: 0; top: 0; height: 100%; width: 0; background-color: var(--color-btn); animation: progress 2s ease-in 1s infinite alternate forwards;}
@keyframes progress {
    0% {width: 0}
    100% {width: 100%}
}

/* STAGE02 */
#stage02 {padding:100px 0; text-align: center; position: relative;}
#stage02 h3 {margin-bottom: 100px;}
#stage02 a {width: 90%; display: block; margin: 0 auto; position: relative;}
#stage02 a img {border-radius: 15px;}

/* STAGE03 */
#stage03 {padding:100px 0; text-align: center; position: relative; background: var(--color-bg-dark);}
#stage03 h3 {margin-bottom: 100px;}
#stage03 ul.col3 {display: flex; justify-content: center;}
#stage03 ul li {display: flex; justify-content: center;}
#stage03 ul li a {display: flex; background: #FFF; width: 330px; height: 330px; border-radius: 50%; box-shadow: 0px 0px 6px 0px #c0bdbd; align-items: center; justify-content: center; flex-direction: column;}
#stage03 ul li a:hover {background: #EEE; color: #333;}
#stage03 ul li img {margin-bottom: 25px; height: 100px;}
#stage03 ul li p {text-align: center; font-size: 20px;}
#stage03 ul li p span {display: block; font-size: 11px; margin-top: 10px;}

/* STAGE04 */
#stage04 {padding:100px 0 0; text-align: center; position: relative; }
#stage04 h3 {margin-bottom: 100px;}
#stage04 ul {margin-bottom: 100px;}
#stage04 ul li {padding: 0 10px;}
.postBoxtext {text-align: left;}
.postBoxtext p.cat {background: #FFF; display: inline-block; border: 1px solid var(--color-cv); color:var(--color-cv); padding: 10px 20px; border-radius: 50px; margin: 20px 0;}
.postBoxtext h3 {font-size: 18px; margin: 0!important;}
.postBoxtext p.date {font-size: 14px;}

/* ======= PAGES ======= */
#container.page {width: 100%; padding: 0 0 100px 0; background: var(--color-bg-light);}
.page section.wrapCont {width: 1100px; max-width: 1400px; min-width: 1100px; margin: 0 auto; position: relative; z-index: 1;}

#container.post {margin: 50px 0 100px;}

.page h3 {border-bottom: solid 1px var(--color-btn); position: relative; font-size: 28px; padding: 16px 0; margin-bottom: 32px;}
.page h4 {position: relative; font-size: 28px; margin-bottom: 16px; border-left: 4px solid var(--color-btn); padding-left: 26px;}
.page h5 {font-size: 22px; margin-bottom: 16px; background: var(--color-bg-dark); padding: 10px 20px;}
.page h6 {font-weight: bold;}

.page-title {padding: 100px 5%; margin: 100px auto 0; background: var(--color-bg-light);}
.page-title h2 {font-size: 80px; display: flex; align-items: center; margin: 0;}
.page-title h2 span {font-size: 20px; margin-left: 30px;}

ul.boxList li {font-size: 1.1em; font-weight: bold; border-bottom: 1px solid #CCC; padding-bottom: 10px; margin-bottom: 10px;}
ul.boxList li span {font-size: 0.9em; font-weight: normal; display: block;}
ul.boxList li:last-child{border-bottom: none; padding-bottom: 0; margin-bottom: 0;}

ul.boxNumberList { margin-bottom: 0;}
ul.boxNumberList li {border: 1px solid #CCC; box-sizing: border-box; margin-bottom: 20px; padding: 20px; display: flex; align-items: center;}
ul.boxNumberList li span {width: 50px; height: 50px; background: #22b597; display: flex; justify-content: center; align-items: center; color: #FFF; font-weight: bold; margin-right: 20px; flex-shrink: 0;}
ul.boxNumberList li h5 {width: 200px; margin: 0; flex-shrink: 0; }
ul.boxNumberList li p {flex: 1; margin: 0; word-break: break-word;}

.breadCrumb {font-size: 12px; letter-spacing: normal; padding: 0 10px;}

.basebox {margin-bottom: 50px; }
.basebox p{margin-bottom: 30px; text-align: justify;}
.basebox p:last-child {margin: 0;}
.basebox p span {color: var(--color-cv);}
.basebox ul{margin-bottom: 50px;}
.basebox ul:last-child {margin: 0;}
.basebox table{margin-bottom: 30px;}
.basebox table:last-child {margin: 0;}

.bgGlay ul:last-child {margin: 0;}
.basebox .bgGlay h5 {margin-bottom:5px;}
.basebox .bgGlay p {margin-bottom:5px;}
.basebox .bgGlay p span {font-weight: normal; color:#333; }

ul.col2{display: flex; justify-content: space-between;flex-wrap: wrap;}
ul.col2 li{width:48%;}
ul.col2:after {content: ""; display: block; width: 32%; height: 0;}
ul.col2 img{width:100%;}
ul.col2.reverse {display: flex; flex-direction: row-reverse;}
ul.col3{display: flex; justify-content: space-between;flex-wrap: wrap;}
ul.col3 li{width:32%;}
ul.col3:after {content: ""; display: block; width: 32%; height: 0;}
ul.col3 img{width:100%;}
ul.col4{display: flex; flex-wrap: wrap; justify-content: space-between;}
ul.col4 li{width:23%; margin:0 0 30px 0;}
ul.col4:after {content: ""; display: block; width: 23%; height: 0;}
ul.col4:before {content: ""; display: block; width: 23%; order: 1;}
ul.col5 {display: flex; justify-content: space-between; letter-spacing: normal;}
ul.col5 li {width: 18%;}
ul.col6 li {width: 15%;}
ul.col6 {display: flex; justify-content: space-between;}

a.newsBtn {background: #7ac992; font-weight: bold; position: absolute; right: 0; top: 0; color: #FFF; padding: 10px 20px; border-radius: 50px; font-size: 0.9em;letter-spacing: normal;}
a.newsBtn:hover{background: #EEE; color:#CCC;}

a.grnBtn {position: relative; width: 500px; display: block; margin: 0 auto; background: var(--color-cv); text-align: center; font-weight: bold; color: #FFF; padding: 20px 0; border-radius: 50px;letter-spacing: normal;}
a.grnBtn:hover{background: #CCC; color:#FFF;}
a.grnBtn i {position: absolute; right: 18px;}

.pageTeser {position: relative; margin-bottom: 50px;}
.pageTeser img {width: 100%;}
.pageTeser ul {position: relative;}
.pageTeser ul li:first-child {width: 70%;position: relative; z-index: 110;}
.pageTeser ul li:last-child {position: absolute; right: 0; top: 0; bottom: 0; margin: auto; width: 40%; height: max-content; background: #FFF; padding: 50px; box-sizing: border-box; z-index: 150;}
.pageTeser .mask {width: 40%; right: 60px; left: auto; top: -25px; height: 110%; background: var(--color-bg-dark);}
.pageTeser h4 {border: none; padding: 0;}
.pageTeser h4 span {display: block; font-size: 12px; color: var(--color-cv);}

ul.whiteBox li p {text-align: center; padding: 20px;}
ul.whiteBox li {text-align: center; background: #FFF; box-shadow: 2px 2px 5px #CCC;}

.bnrBox {position: relative;}
.bnrBox img {border-radius: 16px;}

.nav ul {display: flex; flex-direction: row; flex-wrap: wrap;}
.nav ul a {background: #FFF; display: block; padding: 20px 0; width: 24%; margin-right: 1%; text-align: center; border-radius: 50px; margin-bottom: 10px;}
.nav ul a:hover {background: var(--color-btn); color: #FFF;}


/**** JOB ****/
h3.ribbon {font-weight: 700; width: 100%; border-bottom: none; display: flex; position: relative; height: 80px; line-height: 80px; padding: 0 40px 0 40px; background: var(--color-bg-dark); box-sizing: border-box; align-items: center;}
h3.ribbon span { font-size: 14px;  margin-left: 30px;}
.ribbon:after {position: absolute; content: ''; width: 0px; height: 0px; z-index: 1;}
.ribbon:after {top: 0; right: 0; border-width: 40px 30px 40px 0px; border-color: transparent var(--color-bg-dark) transparent transparent; border-style: solid;}

ul.col3.job li {margin-bottom: 50px;}
ul.col3.job p {margin-top: 20px;}
ul.col3.job p span.cat {border: 1px solid var(--color-cv); background: #FFF; color: var(--color-cv); padding: 5px 20px; border-radius: 50px; display: inline-block; margin-right: 16px;}

/**** STORES ****/
.storesBox {background: #FFF; padding: 30px; box-sizing:border-box;}
.storesBox p {margin-bottom: 5px;}
.storesBox a img {width: 20px; height: auto;}
a.storesArea.grnBtn {width: 100%; margin: 0 0 50px 0; border-radius: 0;}

/**** CONTACT ****/
.contact.basebox {margin-bottom: 0;}
span.wpcf7-list-item-label {color: #333!important;}
input.wpcf7-form-control.wpcf7-submit.has-spinner {width: 500px; display: block; margin: 0 auto; padding: 15px 0; background: var(--color-cv); border-radius: 50px; color: #FFF;}
.wpcf7-form table th p span {background: var(--color-cv); color: #FFF; font-size: 11px; padding: 3px 10px; margin-right: 10px; border-radius: 3px;}
.wpcf7-form table input,
.wpcf7-form table textarea,
.wpcf7-form table select{width: 100%; border: 1px solid #EEE; background: #F5F5F5; padding: 10px; box-sizing: border-box; border-radius: 5px;}
.wpcf7-form table input[type="checkbox"] {width: auto;}
.wpcf7-form table input[type="radio"] {width: auto;}
.wpcf7-form table th > span {
  background: var(--color-cv);
  color: #FFF;
  font-size: 11px;
  padding: 3px 10px;
  margin-right: 10px;
  border-radius: 3px;
  display: inline-block;
}
/* ======= CATEGORY ======= */
section.blog .wp-pagenavi{margin-bottom: 0;}
#rec h3.catTitle {font-size: 16px;}


/* ======= SINGLE PAGE ======= */
#container.singlepage {width: 100%; padding: 0 0 100px 0; background: var(--color-bg-light);}
.singlepage section.wrapCont {width: 1100px; max-width: 1400px; min-width: 1100px; margin: 0 auto; position: relative; z-index: 1;}

.single-postbox {border-bottom: 1px solid var(--color-btn); margin-bottom: 50px;}
.single-postbox h3 {border-bottom: solid 1px var(--color-btn); position: relative; font-size: 28px; padding: 16px 0; margin-bottom: 32px;}
.singlepage .pageTeser h4 {margin: 0; font-size: 28px;}


.cat_paging {width: 100%; position: relative; overflow: hidden; text-align: center;}
.cat_paging p {margin-bottom: 20px;}
.cat_paging a {border: 1px solid #EEE; display: block; padding: 15px 0; border-radius: 5px;  font-family: nNoto sans-serif;  font-size: 0.9em;}
.cat-back {border-top: 2px solid #c69c6d;  padding: 50px 0;}

.alignLeft {float: right; width: 30%;}
.alignCenter {position: absolute; width: 30%; left: 35%;}
.alignRight {float: left; width: 30%;}

.simple-paging { display: flex; justify-content: space-between; align-items: center; margin: 20px 0 100px; margin-left: auto; margin-right: auto;}
.simple-paging a { text-align: center; background: #FFF; padding: 15px 50px; border-radius: 50px; text-decoration: none; transition: 0.3s; }
.simple-paging a:hover { background: #534741; color: #fff; }
.simple-paging .center { flex: 1; text-align: center; }

/* 投稿エリアの設定 */
#editor-area a{color:#c69c6d;}
#editor-area a:hover{background:#EEEEEE;}
#editor-area a.blackBtn {color: #FFF!important;}
#editor-area img{max-width: 100%; height:auto; display:block;}
#editor-area h4 {position: relative; font-size: 28px; margin-bottom: 20px; border-left: 4px solid var(--color-btn); padding-left: 26px;}
#editor-area h5 {font-size: 22px; margin-bottom: 20px; background: var(--color-bg-dark); padding: 10px 20px;}
#editor-area h6 {font-weight: bold; margin-bottom: 20px;}
#editor-area p{margin-bottom:30px; line-height: 1.8em; }
#editor-area strong{font-weight:bold;}
#editor-area ul{margin: 30px 0 30px 5px;}
#editor-area ul li{margin: 2px 0 2px 15px;  list-style: disc;}
#editor-area table{ width: 100%; border-collapse: collapse; margin-bottom:30px;}
#editor-area table th {background-color: #F5F5F5; border: 1px solid #CCC; padding: 20px; box-sizing: border-box;}
#editor-area table td {border: 1px solid #CCC; padding: 20px; box-sizing: border-box;}
#editor-area blockquote{padding: 20px; margin-bottom:30px; background:#FFF;}
#editor-area blockquote p{margin:0px !important;}
#editor-area div.borderbox{border:1px dotted #CCC; padding: 20px; margin-bottom:30px;}
#editor-area div.borderbox p{margin:0px !important;}
#editor-area div.borderbox ul{margin:0px !important;}

#editor-area iframe::before { content: "<div>";}
#editor-area iframe::after { content: "</div>";}


@media screen and (max-width: 1279px) {
 /*　================================ for ipad ================================　*/

}

@media screen and (max-width: 768px) {
 /*　================================ for iphone ================================　*/

/* HEAD */
html,body { height: 100%; width: 100%; min-width: 100%; font-size: 14px;}
section.w1080 {width:90%; margin: 0 auto;}
.pagetop{bottom:10px; right:10px; z-index: 2;}
section.wrapCont {width: 90%; min-width: auto;}	

.sp{display:block!important;;}
.pc{display:none!important;}
.mb50 {margin-bottom: 20px;}
.mt50 {margin-top: 50px;}
.button {padding: .9em 30%;}
.jump{margin-top:-142px; padding-top:142px;}

/* header */
header { padding-bottom: 0;}
header h1 {padding: 0 0 0 20px;}
header h1 img {height: 30px; margin: 0;}
.nav-button {width: 43px; height: 30px; margin: 0 auto;}
.nav-button-box {width: 75px; height: 75px; z-index: 9999;}
.nav-button span:nth-of-type(2) {top: 13px;}
.nav-button.active span:nth-of-type(1) {-webkit-transform: translateY(16px) rotate(-30deg); transform: translateY(16px) rotate(-30deg);}
.nav-button.active span:nth-of-type(3) {-webkit-transform: translateY(-13px) rotate(30deg); transform: translateY(-13px) rotate(30deg);}
.navBox {width: 100%; height: 100vh;  background-color: rgba(255,255,255,0.9); padding: 100px 0 0; display: block; position: fixed; top:0; right: 0;}
.nav-wrap {position: fixed;}
#gnav {padding: 0; height: 75px;}
#gnav h1 {top: 24px;}
ul.snsBtn {display: none;}
ul.recBtn {width: 100%; position: fixed; display: flex; align-items: center; bottom: 0; left: 0;}
ul.recBtn li {width: 50%; margin: 0;}
ul.recBtn a {width: 100%; box-sizing: border-box; text-align: center; padding: 20px 0; border-radius: 0;}

/* footer */
footer {padding: 60px 0 60px;}
.footbox01 {width: 100%;padding: 0 5%; box-sizing: border-box;}
ul.snsBtn li {margin: 0px 10px;}
ul.snsBtn img {width: 34px;}

.footbox02 {width: 100%; padding: 0;}
.footbox02 ul {border-top: none; border-bottom: none; padding: 0; display: flex; justify-content: center; flex-direction: column;}
.footbox02 ul:first-child li a {display: block;padding: 20px 5%; border-bottom: 1px solid #CCC; margin: 0;}
.footbox02 ul:last-child {border: none; }
p.copyRights {padding: 20px;}

/* 共通 */
#container.toppage {padding: 0 0 60px 0;
}
.basebox {margin-bottom: 50px;}

a.grnBtn {width: 90%; position: relative;}
a.grnBtn span {display: block;}

.toppage h3 {font-size: 30px;}

/* TEASER */
#teaser {margin-top: 75px;}
.teaserInr {background:url(img/top/tesaer-sp.jpg) no-repeat; background-size:cover;}

.teaserInr h2 {font-size: 30px; text-align: center;}
.teaserInr p {font-size: 16px; text-align: center;}

/* STAGE01 */
#stage01 {}
.slick-dots {bottom: 35px!important;}
.linkBar {right: 5%;}

/* STAGE02 */
#stage02 {padding: 30px 0 60px;}
#stage02 h3 {margin-bottom: 60px;}

/* STAGE03 */
#stage03 {padding: 60px 0;}
#stage03 h3 {margin-bottom: 60px;}
#stage03 ul li a {display: flex; width: 100%; height: 170px; padding: 0 10%; box-sizing: border-box; border-radius: 10px; flex-direction: row; align-items: center; justify-content: flex-start;}
#stage03 ul li img {width: 100px; height: 80px; margin-bottom: 0;}
#stage03 ul li p {text-align: left; margin-left: 30px;}

/* STAGE04 */
#stage04 {padding: 60px 0 0;}
#stage04 h3 {margin-bottom: 60px;}
#stage04 .postBoxtext h3 {font-size: 18px; margin: 0!important;}
#stage04 ul { margin-bottom: 60px;}

/* =====PAGE===== */
#container.page {width: 100%;margin-bottom: 0; box-sizing: border-box; padding: 0 0 60px 0;}
.page section.wrapCont {width: 100%; padding: 0 5%; box-sizing: border-box; max-width: 100%; min-width: auto;}
#container.singlepage {width: 100%;margin-bottom: 0; box-sizing: border-box; padding: 30px 0 20px;}
.singlepage section.wrapCont {width: 100%; padding: 0 5%; box-sizing: border-box; max-width: 100%; min-width: auto;}

.page-title {display: flex; min-height: auto; margin: 75px auto 0; padding: 60px 0; align-items: center; justify-content: center;}
.page-title h2 {font-size: 40px; padding: 0; display: flex; flex-direction: column; align-items: center; align-content: center;}
.page-title h2 span {font-size: 12px; margin: 0;}

.footFixed {padding: 60px 0;}
.footFixed h3 {font-size: 20px; border: none; margin-bottom: 30px; letter-spacing: normal;}

.page h3 {font-size: 18px; margin-bottom: 15px;}
.page h4 {font-size: 18px; font-feature-settings: "palt"; padding-left: 10px;}
.page h5 {font-size: 16px; font-feature-settings: "palt";}

.basebox p {margin-bottom: 20px;}
.basebox ul {margin-bottom: 20px;}
.basebox ul li:last-child {margin: 0;}

ul.col2 {flex-direction: column; }
ul.col2 li{width:100%; margin-bottom: 20px;}
ul.col2:last-child {margin-bottom: 0;}
ul.col2.reverse {display: flex; flex-direction: column;}
ul.col3 {flex-direction: column;}
ul.col3 li{width:100%; margin-bottom: 20px;}
ul.col3:last-child {margin-bottom: 0;}
ul.col6 {justify-content: space-between; flex-direction: row; flex-wrap: wrap;}
ul.col6 li {width: 48%; margin-bottom: 20px;}

.basic-table {margin-bottom: 30px;}

.footBox01 {margin-bottom: 30px; padding: 30px 5%;}
.footBox01 h5 {padding-bottom: 20px; margin-bottom: 20px;}
.footBox01 p {font-size: 16px; margin-bottom: 20px;}
.footBox01 p span {font-size: 11px;}

img.arrow {width: 12px; height:12px;}
.pageNavi ul li a {padding: 8px 20px 8px 20px;}
.pageNavi ul li a img {right: 10px;}

.pageTeser {padding-top: 10px;}
.pageTeser ul li:first-child {width: 96%; }
.pageTeser ul li:last-child {position: relative; right: -15px; top: unset; bottom: 20px; margin: 0; width: 96%; height: max-content; background: #FFF; padding: 26px 30px; box-sizing: border-box; z-index: 150;}
.pageTeser .mask {width: 66%; right: -10px; left: auto; top: -20px; height: 105%;}

/* JOB */
.nav ul a {width: 48%; margin: 0 1% 10px;}

ul.col3.job li {margin-bottom: 30px;}
ul.col3.job li a {width: 100%; display: flex;}
ul.col3.job li a img {width: 35%;}
ul.col3.job li a p {margin-left: 15px; margin-top: 0;}
ul.col3.job li a p span.cat {display: block; margin-bottom: 6px; margin-right: 0;}

/* シングルページ */
.footBox02{padding: 30px;}
.footBox02 p {font-size: 19px; letter-spacing: normal;}

/* CONTACT */
.wpcf7 table {border: 1px solid #CCC; border-bottom: none;}
.wpcf7 th {width: 100%; display: block; box-sizing: border-box; border: none; border-bottom: 1px solid #CCC;}
.wpcf7 td {display: block; border: none; border-bottom: 1px solid #CCC;}


input.wpcf7-form-control.wpcf7-submit.has-spinner {width: 90%;}

.wp-pagenavi {margin-top: 0; margin-bottom: 50px;}

/* =======CATEGORY======= */
.simple-paging a {padding: 15px 25px; font-size: 12px; letter-spacing: normal;}
.simple-paging {margin: 20px 0 60px;}
/* =======POST AREA======= */
.cat-postbox h3 span {display: block; font-size: 0.8em; margin-bottom: 10px;}
.cat-postbox { padding: 10px 0;}
.cat-postbox li { padding: 20px 0; font-size: 0.9em;}
.cat-nav li {margin: 5px 5px; font-size: 0.8em;}

.single-postbox {padding: 0;  margin-bottom: 30px;}
.single-postbox h3 { font-size: 1.2em; margin-bottom: 30px;}
.single-postbox h3 span {margin: 0 10px 0 0;}

.cat_paging a {font-size: 12px; letter-spacing: normal;}
.cat-back {padding: 20px 0; margin-top: 30px;}

.tag-title {margin-bottom: 30px;}
.tag-title h3 {margin-top: 30px; margin-bottom: 30px; font-size: 1.5em;}

/* =======EDITOR AREA======= */
#editor-area p {font-size: 0.9em;}
#editor-area h4 {font-size: 1.1em !important; margin-bottom: 25px !important; }
#editor-area h5 {font-size: 1em; margin-bottom: 10px;}
#editor-area.saiyo table {border-bottom: 1px solid #CCC;}
#editor-area.saiyo table th {display: block; width: 100%!important; border-bottom: none;}
#editor-area.saiyo table td {display: block; width: 100% !important; box-sizing: border-box; border-bottom: none;}
#editor-area ul li{font-size:16px;}

#editor-area .tablepress {font-size: 0.9em; border: 1px solid #CCC; border-bottom: none;}
#editor-area table.tablepress td {padding: 5px 15px; white-space: normal; display: block; border: none;  border-bottom: 1px solid #CCC;}
#editor-area .tablepress td.column-1 {background: #EEE; }

}

@media (orientation: landscape) and (max-height: 450px) {
 /*　================================ for 横向き ================================　*/

}
