@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
/**************************************
管理画面・編集UI　（原田）
*************************************/
.edit-link {
    position: relative;
    
}
.edit-link a {
    position: absolute;
    min-width: 90px;
    background: red;
    padding: 5px;
    text-align: center;
    color: #fff;
    border-radius: 10px;
    z-index: 1;
    transition:.1s
}
.edit-link a:hover{
    background: darkred;
}

/* .item {
    position: relative;
}
.item::after {
  transition:.3s;
}
.item:hover::after {
    content: '';
    display: block;
    top: -10px;
    left: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    outline: dashed 2px red;
    opacity: 0.2;
    z-index: 800;
    position: absolute;
    pointer-events: none;
} */


:root {
    --boxshadow:0px 5px 30px 0px rgba(0, 0, 0, 0.1);
    --round:32px;
    --maincolor:#473a29;
    --midori:#6eb92b;
    --ao:#44bbec;
    --momo:#fde9ef;
    --body-text-color:#473a29;
    --t4-heading-color:#473a29;
    --color-secondary:#473a29;
}

body {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans JP", sans-serif;
	color: #473a29;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	background: #FFF;
	scroll-behavior: smooth;
	position: relative;
	height: 100%;
	font-weight: 500;
	line-height: 2;
}
a {
	color:var(--body-text-color);
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:hover img {
	opacity: 0.8;
 -webk it-opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
	/* IE lt 8 */
	-ms-filter: “alpha(opacity=80)”;/* IE 8 */
}
a img {
	-webkit-transition: opacity 0.2s ease-out;
	-moz-transition: opacity 0.2s ease-out;
	-ms-transition: opacity 0.2s ease-out;
	transition: opacity 0.2s ease-out;
}
h2, h3, h4, h5 {
	font-weight: 700!important;
	font-family: "Noto Sans JP", sans-serif!important;
}

.page-header h1 {
  font-size: var(--h1-font-size);
}


.items-row .item p,
.items-row .item li,
.items-row .item td{
  opacity: 0.9;
  letter-spacing:0.07em;
}
.items-row .item p {
    margin-top: 0;
    margin-bottom: 0;
    line-height: 2.2;
}
.items-row .item p+p {
    margin-top: 1em;
}

/*ニュースフラッシュ　whole-link*/
.whole-link{
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
}
.whole-link:hover{
background-color: #fff;
opacity: 0.4;
}
.mod-articlesnews-horizontal.newsflash-horiz.mod-list li {
  position: relative;
}
.newsflash-item {
  position: relative;
}

/**************************************
見出し
*************************************/
.heading01 {
	text-align: center;
	position: relative;
	padding: 0;
	margin: 0 0 80px 0;
	font-size: 2.8rem !important;
	color: var(--body-text-color);
}
.heading02 {
	position: relative;
	padding: 0;
	margin: 15px 0 5px;
	color: var(--body-text-color);
	font-size: 1.2rem !important;
	line-height: 1.6em;
}
.heading02 i {
    color:var(--ao);
    margin-right:8px;
}
.heading03 {
	position: relative;
	padding: 0 0 0 70px;
	margin: 0 0 50px;
	color: var(--body-text-color);
	font-size: 1.75rem!important;
    line-height:1.5;
}
.heading03::before {
	content: "";
	display: inline-block;
	width: 50px;
	height: 6px;
	top: .7em;
    border-radius:6px;
    /*transform:translateY(-50%);*/
	position: absolute;
	background-color: var(--ao);
	left: 0;
}
.heading04 {
	color: var(--body-text-color);
	font-size: 1.5rem;
	margin: 20px 0;
	padding: 0 0 25px;
	position: relative;
    text-align:center;
    line-height:1.8;
}
.heading04:after {
	content: "";
	display: inline-block;
	width: 50px;
	height: 5px;
	background-color:var(--ao);
	position: absolute;
	left:0;
    right:0;
	bottom: 0;
    margin-inline:auto;
}

.heading05 {
	position: relative;
	font-size: 1.8rem !important;
	padding: 0 0 20px 0;
	margin: 0 0 20px 0;
	color: var(--body-text-color);
}
.heading05:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
	content: '';
	background-image: -webkit-repeating-linear-gradient(135deg, #2E363D, #2E363D 1px, transparent 2px, transparent 5px);
	background-image: repeating-linear-gradient(-45deg, #2E363D, #2E363D 1px, transparent 2px, transparent 5px);
	background-size: 7px 7px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.heading06 {
    /*color:var(--ao);*/
    margin: 50px 0 20px;
    position:relative;
    padding-left:55px;
}
.heading06:before {
    content: "";
    background: url(../../../../images/top/illust-news2.png) no-repeat center / contain;
    width: 45px;
    height: 50px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: -.3em;
}


.p14 {
	font-size: 14px;
	line-height: 1.8em;
	margin: 0;
}
.p18 {
	font-size: 18px;
	line-height: 2.4em;
	margin: 0;
}
.p20 {
	font-size: 20px;
	line-height: 2.6em;
	margin: 0;
}

/*上部余白*/
.top10 {
	margin-top: 10px !important;
}
.top20 {
	margin-top: 20px !important;
}
.top30 {
	margin-top: 30px !important;
}
.top40 {
	margin-top: 40px !important;
}
.top50 {
	margin-top: 50px !important;
}
.top60 {
	margin-top: 60px !important;
}
.top70 {
	margin-top: 70px !important;
}
.top80 {
	margin-top: 80px !important;
}
.top90 {
	margin-top: 90px !important;
}
.top100 {
	margin-top: 100px !important;
}
.top110 {
	margin-top: 110px !important;
}
.top120 {
	margin-top: 120px !important;
}
.btm0 {
	margin-bottom: 0 !important;
}
.btm180 {
    margin-bottom:180px!important;
}


/*system-readmore「続きを読む」*/
#tinymce hr#system-readmore {
  background-color: #f473ab;
  border: medium none;
  height: 22px;
  text-align: center;
}
#tinymce hr#system-readmore::before {
  color: #fff;
  content: "▼続きを読む▼";
}

.inner {
	width: 1170px;
	margin: 0 auto;
}
.header-wrap {
	position: relative;
	background-color: var(--momo);
	/*position: fixed;*/
	width: 100%;
	z-index: 99;
	/*left: 0;*/
	/*top: 40px;*/
	padding: 10px 0;
	/*border-bottom: 1px solid #ddd;*/
}
.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container, .t4-masthead .t4-masthead-detail {
	width: 100%;
	max-width: 100%;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
}
.container {
	width: 100%;
	max-width: 100%;
	padding: 0 10%;
	box-sizing: border-box;
	overflow: hidden;
}

.navbar-brand.logo-control img.logo-img {
	max-height: 55px!important;
}
.head-contact {
	/*position: fixed;*/
	/*left: 0;*/
	/*top: 0;*/
	z-index: 99;
	width: 100%;
	background-color: rgba(55,65,73,0.9);
	text-align: right;
}
.head-contact ul {
	padding: 3px 10px 5px 0;
	margin: 0;
	letter-spacing: -0.4em;
}
.head-contact ul li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0 0 0 20px;
	font-size: 0.9em;
	color: #fff;
	font-weight: 500;
	position: relative;
}
.head-contact ul li span {
	border-left: 1px solid #ddd;
	margin-left: 10px;
	padding-left: 28px;
	position: relative;
}
.head-contact ul li span::before {
	content: "";
	display: inline-flex;
	width: 13px;
	height: 20px;
	background-image: url("../../../../images/icon/icon_tel.png");
	background-repeat: no-repeat;
	background-origin: left top;
	background-size: contain;
	position: absolute;
	left: 10px;
	top: 5px;
}
.t4-megamenu .nav>.dropdown>.nav-link .item-caret, .t4-megamenu .nav>.dropdown>.dropdown-toggle .item-caret {
	/* border-top: 4px solid #E80000; */
}
.t4-megamenu .navbar-nav>li>a, .t4-megamenu .navbar-nav>li>.nav-link {
	font-weight: 500;
	color: #222;
	font-size: 1rem;
}
.t4-megamenu .navbar-nav > li.active > a, .t4-megamenu .navbar-nav > li.active > .nav-link {
	color: var(--ao);
}
.t4-megamenu .navbar-nav>li.show>a, .t4-megamenu .navbar-nav>li.show>.nav-link {
	color: var(--ao);
	text-decoration: none;
}
.t4-megamenu .navbar-nav>li>a:hover .item-caret, .t4-megamenu .navbar-nav>li>a:focus .item-caret, .t4-megamenu .navbar-nav>li>a:active .item-caret, .t4-megamenu .navbar-nav>li>.nav-link:hover .item-caret, .t4-megamenu .navbar-nav>li>.nav-link:focus .item-caret, .t4-megamenu .navbar-nav>li>.nav-link:active .item-caret {
	color: var(--ao);
}
.t4-megamenu .navbar-nav>li>a:hover, .t4-megamenu .navbar-nav>li>a:focus, .t4-megamenu .navbar-nav>li>a:active, .t4-megamenu .navbar-nav>li>.nav-link:hover, .t4-megamenu .navbar-nav>li>.nav-link:focus, .t4-megamenu .navbar-nav>li>.nav-link:active {
	color: var(--ao);
	text-decoration: none;
}
.t4-megamenu .navbar-nav>li.show>a, .t4-megamenu .navbar-nav>li.show>.nav-link {
	color: var(--ao);
}
.t4-megamenu .navbar-nav>li.show>a .item-caret, .t4-megamenu .navbar-nav>li.show>.nav-link .item-caret {
	border-top-color: var(--ao);
}
.t4-megamenu .navbar-nav>li.active>a, .t4-megamenu .navbar-nav>li.active>.nav-link {
	color: var(--ao);
}
.t4-megamenu .navbar-nav>li.active>a .item-caret, .t4-megamenu .navbar-nav>li.active>.nav-link .item-caret {
	border-top-color: var(--ao);
}

.t4-megamenu .dropdown-menu {
    border-radius:8px;
    box-shadow:1px 1px 20px rgba(0,0,0,.12);
    background:#e5f7d5;
}
.t4-megamenu .dropdown-menu li .dropdown-item {
    padding:.3rem 0;
    
    transition: color .5s ease-in-out;
}

.t4-megamenu .dropdown-menu li .dropdown-item:hover {
    color:var(--midori);
}


/*ヘッダー　お問い合わせボタン
（【モジュール】ヘッダー：お問い合わせ）*/
.head-mail {
	padding: 0;
	margin: 0;
}
.head-mail ul {
	padding: 0;
	margin: 0;
}
.head-mail ul li {
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}
.head-mail ul li a {
	display: block;
	background-color: #EC2230;
	border: 2px solid #EC2230;
	color: #fff;
	padding: 8px 30px 8px 55px;
}
.head-mail ul li a::before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 20px;
	background-image: url("../../../../images/icon/icon_mail.png");
	background-repeat: no-repeat;
	background-origin: left top;
	background-size: contain;
	position: absolute;
	left: 20px;
	top: 16px;
}
.head-mail ul li a:hover {
	background-color: #fff;
	color: #EC2230;
	text-decoration: none;
}
.head-mail ul li a:hover::before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 20px;
	background-image: url("../../../../images/icon/icon_mail_red.png");
	background-repeat: no-repeat;
	background-origin: left top;
	background-size: contain;
	position: absolute;
	left: 20px;
	top: 16px;
}

.t4-header {
	min-height: auto;
    position:sticky;
    top:0;
    z-index:1000;
}
.t4-offcanvas-toggle i {
	display: none;
}
.t4-section.sec-spacing-lg .t4-section-inner {
	padding: 0;
	margin: 0;
}


.t4-footer {
	border: medium none;
}
.t4-footer .container, .t4-footer .t4-masthead .t4-masthead-detail, .t4-masthead .t4-footer .t4-masthead-detail {
	padding: 0;
	margin: 0 auto;
	background-color: #fff;
	border: medium none;
}
.col-md-10 {
	width: 100%;
}

.ft-content {
	width: 100%;
	margin: 0 auto;
	padding: 3% 0;
    background:url(../../../../images/common/footerbg.jpg)no-repeat center bottom/100%;
}
.ft-content img {
	margin: 0 0 20px 0;
}
.ft-sitemap {
	margin: 0 auto;
	padding: 0;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.ft-sitemap .profile {
	width: 50%;
	padding: 0;
	line-height: 1.8em;
}
.ft-sitemap .profile table {
	width: 100%;
	border-collapse: collapse;
	margin: 0;
}
.ft-sitemap .profile table th {
	text-align: left;
	vertical-align: top;
	padding: 10px 20px 0 0;
}
.ft-sitemap .profile table td {
	text-align: left;
	vertical-align: top;
	padding: 10px 0 0 0;
}
.ft-sitemap .sitemap {
	width: 47%;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
}
.ft-sitemap .sitemap div {
	padding-left: 60px;
}
.ft-sitemap .sitemap ul {
	padding: 0;
	margin: 0;
}
.ft-sitemap .sitemap ul li {
	padding: 0 0 10px 0;
	list-style: none;
	line-height: 1.4em;
	position: relative;
}
.ft-sitemap .sitemap ul li>ul {
	margin-top: 10px;
}
.ft-sitemap .sitemap ul li>ul li {
	padding-left: 15px;
}
.ft-sitemap .sitemap ul li>ul li::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 1px;
	background-color: #333;
	position: absolute;
	left: 0;
	top: 10px;
}

.pagetitle {
  margin: 0;
  padding: 10% 3%;
  font-size: 2rem;
  letter-spacing:.2rem;
  position: relative;
  font-family: 'Montserrat', "Noto Sans JP", sans-serif;
  /*display:inline-block;*/
}
/*.pagetitle:before {
    content:"";
    position:absolute;
    left:-140px;
    top:50%;
    transform:translateY(-50%);
    width:120px;
    height:100px;
    background:url(../../../../images/common/pagetitle-left.png)no-repeat center/contain;
}*/
/*
.pagetitle:after {
    content:"";
    position:absolute;
    right:-180px;
    top:50%;
    transform:translateY(-50%);
    width:150px;
    height:150px;
    background:url(../../../../images/common/pagetitle-right.png)no-repeat center/contain;
}*/
.pagetitle span {
	font-size: 4rem;
	display: block;
}

/*会社概要*/
.gaiyo-table {
	border-collapse: collapse;
	width: 100%;
	margin: 0;
}
.gaiyo-table th {
	border-bottom: 2px solid #000;
	padding: 40px 10px;
	font-weight: 900;
	text-align: left;
	vertical-align: top;
}
.gaiyo-table td {
	border-bottom: 2px solid #ddd;
	padding: 40px;
	font-weight: 900;
	text-align: left;
	vertical-align: top;
}
.googlemap {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%;
}
.googlemap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


#back-to-top {
	z-index: 98;
}

/*メールフォーム*/

strong.formRequired {
	color: #fff;
	font-weight: normal!important;
	font-size: 11px;
	background-color: #ff002a;
	padding: 6px 8px;
	border-radius: 4px;
	margin-left: 15px;
}
#userForm .rsform-block>label {
	border-top: 3px solid #000;
	display: table-cell;
	padding: 40px 0;
	vertical-align: top;
	width: 20%;
}
#userForm .rsform-block .formControls {
	display: table;
	border-top: 3px solid #000;
	vertical-align: top;
	padding: 40px 0 40px 20px;
}



/*グローバルメニュー　子メニューを表示*/
.header-block.header-block-2 .container-xxl {
  overflow: initial;
}

/*グローバルメニュー調整*/
.t4-megamenu .navbar-nav > li > a, .t4-megamenu .navbar-nav > li > .nav-link {
  font-size: 1rem;
  padding: 15px 10px;
}
/*「/html/mod_custom/h1-title.php」「/html/mod_custom/h1-title-sitename.php」利用時のヘッダー部分CSS*/
#h1title {
  font-size: 0.875rem;
  font-weight: normal;
  margin: 0;
}

/*swiper*/
.swiper {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.swiper-slide span {
  position: absolute;
  top: 50px;
  left: 100px;
  color: #fff;
  font-size: 2rem;
}

/*トップページお知らせ*/
.news-box {
  /*border: 1px solid #CCCCCC;*/
  /*max-height: 300px;*/
  overflow: auto;
  padding: 7px;
  flex-grow:1;
}
.news-box table {
  width: 100%;
}
.news-box table th {
  border-bottom: 1px dotted #ccc;
  font-weight: 700;
  padding: 5px;
  text-align: left;
  vertical-align: top;
}
.news-box table td {
  border-bottom: 1px dotted #ccc;
  padding: 5px;
  vertical-align: top;
}
/*.news-box table th::before, .news-box ul li::before {
  color: #999;
  content: "\f0da";
  font-family: FontAwesome;
  margin-right: 5px;
}*/


.news-box ul li {
  border-bottom: 1px solid #cccccc;
  color: #473a29;
  font-size: 1em;
  list-style: none outside none;
  /*margin: 0 0 5px;*/
  padding: 8px 0 8px 10px;
  display:flex;
  align-items:center;
}
.news-box .category-module li a {
  display: block;
  flex-grow:1;
}
.news-box .mod-articles-category-date {
    font-weight:700;
    margin-right:.8rem;
}
.news-box .mod-articles-category-category a {
    background:var(--midori);
    color:#fff;
    font-size:.8rem;
    line-height:1;
    min-width:150px;
    text-align:center;
    border-radius:100px;
    margin-right:.8rem;
}


.kiji-box01 td:nth-child(1) {
  width: 60%;
}
.kiji-box02 td:nth-child(1) {
  width: 40%;
}
.kiji-box01 td,.kiji-box02 td {
  vertical-align: top;
}

/*Youtubeの埋め込み*/
.yt iframe {
    display: block;
    margin: auto;
}
.yt  {
text-align: center;
}

.yt {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-top:.5rem;
  border-radius:8px;
  overflow:hidden;
}
.yt iframe {
  width: 100%;
  height: 100%;
}


/*プロファイルの編集非表示*/
#post .profile {display: none;}

/*モジュール　記事カテゴリー*/
.category-module li a::before {
  display: none;
}
.category-module li a {
  padding-left: 0;
}

/*スクロールヒントの調整*/
.scroll-hint-text {
  line-height: initial;
}

/******************共通*********************/

.column-out-inr {
  margin:0 calc(50% - 50vw);
  padding:0 calc(50vw - 50%); /*中身だけ元の横幅*/
}
.column-out {
  margin:0 calc(50% - 50vw);
}


.w-70 {
    width:70%;
}
.w-60 {
    width:60%;
}
.w-40 {
    width:40%;
}
.w-30 {
    width:30%;
}
.w-75a {
    width:75%;
}

.content-box {
    padding-block:3rem;
}
.beige-box {
    background:url(../../../../images/top/bg-beige.jpg)repeat left top;
    padding:3rem;
    border-radius:var(--round);
    position:relative;
}
.caution-box {
    background:var(--momo);
    padding:2rem 3rem;
    border-radius:var(--round);
}

.imgfull img {
    width:100%;
}

.text-left {
    text-align:left!important;
}
ul.beige-box {
    padding-left:4rem;
}

/*flex2列*/
.flex-column2 {
    flex-wrap:wrap;
}
.flex-column2 > div,
.flex-column2 > p,
.flex-column2 > li {
    width:calc(50% - 1.5rem);
}


/*リンクボタン（枠線）*/
.linkbtn a {  
  min-width:300px;
  display:inline-block!important;
}
.linkbtn a {
  display:block;
  padding:1rem 3rem 1rem 2rem;
  border:2px solid #473a29;
  border-radius:100px;
  font-size:1rem;
  text-decoration:none;
  position:relative;
  font-weight:500;
  color:#473a29;
  transition:.5s;
}
.linkbtn a:after {
  content: "\f0a9";
  font-family:FontAwesome;
  position:absolute;
  right:1.3rem;
  top:50%;
  transform:translateY(-50%);
  font-size:1.5rem;
  transition:.3s;
}
.linkbtn a:hover {
    background:#fff;
}
.linkbtn a:hover:after {
  right:1rem;
}
.iconinversion a {
  padding:1rem 2rem 1rem 3rem;
}
.iconinversion a:after {
    right:unset;
    left:1.3rem;
    content: "\f0a8";
}
.iconinversion a:hover:after {
    left:1rem;
    right:unset;
}



.linkbtn-s a {  
  min-width:unset;
  display:inline-block;
}
.linkbtn-s a {
  padding:.5rem 3rem .5rem 1.5rem;
  font-size:0.875rem;
}
.linkbtn-s a:after {
  font-size:1rem;
  right:1rem;
}
.linkbtn-s a:hover:after {
    right:.8rem;
}

.gohome a {
    border:none;
    padding:.5rem .5rem .5rem 1.5rem;
}
.gohome a:after {
    content: "\f015";
    right:auto;
    left:0;
}
.gohome a:hover {
    background:none;
    color:var(--ao);
}


/*リンクボタン（insta）*/
.linkbtn-insta {  
  min-width:300px;
  display:inline-block;
}
.linkbtn-insta a {
  display:block;
  padding:1rem 2rem;
  background:var(--ao);
  border-radius:100px;
  font-size:1.125rem;
  font-weight:700;
  text-decoration:none;
  color:#fff;
  text-align:center;
  transition:.5s;
}
.linkbtn-insta a:before {
    content: "\f16d";
    font-family: FontAwesome;
    margin-right: .3rem;
}
.linkbtn-insta a:hover {
    background:var(--midori);
}
/*リンクボタン（お問い合わせ）*/
.linkbtn-mail {  
  min-width:300px;
  display:inline-block;
}
.linkbtn-mail a {
  display:block;
  padding:1rem 2rem;
  background:var(--midori);
  border-radius:100px;
  font-size:1.125rem;
  font-weight:700;
  text-decoration:none;
  color:#fff!important;
  text-align:center;
  transition:.5s;
}
.linkbtn-mail a:before {
    content: "\f0e0";
    font-family: FontAwesome;
    margin-right: .3rem;
}
.linkbtn-mail a:hover {
    background:var(--ao);
}

/*リンクボタン（電話）*/
.linkbtn-tel a {
  font-size:2.25rem;
  font-weight:700;
  text-decoration:none;
  color:var(--maincolor);
}
.linkbtn-tel span {
    font-size:0.875rem;
    text-align:center;
    display:block;
    font-weight:400;
}
.linkbtn-tel a:before {
    content: "\f095";
    font-family: FontAwesome;
    margin-right: .3rem;
}
.linkbtn-tel a:hover {
    color:var(--ao)!important;
}


/*fontawesome*/
.icon-tel:before {
    content: "\f095";
    font-family: FontAwesome;
    margin-right: .3rem;
}

/*ヘッダー*/
.navbar-brand.logo-control img.logo-img {
    max-height:60px;
    width:auto;
    margin-inline:15px;
}
#t4-header-top {
    display:none;
}
.header-contact {
    list-style:none;
    display:flex;
}
.header-wrap {
    flex-wrap:wrap;
    gap:10px;
}
.t4-navbar {
    order:3;
    width:100%;
}
.header-wrap .navbar {
    width:100%;
}

.t4-megamenu .navbar-nav>li>a, .t4-megamenu .navbar-nav>li>.nav-link {
    height:40px;
}
    
.navbar-nav {
    width:100%;
    justify-content:space-between;
    flex-wrap:nowrap;
}
.t4-navbar .nav-item {
    width:100%;
    text-align:center;
}
.t4-navbar .nav-item a,
.t4-navbar .nav-item a span {
    width:100%;
}
.t4-navbar .nav-item:not(:first-child) {
    border-left:1px solid #ccc;
}

.t4-megamenu.animate.slide .dropdown .dropdown-menu>div {
    min-width:150px;
}


/*ヘッダー右上*/
.header-contact {
    align-items:center;
    gap:1rem;
}
.header-contact p {
    margin-bottom:0;
    line-height:1.3;
}
/*ヘッダー（電話）*/
.header-tel a {
  font-size:1.625rem;
  font-weight:700;
  text-decoration:none;
  color:var(--maincolor);
}
.header-tel span {
    font-size:0.813rem;
    text-align:center;
    display:block;
    font-weight:400;
}
.header-tel a:before {
    content: "\f095";
    font-family: FontAwesome;
    margin-right: .3rem;
}
.header-tel a:hover {
    color:var(--ao);
}

/*ヘッダー（お問い合わせ）*/
.header-mail a,
.header-insta a {
    font-size:0.75rem;
    font-weight:700;
    color:var(--midori);
    text-align:center;
    text-decoration:none;
    display:block;
}
.header-mail a:before,
.header-insta a:before {
	font-family: "FontAwesome";	
	display: block;
	width: 44px;
	height: 44px;
	line-height: 44px;
	text-align: center;
	border-radius: 50%;
	background-color: var(--midori);
	color:#fff;
    margin:0 auto 5px;
}
.header-mail a:before {
    content: "\f0e0";
    font-size:1rem;
}
.header-insta a:before {
    content: "\f16d";
    font-size:1.3rem;
}
.header-mail a:hover,
.header-insta a:hover {
    color:var(--ao);
}
.header-mail a:hover:before,
.header-insta a:hover:before {
    background-color: var(--ao);
}

.t4-section.t4-breadcrumbs {
    border-top:none;
}


/*メインイメージスライダー装飾*/
#mainslider .swiper {
    position:relative;
}
#mainslider p {
    margin:0!important;
}
#mainslider .swiper .illust-left {
    position:absolute;
    left:0;
    bottom:10px;
    width:25%;
    z-index:100;
}
#mainslider .swiper .illust-right {
    position:absolute;
    right:0;
    bottom:15px;
    width:13%;
    z-index:100;
}
#mainslider .swiper .illust-bottom {
    position:absolute;
    left:0;
    bottom:-5px;
    width:100%;
    z-index:99;
}
#mainslider .swiper .illust-bottom img {
    width:100%;
}

#t4-slideshow.border-bottom {
    border-bottom:none!important;
}

#mainslider .swiper .teaser-cap {
    position:absolute;
    left:10%;
    top:45%;
    transform:translateY(-50%);
    width:30%;
    z-index:100;
}
#mainslider .swiper-slide img {
    aspect-ratio:2/1;
    object-fit:cover;
    width:100%;
    object-position:bottom;
}


.swiper-button-next, .swiper-button-prev {
    z-index:1000!important;
    color:#fff!important;
}


/*白枠シャドウ*/
.whitebox {
    background:#fff;
    border-radius:var(--round);
    box-shadow:var(--boxshadow);
    padding:2.5rem;
}

/*画像*/
.image-round img {
    width:100%;
    object-fit:cover;
    border:5px solid #fff;
    border-radius:var(--round);
}
.image-circle img {
    width:100%;
    object-fit:cover;
    aspect-ratio:1/1;
    border-radius:100%;
}
.aspect-ratio-3-4 img {
    aspect-ratio:3/4;
}
.aspect-ratio-4-3 img {
    aspect-ratio:4/3;
}
.list-left ul {
    display:inline-block;
}
.list-left ul li {
    text-align:left;
}


/*フォントサイズ*/
.f24 {
    font-size:24px!important;
}
.f30 {
    font-size:30px!important;
    line-height:1.7em;
}
.f36 {
    font-size:36px!important;
    line-height:1.7em;
}
.subtxt {
    font-size:.8em;
    line-height:1.5;
    display:inline-block;
}

/*見出し（アイコン木）*/
.icon-leftwood {
    position:relative;
    padding-left:120px;
}
.icon-leftwood:before {
    content:"";
    background:url(../../../../images/common/mds-illust-tree.png)no-repeat center/contain;
    display:block;
    width:90px;
    height:120px;
    top:50%;
    transform:translateY(-50%);
    left:0;
    position:absolute;
}

/*トップページ*/
.item-142 .t4-main-body,
.item-142 .items-row .item {
    padding-top:0;
}
.item-142 .article-aside {
    margin-bottom:0;
}

.top01 {
    background:url(../../../../images/top/teaser-bottombg.jpg)no-repeat center top/100%;
    padding-block:3rem;
}

.imgtop {
    position:relative;
    padding-bottom:100px;
}
.imgtop .imgtop01 {
    margin-left:auto;
    width:70%;
}
.imgtop .imgtop02 {
    width:65%;
    position:absolute;
    left:0;
    top:65%;
}
.imgtop .icon01 {
    position:absolute;
    left:30px;
    top:100px;
}
.imgtop .icon02 {
    position:absolute;
    right:-30px;
    bottom:0;
}

/*バナーボタン*/
.bnrbtn {
  position:relative;
  width:100%;
  overflow:hidden;
  border-radius:var(--round);
  border:5px solid #fff;
  box-shadow:var(--boxshadow);
}
.bnrbtn-inr {
  overflow:hidden;
  border-radius:var(--round);
}
.bnrbtn img{
  width:100%;
  aspect-ratio:6/5;
  transition:.5s;
  object-fit:cover;
}
.bnrbtn:hover img {
  transform: scale(1.1);
}
.bnrbtn a {
  display:block;
  text-decoration:none;
}
.bnrbtn a:before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:100;
}
.bnrbtn a p {
  position:absolute;
  bottom:0;
  left:0;
  width:80%;
  background:#fff;
  padding:1rem 1rem 1rem 2rem;
  border-radius:0 16px 0 0;
  margin:0;
  font-size:1.125rem;
  color:#473a29;
  font-weight:500;
}
.bnrbtn a p:after {
  content: "\f0a9";
  font-family: FontAwesome;
  position:absolute;
  right:1.2rem;
  top:50%;
  transform:translateY(-50%);
  font-size:1.375rem;
}

/*上下ウェーブ*/
.top02 {
    background:url(../../../../images/top/bg-beige.jpg)repeat left top;
    padding-block:3rem;
}

/*トップinsta*/
.illust-insta {
    content:"";
    position:absolute;
    top:20%;
    right:10%;
}


/* スライダー全体 */

@keyframes horizontal-animation {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

/*.imgslider-container {
  display: flex;
  overflow: hidden;
  margin:0 calc(50% - 50vw);
}*/
/* スライドグループ */
/*.imgslider-wrapper {
  display: flex;
  animation: horizontal-animation 70s linear infinite;
}*/
/* スライド */
/*.imgslide {
  width: calc(100vw / 5);
  padding:0;
  margin-left:2rem;
}
.imgslide:nth-child(2) {
  margin-top:50px;
}
.imgslide:nth-child(3) {
  margin-top:20px;
}
.imgslide:nth-child(4) {
  margin-top:60px;
}
.imgslide:nth-child(5) {
  margin-top:30px;
}*/
/* スライドの画像 */
/*.imgslide img {
  display: block;
  width: 100%;
  height:auto;
  Aspect-ratio:4/3;
  border-radius:var(--round);
}*/


.imgslider-container {
  display: flex;
  overflow: hidden;
  margin:0 calc(50% - 50vw);
}
/* スライドグループ */
.imgslider-wrapper {
  display: flex;
}
/* スライド */
.swiper-wrapper {
  transition-timing-function: linear !important;
}
#top_middleslider .swiper-slide img {
    border-radius: 20px;
    aspect-ratio:4 / 3;
    object-fit:cover;
}
#top_middleslider .swiper-slide {
    padding-inline: 20px;
}
#top_middleslider .swiper-slide:nth-child(odd) {
    margin-top: 40px;
}


.imgslide {
  width: calc(100vw / 5);
  padding:0;
  margin-left:2rem;
}
/* スライドの画像 */
.imgslide img {
  display: block;
  width: 100%;
  height:auto;
  Aspect-ratio:4/3;
  border-radius:var(--round);
}


/***FOOTER***/
.btn-snsicon {
    font-size:1.875rem;
}
.t4-footer,
.t4-footer a {
    color:var(--maincolor);
}
.t4-footer a:hover, .t4-footer a:focus, .t4-footer a:active {
    color:var(--midori);
}
.copyright {
    text-align:center;
}

.fnav,
.fnav li ul {
    list-style:none;
    padding-left:0;
}
.fnav li {
    text-align:left;
}
.fnav li ul li:before {
    content:"-";
    margin-right:.5em;
}

/*下層ページタイトル*/
.t4-masthead-module {
    background:url(../../../../images/common/pagetitlebg2.jpg)repeat center bottom/cover;
    text-align:center;
}

/*下線のみテーブル*/
.table-line {
  width:100%;
  border-collapse: collapse;
}
.table-line th,
.table-line td {
padding:1.5em 0;
}
.table-line th {
width:20%;
font-weight:700;
text-align:center;
}
.table-line tr:not(:last-child) {
border-bottom:1px solid #ccc;
}
.table-line-fixed {
    table-layout: fixed;
    border-collapse:separate;
    border-spacing:5px;
}
.table-line-fixed th,
.table-line-fixed td {
padding:1em 0;
text-align:center;
border-bottom:1px solid #ccc;
}
.table-line-fixed tr:first-child th {
    background:rgba(255,255,255,.8);
    border-radius:8px;
    padding:.5em 0;
    border-bottom:none;
}

td:empty {
  height: 1em;
}

/*タイムライン*/
.timeline {
  list-style: none;
}
.timeline > li {
  overflow: hidden;
  margin: 0;
  position: relative;
  display:flex;
}
.timeline-date {
  width: 100px;
  margin-top: 20px;
  font-weight:700;
  font-size:1.2rem;
}
.timeline-content {
  width: calc(100% - 100px);
  padding-left: 30px;
  margin-bottom:60px;
}
.timeline-content:before {
  content: "\2022";
  font-size: 3.75rem;
  position: absolute;
  left: 91px;
  color: var(--ao);
  z-index:10;
  top:0;
  line-height:.4;
}
.timeline > li:not(:last-child) .timeline-content:after {
    content:"";
    width:3px;
    height:100%;
    background:#e8e8e8;
    position:absolute;
    left: 100px;
    top: 16px;
}
.timeline figure {
    margin:.5rem 0 0;
}

/*リスト（アイコンチェック）*/
.list-check {
    list-style:none;
}
.list-check li {
    font-size:1.1rem;
    padding-block:.6rem;
    border-bottom:2px dashed #fff;
}
.list-check li:before {
    color:var(--midori);
    content: "\f06c";
    font-family: FontAwesome;
    margin-right: .8rem;
}

/*グリッドレイアウト*/
.gridwrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  gap: 30px 20px;
  justify-content: flex-start;
}
.gridwrap2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 30px 20px;
  justify-content: flex-start;
}
.wf-zoom-image {
    display:block;
}
.gallery img {
    width:100%;
    height:auto;
    aspect-ratio:4/3;
    border-radius:var(--round);
    object-fit:cover;
}
.wf-icon-zoom-image svg {
    right:15px;
    bottom:15px;
}

/*年間行事*/
/*.event-schedule h2 {
    width:20%;
}
.event-schedule ul {
    width:30%;
}
.event-schedule > div {
    width:50%;
}*/
.event-schedule > div figure {
    margin:0;
}

/*お知らせ*/
.page-header h1 {
    font-size:2rem;
    position:relatvie;
}
.page-header h1:before {
    content:"";
    background:url(../../../../images/top/illust-news.png)no-repeat center/contain;
    width:80px;
    height:50px;
    display:inline-block;
}

.item-257 .system-unpublished {
    position:relative;
    border-bottom:3px dashed #ccc;
    padding-bottom:2rem;
}
.news-intro {
    display:flex;
    gap:2rem;
}
.news-intro .intro-img {
    width:30%;
}
.news-intro .intro-img img {
    border-radius:var(--round);
    aspect-ratio:4/3;
    object-fit:cover;
}
.news-intro > div {
    width:100%;
    padding-bottom:50px;
}

p.readmore {
    position:absolute;
    right:0;
    bottom:2rem;
}

.heading-news1 {
    padding-top:1em;
    font-size:2rem;
    position:relative;
}
.heading-news1:before {
    content:"";
    width:24px;
    height:24px;
    border-radius:100%;
    display:inline-block;
    background:var(--midori);
    margin-right:10px;
}
.heading-news2 {
    padding-top:1em;
    font-size:1.5rem;
    border-bottom:1px solid var(--body-text-color);
    padding-bottom:.5em;
}
.heading-news3 {
    padding-top:1em;
    font-size:1.1rem;
}
.news-detail figure {
    text-align:center;
    margin-inline:auto;
}
.news-detail figure img {
    max-width:100%;
    border-radius:var(--round);
}
.news-detail p {

}

/*著者情報*/
.copyright-info {
    gap:3rem;
    align-items:center;
    margin-top:4rem;
}
.copyright-info h2 {
    color:var(--midori);
    font-size:1.5rem;
    margin-bottom:.8em;
}
.title-info {
    display:inline-block;
    background:#fff;
    padding:3px 15px;
    font-size:.9rem;
    border-radius:100px;
    margin-bottom:0;
}

/*ページネーション*/
.pagination-wrap {
    justify-content:center;
    position:relative;
}
.pagination-wrap p.counter {
    position:absolute;
    right:0;
    bottom:0;
}
.pagination-wrap a.page-link {
    background:#f2f2f2;
}
.pagination-wrap ul li {
    margin-inline:2px;
}
.page-link {
    border:none;
    padding:1rem;
    border-radius:100%!important;
    line-height:1rem;
    width:50px;
    text-align:center;
    color:#473a29;
    font-weight:700;
}
.pagination-wrap .counter {
    font-weight:700;
}
.page-link:hover {
    text-decoration:none;
    color:var(--ao);
}
.page-link.active, .active>.page-link {
    background-color:var(--ao);
    color:#fff;
}

.btn.btn-secondary {
    background:#fff;
    border-radius:100px;
    text-decoration:none;
    color:var(--body-text-color);
    padding:.5em 1.2em;
}
.btn.btn-secondary:last-child span.icon-chevron-right {
    margin-right:0;
    margin-left:.5rem;
}
.btn.btn-secondary:hover {
    background:var(--body-text-color);
    color:#fff;
}

p.readmore .btn {
    background:var(--momo);
    color:var(--body-text-color);
    text-decoration:none;
    border-radius:100px;
    padding:.5em 1.5em;
    font-size:.8rem;
}
p.readmore .btn:hover {
    background:var(--midori);
}

/*お知らせ右*/
.sidebar-r .module-inner {
    background:var(--momo);
    padding:1rem;
    border-radius:calc(var(--round) / 2);
}
.sidebar-r .categories-module li a:before,
.sidebar-r .latestnews li a:before {
    content:none;
}
.sidebar-r .categories-module li a,
.sidebar-r .latestnews li a {
    padding-left:0;
    color:var(--body-text-color);
}
.sidebar-r .categories-module li a:hover,
.sidebar-r .latestnews li a:hover {
    color:var(--ao);
}
.sidebar-r .module-title {
    border-bottom:3px dashed #fff;
}
.sidebar-r .module-title span {
    border-bottom:none;
}
.sidebar-r .module-title span:before {
    content:"";
    background:url(../../../../images/top/illust-news2.png)no-repeat center/contain;
    width:35px;
    height:35px;
    display:inline-block;
    vertical-align:middle;
    margin-right:10px;
}

/*お問い合わせ*/
.privacy-policy {
    background:#f2f2f2;
    padding:1rem 2rem;
    border-radius:var(--round);
}
.privacy-policy h2 {
    font-size:.9rem;
    font-weight:700;
}
.privacy-policy p {
    font-size:.9rem;
    font-weight:400;
}

#userForm .rsform-block .formControls {
    flex-grow:1;
}
#userForm .rsform-block>label {
    width:30%;
}
.formControls.col-sm-9 {
    width:70%;
}
.btn.btn-primary {
    border-radius:100px;
    padding:1.5rem 8rem;
    background:var(--ao);
    border-color:var(--ao);
}
#userForm .rsform-block>label,
#userForm .rsform-block .formControls {
    border-top:1px solid #ccc;
}

/*入園案内*/
.separate-line {
    border-bottom:3px dashed #ccc;
    padding-bottom:4rem;
}
.table-guide {
  table-layout: fixed;
  width:100%;
  border-collapse: separate;
  border-spacing:8px;
  margin-bottom:10px;
}
.table-guide th,
.table-guide td {
    padding:.8rem;
    text-align:center;
    border-radius:8px;
}
.table-guide td {
    background:rgba(255,255,255,.5);
}
.table-guide th {
    background:rgba(68, 187, 236,.2);
}

/*お問い合わせフォーム*/
textarea.form-control {
   max-width:unset;
   resize: none;
}
.rsform-type-radiogroup .formControls {
    display:flex!important;
    flex-direction:row;
    gap:1.5rem;
    flex-wrap:nowrap;

}
.form-check-inline {
    cursor: pointer;
    display:flex;
    align-items:center;
    gap:.5rem;
}
.rsform-block-submit>label {
    display:none!important;
}
.rsform-block-submit>.formControls {
    text-align:center;
}


/*採用情報FAQ*/
ul.faq {
    list-style:none;
    padding-left:0;
}
ul.faq li {
    background:url(../../../../images/top/bg-beige.jpg)repeat left top;
    padding:2rem;
    border-radius:var(--round);
    margin-bottom:2rem;
}
ul.faq li .question {
    font-size:1rem;
    display:flex;
    gap:.5em;
    line-height:1.8;
    border-bottom:3px dashed #fff;
    padding-bottom:.8em;
    margin:0 0 .8em;
}
ul.faq li .question:before {
    content:"Q.";
    color:var(--ao);
}
ul.faq li .answer  {
    display:flex;
    gap:.5em;
    line-height:1.8;
}
ul.faq li .answer {
    display:flex;
    gap:.5em;
    line-height:1.8;
}
ul.faq li .answer:before {
    content:"A.";
    color:#fb8fae;
    font-weight:700;
}

/*五感*/
.gokan:not(:last-child) {
    border-bottom:3px dashed #ccc;
    padding-bottom:3rem;
}

/*年間行事イラスト*/
.illust-sche {
    position:absolute;
    top:-20px;
    right:50px;
}

/*アプリアイコン*/
.appicon {
    display:flex;
    justify-content:center;
    gap:10px;
}
.appicon a img {
    height:70px;
}

.pchidden {
    display:none!important;
}

/*COLOR*/
.midori {
    color:var(--midori);
}
.bgmidori {
    background-color:var(--midori);
}
.momo {
    color:var(--momo);
}
.bgmomo {
    background-color:var(--momo);
}
.bgtransw {
    background:rgba(255,255,255,.7);
}


/*お知らせ　一覧*/
.item-257 .item-intro * {
    all: initial !important;
    color: #777 !important;
}
.item-257 .item-intro div {
    display: contents !important;
}
.item-257 .item-intro img,
.item-257 .item-intro br {
    display: none !important;
}
.item-257 .item-intro {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
.item-257 .item-intro *::before,
.item-257 .item-intro *::after {
    display: none;
}