@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;700&family=Roboto:wght@100;400;700&display=swap');
* { min-height:0; min-width:0; box-sizing: border-box; -webkit-print-color-adjust: exact; }
*:focus	{ outline: none; }
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 {
  font-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
}
body	{ color: #2C2C2C; background-color: #fff; font-family:'Roboto', 'Noto Sans JP', "游ゴシック",'YuGothic','Hiragino Sans',Meiryo,sans-serif; font-weight: 400; font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; letter-spacing:.06rem; height:100%; min-width: 1000px;}
img	{ display:inline-block; height: auto; width: 100%; max-width: 100%; backface-visibility: hidden; }
a, a:link, a:visited, a:active	{ color: #2C2C2C; text-decoration: none; }
a:hover	{ color: #959595; font-style: normal; text-decoration: none; }
#pagetop	{ position: absolute; top: 0; left: 0;  }
@media (min-width: 768px) { 
	a .news_aLine	{ border-top: 1px solid transparent; border-bottom: 1px solid transparent; background: linear-gradient(#6db506, #6db506) 100% 100% / 0 1px no-repeat; transition: background-size .4s cubic-bezier(.23,1,.32,1) 0s; }
	.toppage a:hover .news_aLine	{ border-top: 1px solid transparent; border-bottom: 1px solid transparent; background: linear-gradient(#fff, #fff) 100% 100% / 0 1px no-repeat; transition: background-size .4s cubic-bezier(.23,1,.32,1) 0s; }
	a:hover .news_aLine, 
	.toppage a:hover .news_aLine	{ background-position: 0 100%; background-size: 100% 1px; }
}

/* ------------ INVIEW ------------- */
.fadein	{ opacity: 0; }
.fadein.inview	{ animation-name: fadeUp; animation-duration:1.5s; animation-fill-mode:forwards; }
.slidein	{ opacity: 0; }
.slidein.inview	{ animation-name: slidefade; animation-duration:1.5s; animation-fill-mode:forwards; }
@keyframes fadeUp	{
  from { opacity: 0; transform: translateY(30px); }
  to	{ opacity: 1; transform: translateY(0); }
}
@keyframes slidefade	{
  from { opacity: 0; transform: translateX(-40px); }
  to	{ opacity: 1; transform: translateX(0); }
}
@media print{
	.fadein	{ opacity: 1; }
	.slidein	{ opacity: 1; }
}

/* ------------ ITEM INVIEW ------------- */
.entimg	{ width: 90%; overflow: hidden; position: relative; opacity : 0; }
.entimg.inview	{ overflow: hidden; opacity : 1; transition:all 1s; }
.entimg.inview:before	{ animation: img-wrap 2s cubic-bezier(.4, 0, .2, 1) forwards; background: #fff; content: ''; position: absolute; top: -10px; bottom: -10px; right: -10px; left: -10px; pointer-events: none; z-index: 1; }
@keyframes img-wrap {
  100% { transform: translateX(100%); }
}

/* ------------ TOP SCROLL DOWN ------------- */
a.scrollDown { color:#ffffff; font-size: clamp(14px, 16px, 1.2vw); line-height: 1; font-weight: 500; position: absolute; bottom: 40px; right: 15%; z-index: 2; display: inline-block; text-decoration: none; }
#business a.scrollDown { transform: translateX(-50%); left: calc(50% - 15px); }
a.scrollDown { padding-top: 80px; }
a.scrollDown span	{ position: absolute; top: 0; left: 50%; width: 24px; height: 24px; margin-left: -12px; border-left: 1px solid #fff; border-bottom: 1px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); -webkit-animation: sdb 2s infinite; animation: sdb 2s infinite; opacity: 0; box-sizing: border-box; }
a.scrollDown span:nth-of-type(1)	{ -webkit-animation-delay: 0s; animation-delay: 0s; }
a.scrollDown span:nth-of-type(2)	{ top: 16px; -webkit-animation-delay: .15s; animation-delay: .15s; }
a.scrollDown span:nth-of-type(3)	{ top: 32px; -webkit-animation-delay: .3s; animation-delay: .3s; }
@-webkit-keyframes sdb	{
  0%	{ opacity: 0; }
  50%	{ opacity: 1; }
  100%	{ opacity: 0; }
}
@keyframes sdb	{
  0%	{ opacity: 0; }
  50%	{ opacity: 1; }
  100%	{ opacity: 0; }
}
@media (max-width: 767.9px) { 
	a.scrollDown { bottom: 20px; right: calc(50% - 26px); }
}
a.pganc	{ display: block; margin-top:-100px; padding-top:100px; }
@media (max-width: 767.9px) { 
	a.pganc	{ display: block; margin-top:-80px; padding-top:80px; }
}
/* ------------ LOADING ------------- */
.loading	{ position: fixed; display: -webkit-flex; display: flex; justify-content: center; align-items: center; background: #B2B2B2; background-position:center; background-attachment: fixed; z-index: 999; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; pointer-events: none; }
.loading-block	{ width: 80px; display: flex; justify-content: space-between; }
.circle	{ width: 12px; height: 12px; background-color: #959595; border-radius: 50%; animation: loading 1s infinite; }
.circle:nth-child(2)	{ animation-delay: 0.1s; }
.circle:nth-child(3)	{ animation-delay: 0.2s; }
.circle:nth-child(4)	{ animation-delay: 0.3s; }
@keyframes loading {
	0%	{ transform: scale(0.1); }
	100%	{ transform: scale(1); }
}
@media (max-width: 767.9px) { 
	.loading	{ background-size:24px auto; }
}

/* ------------ DRAWR MENU ------------- */
.spnavi	{ display: block; width: 100%; max-width: 400px; height: 100%; min-height: 100vh; background: rgba(255,255,255,1); margin: 0; padding: 0; position: fixed; top: 0; right: 0; left: auto; bottom: 0; z-index: 90; transform: translate(100vw); transition: all .5s; overflow: auto; }
.spnavi.open	{ transform: translateZ(0); }
.menuinner	{ display: block; padding: 30px 20px; margin: 0; width: 100%; min-height: 100%; display: -webkit-flex; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.menuinner > h2	{ display: block; width: 100%; padding: 0; margin: 0 0 20px; }
.menuinner > h2 a	{ display: -webkit-flex; display: flex; align-items: center; justify-content: flex-start; font-size: 24px; font-weight: 400; line-height: 1.2; }
.menuinner > h2 a img	{ width: 180px; margin: 0 10px 0 0; }
.menuinner > ul	{ width: 100%; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 0; margin: 0; }
.menuinner > ul > li	{ width: 100%; list-style: none; padding: 0; margin: 0; position: relative; border-top: 1px solid #666; }
.menuinner > ul > li > a	{ display: block; color:#000; font-size: 16px; line-height: 1.5; font-weight: 400; letter-spacing:.05rem; padding: 10px 0; margin: 0; transition: all .5s; }
.menuinner > ul > li > a svg	{ width: 14px; }
.menuinner > ol	{ width: 100%; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 15px 0 0; margin: 0; border-top: 1px solid #666; }
.menuinner > ol > li	{ width: 100%; list-style: none; padding: 0; margin: 0; position: relative; }
.menuinner > ol > li > a	{ display: block; color:#959595; font-size: 14px; line-height: 1.5; font-weight: 400; letter-spacing:.05rem; padding: 0 0 10px; margin: 0; transition: all .5s; }
.menuinner > ol > li > a svg	{ width: 14px; }
.menuinner > p	{ text-align: left; color:#666; font-size: 10px; line-height: 1.5; padding: 20px 0 0; margin: 0; width: 100%; max-width: 300px; }
.sp_info	{ width: 100%; flex-wrap: wrap; }
.sp_info ul.telset	{ width: 100%; margin: 0 0 20px; }
@media (min-width: 768px) { 
	.menuinner > ul > li > a:hover, 
	.menuinner > ol > li > a:hover	{ color:#6db506; }
}
@media (max-width: 767.9px) { 
	nav.sp	{ width: 100%; height: calc(var(--vh, 1vh) * 100); }
	.menuinner > ul.nav	{ max-width: 280px; width: 90%; }
	.menuinner > ul.subnav	{ max-width: 280px; width: 90%; }
	.menuinner > ul.subnav > li > a	{ font-size: 14px; }
}
@media (max-width: 374px) { 
	.menuinner > ul.nav > li > a	{ font-size: 14px; padding: 7px 0; }
	.menuinner > ul.subnav > li > a	{ font-size: 12px; }
	.menuinner > p	{ font-size: 9px; padding: 10px 0 0; }
}

.drwrapper	{ height: 100%; overflow-x: hidden; position: relative; }
.overlay	{ content: ""; display: block; width: 0; height: 0; position: absolute; top: 0; left: 0; z-index: 20; opacity: 0; transition: opacity .5s; background-color: rgba(0,0,0,.8); }
.overlay.open	{ width: 100%; height: 100%; opacity: 1; position: fixed; }
.menu-trigger	{ display: none; width: 60px; height: 60px; vertical-align: middle; cursor: pointer; position: fixed; top: 0; left: auto; right: 0; z-index: 300; pointer-events: auto; transition: all .5s; background-color: rgba(0,0,0,.8); }
.menu-trigger:hover	{ background-color: #666; }
.menu-trigger span	{ display: inline-block; box-sizing: border-box; position: absolute; top: 20px; left: 20px; width: 20px; height: 3px; background-color: #fff; transition: all .5s; transform: translateX(0); transition: all .5s; }
.menu-trigger.active	{ transition: all .5s; }
.menu-trigger.active span	{ background-color: #fff; }
.menu-trigger span:nth-of-type(1)	{ top: 18px; }
.menu-trigger.active span:nth-of-type(1)	{ transform: translateY(8px) rotate(-45deg); }
.menu-trigger span:nth-of-type(2)	{ top: 26px; }
.menu-trigger.active span:nth-of-type(2)	{ opacity: 0; }
.menu-trigger span:nth-of-type(3)	{ top: 34px; }
.menu-trigger.active span:nth-of-type(3)	{ transform: translateY(-8px) rotate(45deg); }
@media (max-width: 767.9px) { 
	.menu-trigger	{ display: inline-block; display: none; width: 60px; height: 60px; }
	.menu-trigger span	{ top: 20px; left: 20px; width: 20px; }
	.menu-trigger.active	{ transition: all .5s; }
	.menu-trigger.active span	{ background-color: #fff; }
	.menu-trigger span:nth-of-type(1)	{ top: 20px; }
	.menu-trigger.active span:nth-of-type(1)	{ transform: translateY(8px) rotate(-45deg); }
	.menu-trigger span:nth-of-type(2)	{ top: 28px; }
	.menu-trigger.active span:nth-of-type(2)	{ opacity: 0; }
	.menu-trigger span:nth-of-type(3)	{ top: 36px; }
	.menu-trigger.active span:nth-of-type(3)	{ transform: translateY(-8px) rotate(45deg); }
}

/* ------------ HEADER ------------- */
header	{ display: -webkit-flex; display: flex; width: 100%; height: 74px; justify-content: center; position: fixed; top:0; left:0; z-index:22; padding: 0 20px; margin: 0; background-color: #fff; border-top: 0 solid #111; min-width: 1000px; }
header	{ 
	-webkit-filter:drop-shadow(0 0 10px rgba(0, 0, 0, .2));
	-moz-filter:drop-shadow(0 0 10px rgba(0, 0, 0, .2));
	-ms-filter:drop-shadow(0 0 10px rgba(0, 0, 0, .2));
	filter:drop-shadow(0 0 10px rgba(0, 0, 0, .2));
}
@media print{
	header	{ position: absolute; }
}
.head_inner	{ display: -webkit-flex; display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 1400px; height: 100px; }
.head_inner > h1	{ padding: 3px 0 0; margin: 0; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; line-height: 0; }
.head_inner > h1 a	{ display: block; width: 320px; }
.head_info	{ display: -webkit-flex; display: flex; }
ul.telset	{ list-style-type: none; display: -webkit-flex; display: flex; flex-direction: column; padding: 0; margin: 0 0 0 30px; }
ul.telset > li	{ width: 100%; padding: 0 0 5px; margin: 0; font-size: 14px; letter-spacing:0; line-height: 1; font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; font-weight: 400; font-family: "Meiryo UI", "Hiragino Sans", "Yu Gothic UI", "MS PGothic", "Hiragino Kaku Gothic ProN", sans-serif; }
ul.telset > li:first-child	{ width: 100%; font-size: 12px; font-weight: 400; border-bottom: 1px solid #959595; margin: 0 0 5px; }
ul.telset > li:last-child	{ width: 100%; font-size: 13px; padding: 0; margin: 0; }
ul.telset > li > a	{ display: inline-block; padding: 0 0 0 10px; font-size: 28px; font-weight: 500; color:#b41a1a; font-family: 'Roboto', sans-serif; }
@media (max-width: 1050px) { 
	.head_inner > h1 a	{ width: 240px; }
	ul.telset > li	{ font-size: 13px; }
	ul.telset > li:first-child	{ font-size: 11px; }
	ul.telset > li:last-child	{ font-size: 12px; }
	ul.telset > li > a	{ font-size: 20px; }
}
/* 
@media (max-width: 830px) { 
	.head_inner > h1 a	{ width: 200px; }
	ul.telset	{ margin: 0 0 0 10px; }
	ul.telset > li	{ font-size: 12px; }
	ul.telset > li:first-child	{ font-size: 10px; }
	ul.telset > li:last-child	{ font-size: 11px; }
	ul.telset > li > a	{ font-size: 18px; }
}
@media (max-width: 767.9px) { 
	header	{ width: 100%; height: 60px; justify-content: flex-start; align-items: center; top:0; left:0; right: 0; }
	.head_info	{ display: none; }
	ul.telset	{ margin: 0 0 0 10px; }
	ul.telset > li	{ font-size: 13px; }
	ul.telset > li:first-child	{ font-size: 11px; }
	ul.telset > li:last-child	{ font-size: 12px; }
	ul.telset > li > a	{ font-size: 22px; }
}
 */

/* ------------ NAVIGATION ------------- */
.globalnav	{ width: 100%; position: relative; display: -webkit-flex; display: flex; padding: 0; margin: 0; background-color: #f8f4ec; height: 74px; position: absolute; bottom: 0; left: 0; z-index: 20; border-bottom: 2px solid #fff; }
.globalnav > ul	{ display: -webkit-flex; display: flex; width: 100%; justify-content: center; list-style-type: none; height: 74px; }
.globalnav > ul > li	{ display: -webkit-flex; display: flex; line-height: 1; border: 1px solid #bab0ab; border-width: 0 1px 0 0; }
.globalnav > ul > li > a	{ padding: 0 1.5vw; display: -webkit-flex; display: flex; align-items: center; justify-content: center; position: relative; transition: all .3s; height: 74px; }
.globalnav > ul > li > a > span	{ color:#000; font-size: clamp(15px, 21px, 1.4vw); font-weight: 400; line-height: 1; letter-spacing:.03rem; transition: all .3s; white-space: nowrap; display: -webkit-flex; display: flex; align-items: center; }
.globalnav > ul > li.nav00 > a > span	{ font-size: clamp(17px, 26px, 1.7vw); font-weight: 700; }
.globalnav > ul > li > a > span svg	{ color:#000; width: 24px; line-height: 0; vertical-align: bottom; margin: 0; }
.globalnav > ul > li > a::after	{ content:""; width: 0; height: 5px; background-color: #f1e6fa; position: absolute; left: 0; right: 100%; bottom: 0; transition: all .3s; }
.globalnav > ul > li > a:hover::after	{ width: 100%; right: 0; background-color: #6db506; }
.globalnav > ul > li > a:hover span	{ color:#6db506; }
.globalnav > ul > li > a:hover > span svg	{ color:#6db506; }
.globalnav > ol	{ display: -webkit-flex; display: flex; position: absolute; right: 80px; bottom: 0; list-style-type: none; }
.globalnav > ol li	{ display: -webkit-flex; display: flex; flex-direction: column; line-height: 1; }
.globalnav > ol li a	{ padding: 10px 20px; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; transition: all .3s; min-height: 54px; position: relative; }
.globalnav > ol li a span	{ color:#333; font-size: clamp(12px, 16px, 1.3vw); font-weight: 400; line-height: 1; letter-spacing:.1rem; transition: all .3s; white-space: nowrap; display: -webkit-flex; display: flex; align-items: center; }
.globalnav > ol li a:hover span	{ color:#6db506; }
.globalnav.current01 > ul li.nav01 > a::after,
.globalnav.current02 > ul li.nav02 > a::after,
.globalnav.current03 > ul li.nav03 > a::after,
.globalnav.current04 > ul li.nav04 > a::after,
.globalnav.current05 > ul li.nav05 > a::after,
.globalnav.current06 > ul li.nav06 > a::after,
.globalnav.current07 > ul li.nav07 > a::after,
.globalnav.current08 > ul li.nav08 > a::after	{ width: 100%; right: 0; background-color: #6db506; }
#globalnav.UpMove	{ animation: UpAnime 0.5s forwards; }
@keyframes UpAnime	{
	from { opacity: 1; transform: translateY(0); }
	to { opacity: 0; transform: translateY(-100px); }
}
#globalnav.DownMove	{ animation: DownAnime 0.5s forwards; }
@keyframes DownAnime	{
	from	{ opacity: 0; transform: translateY(-100px); }
	to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 1100px) { 
	.globalnav > ol li:first-child	{ display: none; }
}
/* 
@media (max-width: 920px) { 
	.globalnav > ol li	{ display: none; }
}
@media (max-width: 767.9px) { 
	.globalnav	{ display: none; }
}
 */
.dropdown-btn	{ position: relative; cursor: pointer; }
.dropdown-btn > ul.dropdown	{ position: absolute; top:80px; left:0; list-style-type: none; display: -webkit-flex; display: flex; flex-direction: column; z-index:17; opacity: 0; transition: all .3s; box-shadow: 0 3px 6px rgba(0, 0, 0, .05); pointer-events: none; }
.dropdown-btn > ul.dropdown.open	{ opacity: 1; top:50px; pointer-events: auto; }
.dropdown-btn > ul > li	{ border-bottom: 1px solid #fff; position: relative; min-width: 200px; }
.dropdown-btn > ul > li:last-child	{ border-bottom: 0; }
.dropdown-btn > ul > li:first-child	{ border-bottom: 0; height: 14px; background-color: transparent; }
.dropdown-btn > ul > li > a	{ display: -webkit-flex; display: flex; align-items: center; gap: 0 10px; color:#fff; background-color: #f1e6fa; height: 100%; padding: 16px 50px 16px 16px; white-space: nowrap; transition: all .5s; position: relative; position: relative; }
.dropdown-btn > ul > li:nth-child(2) > a::after	{ content:""; position: absolute; left:30px; top:-12px; border-style: solid; border-color: transparent transparent #f1e6fa transparent; border-width: 0 12px 12px 12px; transition: all .5s; }
.dropdown-btn > ul > li:nth-child(2) > a:hover::after	{ border-color: transparent transparent #6db506 transparent; }
.dropdown-btn > ul > li > a > svg	{ color: #fff; width: 20px; transition: all .5s; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 20px; opacity: 0; }
.dropdown-btn > ul > li > a > span	{ color:#333; font-size: 16px; font-weight: 400; line-height: 1; transition: all .3s; }
.dropdown-btn > ul > li > a > span svg	{ width: 14px; line-height: 1; vertical-align: bottom; margin: 0; }
.dropdown-btn > ul > li > a > em	{ font-size: 16px; line-height: 1; letter-spacing:.1rem; font-style: normal; }
.dropdown-btn > ul > li > a:hover	{ background-color: #6db506; }
.dropdown-btn > ul > li > a:hover > span	{ color: #fff; }
.dropdown-btn > ul > li > a:hover > svg	{ right: 10px; opacity: 1; }

/* ------------ TOP RECRUIT ------------- */
.torecruit	{ position: fixed; bottom: 0; left: 0; right: 0; width: 100%; height: 60px; display: -webkit-flex; display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 30; transition: all .3s; pointer-events: auto; }
.torecruit > a	{ width: 100%; height: 100%; background-color: #422991; display: -webkit-flex; display: flex; justify-content: center; align-items: center; padding: 0; transition: all .5s; position: relative; }
.torecruit > a::before	{ content:""; width: 0; height: 100%; background-color: #6db506; position: absolute; top: 0; bottom: 0; left: 0; right: 100%; opacity: 0; transition: all .5s; z-index: 1; }
.torecruit > a > strong	{ display: -webkit-flex; display: flex; align-items: center; border-right: 1px solid #fff; z-index: 2; }
.torecruit > a > strong > em	{ color:#fff; font-size: 24px; font-size: clamp(16px, 24px, 3vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 10px 0 0; transition: all .3s; }
.torecruit > a > strong > span	{ color:#fff; font-size: 16px; font-size: clamp(12px, 16px, 2vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 20px 0 0; transition: all .3s; }
.torecruit > a > p	{ color:#fff; font-size: 16px; font-size: clamp(13px, 24px, 2vw); font-weight: 500; line-height: 1; font-style: normal; padding: 0 30px 0 20px; transition: all .3s; z-index: 2; }
.torecruit > a > span	{ color:#fff; font-size: 14px; font-size: clamp(13px, 14px, 2vw); font-weight: 400; line-height: 1.5; transition: all .3s; display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 5px 30px 5px 20px; border: 1px solid #fff; position: relative; z-index: 2; }
.torecruit > a > span > i	{ font-style: normal; }
.torecruit > a > span > svg	{ color: #fff; width: 18px; transition: all .5s; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 8px; opacity: 1; }
.torecruit > a > img	{ position: absolute; right: 5%; bottom:0; z-index: 3; width: 120px; }
.torecruit.btn-off	{ opacity: 0; pointer-events: none; }
@media (min-width: 768px) { 
	.torecruit > a:hover::before	{ content:""; width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; opacity: 1; }
	.torecruit > a:hover > span > svg	{ right: 2px; opacity: 1; }
}
@media (max-width: 767.9px) { 
	.torecruit	{ opacity: 1; transition: all .5s; left: 0; right: 0; width: 100%; height: 50px; }
	.torecruit.fixed	{ opacity: 1; pointer-events: auto; }
	.torecruit > a > strong	{ display: none; padding: 0 20px; }
	.torecruit > a > p	{ font-size: 12px; line-height: 1.3; padding: 0 20px 0 0; }
	.torecruit > a > span	{ font-size: 12px; padding: 0px 25px 0 16px; height: 32px; }
	.torecruit > a > span > i	{ display: none; }
	.torecruit > a > img	{ display: none; }
}
.tocontact_area	{ width: 100%; margin: 0; display: -webkit-flex; display: flex; padding: 0; position: relative; z-index: 8; height: 400px; }
.tocontact_inner	{ display: -webkit-flex; display: flex; flex-direction: column; position: relative; width: 100%; height: 100%; z-index: 10; background-color: #e04d28; }
.tocontact_inner > a	{ background-color: #e04d28; position: relative; width: 100%; height: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.tocontact_inner > a::before	{ content:""; width: 0; height: 100%; background-color: #1e4098; position: absolute; top: 0; bottom: 0; left: 0; right: 100%; opacity: 0; transition: all .5s; z-index: 1; }
.tocontact_inner > a > strong	{ position: relative; display: -webkit-flex; display: flex; align-items: center; z-index: 2; }
.tocontact_inner > a > strong > em	{ color:#fff; font-size: 50px; font-size: clamp(40px, 52px, 4.5vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 0 40px; transition: all .3s; }
.tocontact_inner > a > strong > span	{ color:#fff; font-size: 16px; font-size: clamp(12px, 16px, 2vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 20px 0 0; transition: all .3s; }
.tocontact_inner > a > p	{ color:#fff; font-size: 18px; font-size: clamp(14px, 20px, 2vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 0 40px; transition: all .3s; z-index: 2; }
.tocontact_inner > a > span	{ color:#fff; font-size: 20px; font-size: clamp(16px, 24px, 2vw); font-weight: 400; line-height: 1.5; transition: all .3s; display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 10px 60px 10px 60px; border: 2px solid #fff; border-radius: 5px; position: relative; z-index: 2; }
.tocontact_inner > a > span > i	{ font-style: normal; }
.tocontact_inner > a > span > svg	{ color: #fff; width: 24px; transition: all .5s; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 8px; opacity: 1; }
@media (min-width: 768px) { 
	.tocontact_inner > a:hover::before	{ content:""; width: 100%; height: 100%; background-color: #1e4098; position: absolute; top: 0; bottom: 0; left: 0; right: 0; opacity: 1; }
	.tocontact_inner > a:hover > span > svg	{ right: 2px; opacity: 1; }
}
@media (max-width: 767.9px) { 
	.tocontact_area	{ width: 100%; padding: 0; margin: 0; height: 300px; }
	.tocontact_inner 	{ padding: 0; margin: 0; }
	.tocontact_inner > a > strong > em	{ font-size: 30px; padding: 0 0 20px; }
	.tocontact_inner > a > p	{ font-size: 16px; padding: 0 0 20px; }
	.tocontact_inner > a > span	{ padding: 10px 30px 10px 30px; }
	.tocontact_inner > a > span > svg	{ width: 18px; }
}

/* ------------ TOP MAIN ------------- */
.topmain	{ position: relative; width: 100%; height: calc(100vh - 60px); margin: 60px 0 0; min-height: 680px; display: -webkit-flex; display: flex; align-items: center; justify-content: center; position: relative; pointer-events: none; page-break-after: always; z-index: 1; }
.topmain::after	{ position: absolute; top: 0; left: 0; right: 0; bottom: 0; content:""; width: 100%; height: 100%; background-color: rgba(54,142,0,.5); mix-blend-mode: multiply; }

.topmain__wrapper	{ width: 100%; height: 100%; padding: 10% 10%; margin: 0; position: relative; z-index: 6; }
.topmain__wrapper > h2	{ color:#fff; font-size: 90px; font-size: clamp(60px, 120px, 8vw); font-weight: 100; line-height: 1; letter-spacing:-.3rem; padding: 0; margin: 0 0 40px; }
.topmain__wrapper > h3	{ color:#fff; font-size: 40px; font-size: clamp(24px, 40px, 3vw); line-height: 1.8; font-weight: 700; padding: 0; margin: 0;}
.topmain__wrapper > strong	{ display: block; color:#fff; font-size: 20px; font-size: clamp(16px, 22px, 1.6vw); line-height: 1.8; padding: 0; margin: 0; }
.topmain__wrapper > p	{ position: absolute; right: 12%; top: 15%; max-width: 600px; border-radius: 100%; padding: 30px 35px; background: #c0c0c0; display: flex; justify-content: center; align-items: center; }
.topmain__wrapper > p::before	{ display: block; content: ''; padding-top: 100%; }
.topmain__wrapper > p > span	{ display: -webkit-flex; display: flex; align-items: center; justify-content: center; flex-direction: column; width: 100%; height: 100%; }
.topmain__wrapper > p > span > b	{ color:#959595; font-size: 28px; font-size: clamp(18px, 40px, 2.5vw); line-height: 1; font-weight: 700; padding: 0 0 10px; }
.topmain__wrapper > p > span > i	{ color:#959595; font-size: 18px; font-size: clamp(14px, 24px, 1.2vw); line-height: 1.2; font-weight: 400; text-align: center; font-style: normal; }
/* 
@media (max-width: 767.9px) { 
	.topmain	{ width: 100%; height: calc(100vh - 60px); left: 0; margin: 0; }
	.topmain__wrapper	{ width: 100%; margin: 0; padding: 0 20px 30%; }
	.topmain__wrapper > h2	{ font-size: 40px; margin: 0 0 20px; }
	.topmain__wrapper > strong	{ font-size: 13px; }
	.topmain__wrapper > p	{ right: 10px; top: 65px; padding: 20px; z-index: 30; }
	.topmain__wrapper > p > span > b	{ font-size: 18px; }
	.topmain__wrapper > p > span > i	{ font-size: 12px; }
}
@media (max-width: 767.9px) { 
	.topmain	{ width: 100%; left: 0; }
	.btmlinkbtn > a	{ font-size: 30px; height: 60px; background-color: rgba(40,40,40,1); color:#ffffff; }
}
@media (max-width: 374px) { 
	.topmain__wrapper > h2	{ margin: 0 0 20px; }
	.topmain__wrapper > h1	{ margin: 0 0 20px; }
}
 */
.topmainbg	{ overflow: hidden; width: 100%; height: 100vh; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index:-1; }
/* .topmainbg::after	{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; content:""; background-color: rgba(30,54,152,.4); transition: all 2s; mix-blend-mode: multiply; } */
.topmainbg img	{ object-fit: cover; width: 100%; height: 100%; }
@media print{
	.mbYTP_wrapper, 
	#bgndVideo	{ display: none;  }
	.player	{ display: none;  }
	.topmain	{ height: 50vh; margin: 0; }
	.topmainbg	{ position: absolute; height: 50vh; }
	.btn	{ display: none; }
}
@media screen and (orientation: portrait) {
	.topmain__wrapper	{ display: -webkit-flex; display: flex; flex-direction: column; justify-content: center;  }
}

/* ------------ TOP SCROLL DOWN ------------- */
a.scrollDown { color:#ffffff; font-size: clamp(12px, 13px, 1vw); line-height: 1; font-weight: 400; position: absolute; bottom: 40px; right: 15%; z-index: 2; display: inline-block; text-decoration: none; }
#business a.scrollDown { transform: translateX(-50%); left: calc(50% - 15px); }
a.scrollDown { padding-top: 80px; }
a.scrollDown span	{ position: absolute; top: 0; left: 50%; width: 24px; height: 24px; margin-left: -12px; border-left: 1px solid #fff; border-bottom: 1px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); -webkit-animation: sdb 2s infinite; animation: sdb 2s infinite; opacity: 0; box-sizing: border-box; }
a.scrollDown span:nth-of-type(1)	{ -webkit-animation-delay: 0s; animation-delay: 0s; }
a.scrollDown span:nth-of-type(2)	{ top: 16px; -webkit-animation-delay: .15s; animation-delay: .15s; }
a.scrollDown span:nth-of-type(3)	{ top: 32px; -webkit-animation-delay: .3s; animation-delay: .3s; }
@-webkit-keyframes sdb	{
  0%	{ opacity: 0; }
  50%	{ opacity: 1; }
  100%	{ opacity: 0; }
}
@keyframes sdb	{
  0%	{ opacity: 0; }
  50%	{ opacity: 1; }
  100%	{ opacity: 0; }
}
@media (max-width: 767.9px) { 
	a.scrollDown { bottom: 20px; right: calc(50% - 26px); }
}
a.pganc	{ display: block; margin-top:-100px; padding-top:100px; }
@media (max-width: 767.9px) { 
	a.pganc	{ display: block; margin-top:-80px; padding-top:80px; }
}

/* ------------ TOP SLIDER ------------- */
.topSlider	{ width: 100%; height: 100vh - 60px); position: fixed; top: 60px; right: 0; bottom: 0; left: 0; transition: all 2s; z-index:-1; }
.topSlider::after	{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; content:""; background-color: rgba(30,54,152,.4); transition: all 2s; mix-blend-mode: multiply; }
.topSlider.overwrite::after	{ background-color: rgba(255,255,255,.8); transition: all 2s; }
.topSlider .slick-slider .slick-track,
.topSlider .slick-slider .slick-list	{ height: 100%; }
.tpslider	{ width: 100%; height: 100%; padding: 0; margin: 0; }
.topSlider .main	{ display: -webkit-flex; display: flex; width: 100%; height: 100%; padding: 0; margin: 0; background: url(../images/main01.jpg) center center no-repeat; background-size: cover; }
.tpslider .main01,
.tpslider .main02,
.tpslider .main03,
.tpslider .main04,
.tpslider .main05,
.tpslider .main06,
.tpslider .main07	{ width: 100%; height: 100%; padding: 0; margin: 0; }
.tpslider .main01	{ background: url(../images/main01.jpg) center center no-repeat; background-size: cover; }
.tpslider .main02	{ background: url(../images/main02.jpg) center center no-repeat; background-size: cover; }
.tpslider .slick-active .main01,
.tpslider .slick-active .main02	{ transform: scale(1.0); }
.slide-animation	{ animation: fadezoom 8s 0s forwards; }
@keyframes fadezoom { 0% { transform: scale(1); } 100% { transform: scale(1.1); }}
@media (max-width: 767.9px) { 
	.topSlider	{ width: 100%; top: 0; height: calc(100vh - 60px); }
	.tpslider .main01	{ background: url(../images/main01s.jpg) center center no-repeat; background-size: cover; }
	.tpslider .main02	{ background: url(../images/main02s.jpg) center center no-repeat; background-size: cover; }
}

/* ------------ TOP NEWS ------------- */
.topNews_wrapper	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px; margin: 200px 0 0; background-color: #fff; }
.topNews_inner	{ width: 90%; max-width: 1000px; display: -webkit-flex; display: flex; justify-content: space-between; flex-direction: column; background-color: #fff; margin: -200px 0 0; border-radius: 4px; padding: 60px 80px 20px; }
.topNews_inner > dl	{ width: 100%; display: -webkit-flex; display: flex; justify-content: space-between; padding: 0 0 15px; margin: 0 0 15px; border-bottom: 1px solid #f1e6fa; font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; font-weight: 400; font-family: "Meiryo UI", "Hiragino Sans", "Yu Gothic UI", "MS PGothic", "Hiragino Kaku Gothic ProN", sans-serif; }
.topNews_inner > dl dt	{ width: 160px; font-size: 16px; line-height: 1.4; font-weight: 400; letter-spacing:0; }
.topNews_inner > dl dd	{ width: calc(100% - 160px); }
.topNews_inner > dl dd a	{ color:#0048c4; display: block; font-size: 16px; line-height: 1.4; font-weight: 400; text-decoration: none; transition: all .3s; }
@media (min-width: 768px) { 
	.topNews_inner > dl dd a:hover	{ color:#6db506; text-decoration: underline; text-underline-offset: 0.3em; text-decoration-color: #0048c4; text-decoration-style: dotted; text-decoration-thickness: 2px; }
}
@media (max-width: 980px) { 
	.topNews_inner	{ width: 100%; padding: 30px 30px 20px; }
	.topNews_inner > dl dt	{ width: 120px; font-size: 14px; }
	.topNews_inner > dl dd	{ width: calc(100% - 120px); }
	.topNews_inner > dl dd a	{ font-size: 14px; }
}
@media (max-width: 767.9px) { 
	.topNews_wrapper	{ padding: 20px; }
	.topNews_inner	{ padding: 30px 20px 20px; }
	.topNews_inner > dl	{ flex-wrap: wrap; }
	.topNews_inner > dl dt	{ width: 100%; padding: 0 0 5px; font-size: 13px; }
	.topNews_inner > dl dd	{ width: 100%; }
	.topNews_inner > dl dd a	{ font-size: 13px; }
	.topNews_inner > dl:nth-child(n + 4)	{ display: none; }
}


/* ------------ SP NAVIGATION ------------- */
.spNavigation	{ display: none; }
@media (max-width: 767.9px) { 
	.spNavigation	{ display: none; }
	.spNavigation	{ width: 100%; display: -webkit-flex; display: flex; background-color: #fff; list-style-type: none; padding: 0 20px 40px; }
	.spNavigation li	{ line-height: 1; }
	.spNavigation img	{ width: 100%; vertical-align: bottom; line-height: 0; }
}

/* ------------ CONTENT ------------- */
.prditt_wrapper	{ display: -webkit-flex; display: flex; justify-content: center; position: relative; background-color: #fff; }
.prditt_img	{ width: 50%; position: relative; }
.prditt_img_inner	{ width: 100%; height: 100vh; position: -webkit-sticky; position: sticky; top: 0; left: 0; background: #fff url(../images/main02.jpg) center center / cover no-repeat; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: flex-end; }
.prditt_img_inner > h2	{ color:#000; font-size: 90px; font-size: clamp(24px, 38px, 2.6vw); font-weight: 400; line-height: 1; margin: 10vh 0 0; padding: 20px 10%; background-color: #fff; border-bottom: 0 solid #ddd; }
.prditt_content	{ width: 100%; max-width: 900px; display: -webkit-flex; display: flex; justify-content: center; align-items: center; flex-direction: column; padding: 10vh 0; }
.prditt_content > h2	{ width: 100%; margin: 0; font-size: clamp(34px, 42px, 4vw); line-height: 1; font-weight: 700; padding: 20px; text-align: center; color:#fff; background-color: #006142; }
.reflect .prditt_img	{ order:2; }
.reflect .prditt_img_inner	{ justify-content: flex-start; background: #fff url(../images/main03.jpg) center center / cover no-repeat; }
.reflect .prditt_content	{ order:1; }
.content_wrapper	{ padding: 40px 0 0; max-width: 900px; }
.content_wrapper > h2.spttle	{ margin: 0 0 20px; font-size: clamp(20px, 28px, 2vw); line-height: 1; font-weight: 700; padding: 20px; text-align: center; color:#006142; border: 2px solid #13387e; }
.content_wrapper > h2.kpttle	{ margin: 0 0 20px; font-size: clamp(30px, 38px, 3.2vw); line-height: 1; font-weight: 700; padding: 0; text-align: center; color:#ff7800; font-family: "游明朝", YuMincho, serif; }
.content_wrapper > h3	{ margin: 0 0 20px; font-size: clamp(22px, 34px, 2.4vw); line-height: 1.4; font-weight: 700; padding: 10px; text-align: center; border: 2px solid #13387e; position: relative; }
.content_wrapper > h3.mmtt	{ color:#fff; background-color: #72bc29; border: 2px solid #72bc29; }
.content_wrapper > h3 span	{ font-size: clamp(20px, 30px, 2.2vw); line-height: 1.4; font-weight: 400; }
.content_wrapper > h3 b	{ font-size: clamp(26px, 45px, 3.5vw); color:#006142; }
.content_wrapper > h3 > img	{ width: 120px; position: absolute; top: -20px; right: -20px; }
.content_wrapper > p	{ margin: 0 0 10px; font-size: clamp(14px, 15px, 1.1vw); line-height: 1.6; padding: 0; }
.content_wrapper > p strong	{ font-size: clamp(24px, 30px, 2vw); font-weight: 700; }

.content_table	{ width: 100%; margin: 0 0 1em; }
.content_table table	{ width: 100%; border-collapse: collapse; border-spacing: 0; }
.content_table table th, 
.content_table table td	{ padding: 10px; text-align: center; border: 1px solid #333; font-size: clamp(13px, 18px, 1.3vw); line-height: 1.5; }
.content_table table th	{ background-color: #eee; white-space: nowrap; }
.content_table table th span	{ display: block; font-size: clamp(12px, 16px, 1.1vw); font-weight: 400; text-align: center; }
.content_table table td	{ background-color: #fff; }
.content_table table td b	{ font-size: clamp(14px, 20px, 1.4vw); font-weight: 700; color:#006142; }

.washstyle	{ width: 100%; display: -webkit-flex; display: flex; flex-wrap: wrap; }
.washstyle > p	{ width: 100%; padding: 0; margin: 0 0 10px; }
.washstyle > strong	{ width: 200px; position: relative; background-color: #ffb6b6; color:#000; text-align: center; font-size: 18px; font-weight: 700; line-height: 1.3; display: -webkit-flex; display: flex; align-items: center; justify-content: center; margin: 0 20px 0 0; }
.washstyle > strong::after	{ content:""; position: absolute; right: -16px; border-style: solid; border-width: 16px 0 16px 16px; border-color: transparent transparent transparent #ffb6b6; }
.washstyle > ul	{ width: calc(100% - 245px); margin: 0 0 0 25px; }
.washstyle > ul > li	{  }

@media print{
	.prditt_wrapper	{ display: block; page-break-after: always; break-after: always; text-align: center; }
	.prditt_img	{ display: none; }
	.prditt_content	{ width: 100%; display: block; text-align: left; margin: 0 auto; }
	.prditt_content > h2	{ display: block; }
	.content_wrapper	{ padding: 40px; margin: 0 auto; display: block; page-break-after: always; break-after: always; }
	.content_wrapper.nobrake	{ page-break-after: avoid; break-after: avoid; }
	.content_wrapper > h2.kpttle	{ font-size: 42px; }
	.content_wrapper > h3	{ font-size: 38px; }
}
@media screen and (orientation: portrait) {
	.prditt_img	{ display: none; }
	.prditt_content	{ width: 100%; }
}
/* ------------ MODAL CUSTOM ------------- */
.modal-dialog	{ width: calc(100% - 80px); max-width: 1000px;  }
.modal-footer	{ justify-content: center; }
@media (max-width: 767.9px) { 
	.modal-dialog	{ max-width: 100%; }
}

/* ------------ SECOND ------------- */
.second_area	{ display: -webkit-flex; display: flex; justify-content: center; align-items: center; padding: 100px 0; margin: 0; background-color: #fff; }
.second_area.cont	{ background-color: #f8f4ec; }
.second_area__wrapper	{ width: 100%; max-width: 980px; padding: 0 40px; margin: 0; border-radius: 5px; position: relative; }
.second_area__wrapper.page_message	{ padding: 0 5%; }
.second_area__wrapper.page_philosophy	{ padding: 0; }
.second_area__wrapper > h4	{ display: -webkit-flex; display: flex; align-items: flex-end; padding: 0; margin: 0 0 30px; }
.second_area__wrapper > h4 > b	{ color:#373d51; font-size: 32px; font-size: clamp(20px, 32px, 3vw); line-height: 1; padding: 0 20px 0 0; }
.second_area__wrapper > h4 > span	{ color:#373d51; font-size: clamp(14px, 18px, 1.8vw); line-height: 1.2; padding: 0; }
.second_area__wrapper > strong	{ display: block; width: 100%; text-align: center; color:#373d51; font-size: 16px; font-size: clamp(14px, 16px, 1.8vw); font-weight: 500; line-height: 1; padding: 0 0 40px; margin: 0; }
h4.second_h4	{ display: -webkit-flex; display: flex; align-items: flex-end; padding: 0; margin: 0 0 30px; }
h4.second_h4 > b	{ color:#373d51; font-size: 32px; font-size: clamp(20px, 32px, 3vw); line-height: 1; padding: 0 20px 0 0; }
h4.second_h4 > span	{ color:#373d51; font-size: 18px; font-size: clamp(14px, 18px, 1.8vw); line-height: 1.2; padding: 0; }
.second_ttle	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; height: 400px; width: 100%; margin: 0 0 60px; }
.second_ttle > h1	{ color:#fff; font-size:42px; font-size: clamp(30px, 42px, 4.5vw); font-weight: 700; line-height: 1; padding: 10px 0 0; }
.second_ttle > b	{ color:#fff; font-size:42px; font-size: clamp(30px, 42px, 4.5vw); font-weight: 700; line-height: 1; padding: 0 0 10px; }
.second_ttle > strong	{ color:#fff; font-size:22px; font-size: clamp(18px, 22px, 2vw); font-weight: 700; line-height: 1; padding: 0 0 10px; }
.second_ttle > span	{ color:#fff; font-size:18px; font-size: clamp(14px, 16px, 2vw); font-weight: 500; line-height: 1; }
@media (max-width: 1200px) { 
	.second_area__wrapper	{ margin: 0 5%; padding: 0 5%; }
}
@media (max-width: 767px) { 
	.second_area	{ margin: 0; }
	.second_area__wrapper	{ transform: translateY(0); }
	.second_area	{ padding: 0 0 40px; }
	.second_area__wrapper,
	.second_area__wrapper.page_caremanager,
	.second_area__wrapper.page_daycare,
	.second_area__wrapper.page_homecare,
	.second_area__wrapper.page_homevisitcare,
	.second_area__wrapper.page_system,
	.second_area__wrapper.page_tools,
	.second_area__wrapper.page_service,
	.second_area__wrapper.page_recruit,
	.second_area__wrapper.page_company, 
	.second_area__wrapper.page_message,
	.second_area__wrapper.page_philosophy	{ padding: 0 20px; margin: 0; border-radius: 0; }
	.second_area__wrapper.page_caremanager::before,
	.second_area__wrapper.page_daycare::before,
	.second_area__wrapper.page_homecare::before,
	.second_area__wrapper.page_homevisitcare::before,
	.second_area__wrapper.page_system::before,
	.second_area__wrapper.page_tools::before,
	.second_area__wrapper.page_service::before, 
	.second_area__wrapper.page_recruit::before, 
	.second_area__wrapper.page_company::before, 
	.second_area__wrapper.page_philosophy::before, 
	.second_area__wrapper.page_message::before	{ height: 160px; }
	.second_area__wrapper::after	{ height: 160px; }
	h4.second_h4 > b	{ font-size: 20px; }
	h4.second_h4 > span	{ font-size: 14px; }
	.second_ttle	{ center; height: 160px; margin: 0 0 40px; }
	.second_ttle > b	{ font-size:30px; padding: 0 0 10px; }
	.second_ttle > span	{ font-size:14px; }
}

/* ------------ COMPANY ------------- */
.company_table	{ width: 100%; border-collapse: separate; border-spacing: 0; }
.company_table th	{ color: #7a703c; font-weight:700; width: 200px; }
.company_table td	{ color: #000; font-weight:500; width: calc(100% - 200px); }
.company_table th, 
.company_table td	{ font-size: 17px; letter-spacing: .1rem; line-height: 1.6; text-align: left; padding: 20px 0; vertical-align: top; text-align: left; }
.company_table th	{ color:#293816; border-top: solid 3px #293816; padding: 20px 0; vertical-align: top; text-align: left; }
.company_table th > span	{ color:#293816; font-size: 13px; letter-spacing: .1rem; line-height: 1.6; }
.company_table td	{ padding-left: 10px; border-top: solid 1px #ccc; }
.company_table td > span	{ display: block; }
.company_table td > ul	{ margin: 0 0 0 1.5em;  }
.company_table a	{ text-decoration: underline; color:#1e4098; }
.company_table td > ul > li > a	{ display: -webkit-flex; display: flex; align-items: center; }
.company_table td > ul > li > a img	{ width: 40px; margin: 0 0 0 10px;  }
@media (max-width: 840px) { 
	.company_table th	{ width: 120px; }
}
@media (max-width: 767px) { 
	.company_table	{ width: 100%; margin: 20px 0 30px; border-spacing: 0; }
	.company_table th	{ padding-bottom: 0; border: none; }
	.company_table th, 
	.company_table td	{ font-size: 13px; display: block; width: 100%; line-height: 1.4; }
	.company_table th	{ font-size: 14px; padding: 16px 20px 5px 30px; position: relative; border-top: dotted 1px #ddd; }
	.company_table th > span	{ font-size: 12px; line-height: 2; }
	.company_table th::before	{ content:""; position: absolute; left:0; top: 60%; height: 3px; width: 23px; background-color: #7a703c; }
	.company_table td	{ padding: 5px 30px 16px; }
	.company_table td	{ border-top: 0; }
	.company_table td > ul > li > a img	{ width: 30px; margin: 0 0 0 5px;  }
}

/* ------------ CONTACT ------------- */
.contact_content	{ width: 100%; margin: 0; padding: 0 0 100px; }
.contact_content > p	{ width: 100%; margin: 0 0 40px; padding: 0;  font-size: 16px; color:#000; line-height: 1.5; }

.contact_content > h2	{ font-size: 26px; line-height: 1.6; font-weight: 700; position: relative; padding: 0 0 20px; margin: 40px 0 30px; }
.contact_content > h2:after	{ position: absolute; bottom: 0; left: 0; width: 100%; height: 10px; content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #ccc59e, #ccc59e 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #ccc59e, #ccc59e 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.contact_content > h3	{ font-size: 22px; line-height: 1.4; font-weight: 700; position: relative; padding: 20px 40px; margin: 40px 0 20px; border: 4px solid #000; }
.contact_content > h3:before	{ position: absolute; top: 4px; left: 4px; width: calc(100% - 8px); height: calc(100% - 8px); content: ''; border: 1px solid #000; }
.contact_content > h4	{ font-size: 22px; line-height: 1.4; font-weight: 700; padding: .5em 1em; margin: 20px 0 10px; border-left: 5px solid #000; }
.contact_content > h5	{ font-size: 18px; line-height: 1.4; font-weight: 700; padding: 10px 20px; margin: 20px 0 10px; border: 2px dotted #ccc; }

.contact_content dl	{ display: -webkit-flex; display: flex; justify-content: space-between; flex-wrap: wrap; }
.contact_content dl > dt, 
.contact_content dl > dd	{ padding: 20px 0 40px; font-size: 16px; line-height: 1.5; border-top: 1px solid #ccc; }
.contact_content dl > dt	{ width: 200px; border-top: 3px solid #293816; color:#293816; }
.contact_content dl > dd	{ width: calc(100% - 200px); }
.contact_content dl > dd > div	{ padding: 0 0 20px;  }
.contact_content ul.error	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; padding: 20px 30px 15px; margin: 0 0 40px; border: 1px solid #d60808; border-radius: 5px; }
.contact_content ul.error > li	{ padding: 0 0 5px; margin: 0 0 0 1em; font-size: 15px; line-height: 1.5; color:#d60808; }
.contact_content textarea, 
.contact_content input[type="date"],
.contact_content input[type="text"],
.contact_content input[type="email"],
.contact_content input[type="tel"],
.contact_content input[type="numeric"],
.contact_content input[type="number"],
.contact_content input[type="password"]	{ font-size: 16px; color:#000; width: 100%; height: 50px; padding: 12px 20px; border: none; background-color: #ebf1f8; border:none; border:0; border-radius: 4px; transition: all .2s; }
.contact_content textarea:focus,
.contact_content input[type="text"]:focus,
.contact_content input[type="email"]:focus,
.contact_content input[type="numeric"]:focus,
.contact_content input[type="tel"]:focus,
.contact_content input[type="number"]:focus,
.contact_content input[type="password"]:focus	{ box-shadow:0 0 2px .1rem rgba(0,54,243,.5); background-color: #fff; }
.select	{ position: relative; float: left; min-width: 100%; margin:0; }
.contact_content select::-ms-expand	{ display: none; }
.select:after	{ content: '<>'; text-align: center; font: 18px "Consolas", monospace; color: #999; font-weight: 700; transform: translateY(-50%) rotate(90deg); right: 4px; top: 50%; padding: 0 0 10px; width: 48px;  border-bottom: 1px solid #ccc; position: absolute; pointer-events: none; background-color: #ebf1f8; }
.select select	{ -webkit-appearance: none; -moz-appearance: none; appearance: none; display: block; width: 100%; height: 50px; float: right; margin: 0px; padding: 0px 24px; font-size: 16px; line-height: 1.75; color: #000; background-color: #ebf1f8; background-image: none; -ms-word-break: normal; word-break: normal; border:none; border:0; border-radius: 4px; cursor: pointer; }
.contact_content textarea	{ min-height: 200px; }
.contact_content > form > div	{ padding: 0 0 30px; margin: 0; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.contact_content > form > div > label	{ cursor: pointer; }
.contact_content > form > div > label > input	{ margin: 0 5px 0 0; cursor: pointer; }
.contact_content > form > div > label > a	{ text-decoration: underline; color:#1e4098; }
.contact_content > form > div > button	{ color:#fff; font-size: 18px; line-height: 1.5; background-color: #1e4098; font-weight: 700; display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 12px 40px; min-width: 280px; margin: 0; border-radius: 50px; transition: all .5s; border: 2px solid #1e4098; position: relative; }
.contact_content > form > div > button.back	{ background-color: #aaa; min-width: 100px; border: 2px solid #aaa; margin: 0 0 0 20px; }
.contact_content > form > div.btn_equal	{ display: -webkit-flex; display: flex; justify-content: center; flex-direction: row; }
.zipbtn	{ display: -webkit-flex; display: flex; align-items: center; gap: 0 10px; }
.zipbtn input	{ max-width: 200px; }
.sexbtn	{ display: -webkit-flex; display: flex; align-items: center; gap: 0 10px; }
@media (min-width: 768px) { 
	.contact_content input[type="date"]	{ cursor: pointer; }
	.contact_content > form > div > button:hover	{ color:#1e4098; background-color: #fff; }
}
@media (max-width: 840px) { 
	.contact_content	{ padding: 0; }
	.contact_content > p	{ margin: 0 0 20px; font-size: 14px; }
	.contact_content ul.error	{ padding: 15px 20px 10px; margin: 0 0 20px; }
	.contact_content ul.error > li	{ font-size: 13px; }
	.contact_content dl > dt, 
	.contact_content dl > dd	{ width: 100%; padding: 0 0 20px; font-size: 14px; line-height: 1.2; border-top: 0; border: none; }
	.contact_content dl > dt	{ padding: 0 0 10px; }
	.contact_content dl > dd > div	{ padding: 0 0 10px; }
	.contact_content > h2	{ font-size: 20px;  padding: 0 0 20px; margin: 20px 0 20px; }
	.contact_content > h3	{ font-size: 18px; padding: 10px 20px; margin: 20px 0 10px; }
	.contact_content > h4	{ font-size: 16px; }
	.contact_content > h5	{ font-size: 15px; padding: 5px 10px; }
}
@media (max-width: 767px) { 
	.contact_content > form > div > button	{ font-size: 14px; padding: 10px; min-width: 180px; }
	.contact_content > form > div > button.back	{ min-width: 80px; margin: 0 0 0 10px; }
}

.textwrapper	{ width: 100%; height: 300px; padding: 20px 10px 20px 20px; margin: 0 auto 40px; border: none; background-color: #e9eef1; border:none; border:0; border-radius: 5px; }
.textinner	{ width: 100%; height: 100%; overflow-y: scroll; font-size: 14px; line-height: 1.5; color:#000; white-space: pre-wrap; }
@media (max-width: 767px) { 
	.textwrapper	{ height: 200px; padding: 10px 5px 10px 10px; border-radius: 8px; }
	.textinner	{ font-size: 13px; }
}


/* ------------ TOP PICK UP ------------- */
.topPickup_wrapper	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 100px 50px; background-color: #f8f4ec; position: relative; }
/* .topPickup_wrapper::before	{ content:""; position: absolute; bottom: 0; top: 0; left: 0; bottom: 0; width: 100%; height: 100%; background: url(../images/bksky2.jpg) center center / cover no-repeat; z-index: 1; mix-blend-mode: screen; } */
.topPickup_inner	{ width: 100%; max-width: 1400px; display: -webkit-flex; display: flex; justify-content: space-between; flex-wrap: wrap; }
.topPickup_inner > h3	{ width: 100%; display: -webkit-flex; display: flex; justify-content: center; align-items: flex-end; margin: 0 0 40px; position: relative; }
.topPickup_inner > h3 > b	{ color:#333; font-size: clamp(20px, 42px, 3.4vw); font-weight: 400; line-height: 1; letter-spacing:.2rem; }
.topPickup_inner > h3 > a	{ color:#6db506; font-size: clamp(14px, 20px, 1.5vw); font-weight: 400; line-height: 1.4; position: absolute; bottom: 0; right: 0; display: -webkit-flex; display: flex; align-items: center; justify-content: center; white-space: nowrap; }
.topPickup_inner > h3 > a svg	{ color:#6db506; width: 20px; }
.topPickup_area_inner	{ width: 100%; display: -webkit-flex; display: flex; justify-content: space-between; padding: 0; }
.topPickup_area_inner > h2	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 40px; }
.topPickup_area_inner > h2 b	{ color:#959595; font-size: clamp(40px, 52px, 4.5vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 0 20px; transition: all .3s; }
.topPickup_area_inner > h2 span	{ color:#959595; font-size: clamp(14px, 30px, 3vw); font-weight: 400; line-height: 1; }
.topPickup_area_inner > a	{ width: calc(25% - 10px); display: -webkit-flex; display: flex; flex-direction: column; align-items: center; background-color: #fff; padding: 0 0 20px; margin: 0; transition: all .3s; position: relative; }
.topPickup_area_inner > a > p	{ width: 100%; overflow: hidden; line-height: 0; position: relative; }
.topPickup_area_inner > a > p > strong	{ display: block; background: transparent center center / cover no-repeat; width: 100%; height: 0; padding: 0 0 80%; overflow: hidden; line-height: 0; transition: all 1s; opacity: 1; -webkit-backface-visibility: hidden; backface-visibility: hidden; position: relative; }
.topPickup_area_inner > a > p > .caption	{ position: absolute; display: -webkit-flex; display: flex; align-items: center; justify-content: center; top: 30px; left: -50px; width: 200px; padding: 2px 10px; background: #6db506; transform: rotate(-45deg); }
.topPickup_area_inner > a > p > .caption span	{ color: #fff; font-size: clamp(13px, 18px, 1vw); line-height: 1.3; font-weight: 400; font-style: normal; }
.topPickup_area_inner > a > b	{ color:#959595; font-size: clamp(16px, 18px, 1.2vw); line-height: 1.3; font-weight: 400; padding: 20px 5% 0; width: 100%; }
.topPickup_area_inner > a > b svg	{ width: 18px; }
.topPickup_area_inner > a > span	{ color:#959595; font-size: 14px; font-size: clamp(13px, 16px, 1.3vw); line-height: 1.6; font-weight: 400; padding: 10px 5% 20px; width: 100%; }
.topPickup_area_inner > a > i	{ font-size: clamp(12px, 16px, 1.8vw); line-height: 1; font-style: normal; font-weight: 400; display: -webkit-flex; display: flex; justify-content: center; align-items: center; border-radius: 100px; background-color: rgba(0,0,0,1); color:#fff; width: 80%; max-width: 200px; padding: 10px; transition: all .3s; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: 20px; }
.topPickup_area_inner > a > i svg	{ width: 20px; color:#fff; line-height: 1; margin: 0 0 0 10px; }
.topPickup_area_inner .topPickupBox3	{ width: calc(25% - 10px); box-sizing: border-box; border-radius: 4px; padding: 20px; }
.topPickup_area_inner .topPickupBox3	{ background-color: #fff; }
.topPickup_area_inner .topPickupBox3 > h5	{ display: block; text-align: center; padding: 10px 5px; margin: 0 0 15px; font-size: clamp(14px, 22px, 1.8vw); font-weight: 400; line-height: 1; border-radius: 5px; color:#959595000; }
.topPickup_area_inner .topPickupBox3 > form	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column;  font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; font-weight: 400; font-family: "Meiryo UI", "Hiragino Sans", "Yu Gothic UI", "MS PGothic", "Hiragino Kaku Gothic ProN", sans-serif; }
.topPickup_area_inner .topPickupBox3 > p	{ width: 100%; text-align: center; padding: 10px 0 0; }
.topPickup_area_inner .topPickupBox3 > p a	{ width: 100%; color:#6db506; font-size: 15px; font-weight: 400; line-height: 1.4; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
.topPickup_area_inner .topPickupBox3 > p a svg	{ color:#6db506; width: 20px; }
.topPickup_area_inner .fmsetlz	{ display: -webkit-flex; display: flex; justify-content: space-between; align-items: center; padding: 0 0 10px; width: 100%; }
.topPickup_area_inner .fmsetlz > label	{ font-size: 13px; font-weight: 400; text-align: right; width: 45px; justify-content: flex-end; cursor: pointer; }
.topPickup_area_inner .fmsetlz > select	{ padding: 2px; font-size: 14px; width: calc(100% - 50px); cursor: pointer; }
.topPickup_area_inner .form-inline button	{ display: block; width: 100%; padding: 15px 10px; margin: 5px 0; font-size: 17px; font-weight: 400; line-height: 1; letter-spacing:.1rem; color:#fff; cursor: pointer; background-color: #959595; border: 0; border-radius: 5px; transition: all .3s;  }
.tpuplis	{ width: calc(25% - 10px); background-color: #fff; padding: 0 0 20px; margin: 0; transition: all .3s; position: relative; overflow: hidden; display: -webkit-flex; display: flex; flex-direction: column; }
.tpuplis > a	{ color:#000; font-size: clamp(10px, 18px, 1.2vw); line-height: 1.3; font-weight: 400; padding: 16px 5% 0; width: 100%; }
.topPickslider a	{ display: block; background: transparent center center / cover no-repeat; width: 100%; }
.caption	{ position: absolute; display: -webkit-flex; display: flex; align-items: center; justify-content: center; top: 30px; left: -50px; width: 200px; padding: 2px 10px; background: #fff; transform: rotate(-45deg); }
.caption span	{ color: #7900d8; font-size: clamp(9px, 18px, 1vw); line-height: 1.3; font-weight: 400; font-style: normal; }
@media only screen and (max-width: 1050px)	{
	.tpuplis, 
	.topPickup_area_inner > a, 
	.topPickup_area_inner .topPickupBox3	{ width: calc(50% - 10px); margin: 0 0 20px; }
	.topPickup_area_inner > a p strong	{ padding: 0 0 70%; }
}
@media (min-width: 668px) { 
	.tpuplis > a:hover	{ color:#6db506; }
	.topPickup_area_inner > a:hover > b	{ color:#6db506; }
	.topPickup_area_inner > a:hover > span	{ color:#666; }
	.topPickup_area_inner > a:hover > p strong	{ opacity: .7; transform: scale(1.1) rotate(0.001deg); }
	.topPickup_area_inner > a:hover > i	{ background-color: #6db506; }
	.topPickup_area_inner .form-inline button:hover	{ background-color: #6db506; }
}
@media (max-width: 667.999px) { 
	.topPickup_wrapper	{ padding: 30px 20px; }
	.topPickup_inner > h3	{ justify-content: space-between; margin: 0 0 10px; }
	.topPickup_area_inner .topPickupBox3	{ display: none; }
	.topPickup_area_inner .topPickupBox3 > h5	{ font-size: 20px; }
	.topPickup_area	{ width: 100%; padding: 0; margin: 0; }
	.topPickup_area_inner 	{ padding: 0; margin: 0; }
	.topPickup_area_inner h2	{ margin: 0 0 20px; }
	.topPickup_area_inner h2 b	{ font-size: 30px; padding: 0 0 15px; text-align: center; }
	.topPickup_area_inner h2 span	{ font-size: 16px; }
	.topPickup_area_inner > a	{ width: 100%; }
	.tpuplis	{ width: calc(33% - 5px); padding: 0; margin: 0 0 20px; }
	.tpuplis > a	{ padding: 10px 5px; }
	.caption	{ top: 10px; left: -30px; width: 100px; }
}
.catebtn	{ width: 100%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; margin: 0; padding: 40px 0 0; }
.catebtn > a	{ display: -webkit-flex; display: flex; align-items: center; justify-content: center; background-color: #959595; border-radius: 500px; padding: 20px 60px; color:#fff; font-size: clamp(16px, 22px, 1.5vw); font-weight: 400; line-height: 1.3; transition: all .3s; }
.catebtn > a svg	{ width: 20px; color:#fff; line-height: 1; transition: all .3s; }
@media (min-width: 768px) { 
	.catebtn > a:hover	{ font-style: normal; background-color: #6db506; text-decoration: none; transform: translateY(-5px); }
}
@media (max-width: 767.9px) { 
	.catebtn	{ padding: 0 0 20px; }
	.catebtn > a	{ width: 100%; padding: 15px; color:#fff; }
}


/* ------------ SP LINK AREA ------------- */
.spsplink_area	{ width: 100%; position: relative; display: -webkit-flex; display: flex; justify-content: center; flex-direction: column;  padding: 30px 20px 20px; margin: 0; background-color: #fff; }
.spsplink_area > h3	{ text-align: center;  font-size: 20px; font-weight: 400; line-height: 1; }
.spsplink_area_inner	{ width: 100%; display: -webkit-flex; display: flex; justify-content: space-between; padding: 20px 0 0; flex-wrap: wrap; }
.spsplink_area_inner > a	{ color:#500bb2; width: calc(33% - 6px); min-height: 84px; display: -webkit-flex; display: flex; align-items: center; justify-content: center; padding: 5px; margin: 0 0 10px; text-align: center; font-size: 15px; line-height: 1.2; font-weight: 700; background-color: #f2f2f2; border: 3px solid #cccccc; border-radius: 5px; }
.spsplink_area_inner > a img	{ width: 70%; }
@media (min-width: 668px) { 
	.spsplink_area	{ display: none; }
}


/* ------------ SPECIAL AREA ------------- */
.special_area	{ width: 100%; position: relative; display: -webkit-flex; display: flex; justify-content: center; padding: 0; margin: 0; background-color: #fff; }
.special_area_inner	{ width: 100%; max-width: 1100px; display: -webkit-flex; display: flex; justify-content: space-between; padding: 100px 50px; flex-wrap: wrap; }
.special_area_inner > h2	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 40px; }
.special_area_inner > h2 b	{ color:#959595; font-size: 50px; font-size: clamp(40px, 52px, 4.5vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 0 20px; transition: all .3s; }
.special_area_inner > h2 span	{ color:#959595; font-size: 20px; font-size: clamp(14px, 30px, 3vw); font-weight: 400; line-height: 1; }
.special_area_inner > a	{ width: calc(50% - 20px); display: -webkit-flex; display: flex; flex-direction: column; align-items: center; background-color: #fff; padding: 0; margin: 0; transition: all .3s; position: relative; }
.special_area_inner > a > div	{ width: 100%; overflow: hidden; line-height: 0; position: relative; }
.special_area_inner > a > div::before	{ content:""; position: absolute; top: 5px; right: 5px; bottom: 5px; left: 5px; border: 1px solid #fff; z-index: 3; pointer-events: none; }
.special_area_inner > a > div strong	{ display: block; background: transparent center center / cover no-repeat; width: 100%; height: 0; padding: 0 0 65%; overflow: hidden; line-height: 0; transition: all 1s; opacity: 1; }
.special_area_inner > a > div ul	{ position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); left: 0; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: #fff; padding: 5px 20px; list-style-type: none; }
.special_area_inner > a > div ul li	{ width: 100%; text-align: center; color:#333; }
.special_area_inner > a > div ul li:first-child	{ padding: 5px 0 3px; }
.special_area_inner > a > div ul li:last-child	{ padding: 3px 0 5px; }
.special_area_inner > a > div ul li.sub	{ font-size: clamp(13px, 22px, 1vw); line-height: 1; }
.special_area_inner > a > div ul li.ttle	{ font-size: clamp(18px, 32px, 1.8vw); line-height: 1; font-weight: 400; }
.special_area_inner > a > b	{ color:#959595; font-size: 18px; font-size: clamp(18px, 20px, 1.4vw); line-height: 1.3; font-weight: 400; padding: 20px 5% 0; width: 100%; }
.special_area_inner > a > span	{ color:#959595; font-size: 14px; font-size: clamp(13px, 16px, 1.3vw); line-height: 1.6; font-weight: 400; padding: 10px 5% 20px; width: 100%; }
.special_area_inner > a > i	{ font-size: clamp(12px, 16px, 1.8vw); line-height: 1; font-style: normal; font-weight: 400; display: -webkit-flex; display: flex; justify-content: center; align-items: center; border-radius: 100px; background-color: rgba(0,0,0,1); color:#fff; width: 80%; max-width: 200px; padding: 10px; transition: all .3s; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: 20px; }
.special_area_inner > a > i svg	{ width: 20px; color:#fff; line-height: 1; margin: 0 0 0 10px; }
@media (min-width: 768px) { 
	.special_area_inner > a:hover > b	{ color:#6db506; }
	.special_area_inner > a:hover > span	{ color:#666; }
	.special_area_inner > a:hover > div strong	{ transform: scale(1.1); opacity: .7; }
	.special_area_inner > a:hover > i	{ background-color: #6db506; }
}
@media (max-width: 767.9px) { 
	.special_area	{ width: 100%; padding: 0; margin: 0; background-color: #f8f4ec; }
	.special_area_inner 	{ padding: 40px 20px 20px; margin: 0; gap: 0; }
	.special_area_inner > h2	{ margin: 0 0 20px; }
	.special_area_inner > h2 b	{ font-size: 30px; padding: 0 0 15px; text-align: center; }
	.special_area_inner > h2 span	{ font-size: 16px; }
	.special_area_inner > a	{ width: 100%; margin: 0 0 20px; }
}

/* ------------ BANNER AREA ------------- */
.spbnn_area	{ width: 100%; position: relative; display: -webkit-flex; display: flex; justify-content: center; padding: 0; margin: 0; background-color: #f8f4ec; }
.spbnn_area_inner	{ width: 100%; max-width: 1100px; display: -webkit-flex; display: flex; justify-content: space-between; padding: 100px 50px 140px; flex-wrap: wrap; }
.spbnn_area_inner > h2	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 40px; }
.spbnn_area_inner > h2 b	{ color:#333; font-size: 50px; font-size: clamp(40px, 52px, 4.5vw); font-weight: 400; line-height: 1; font-style: normal; padding: 0 0 20px; transition: all .3s; }
.spbnn_area_inner > h2 span	{ color:#333; font-size: 20px; font-size: clamp(14px, 30px, 3vw); font-weight: 400; line-height: 1; }
.spbnn_area_inner > a	{ width: calc(33% - 20px); display: -webkit-flex; display: flex; flex-direction: column; align-items: center; background-color: #fff; padding: 0 0 70px; margin: 0 0 40px; transition: all .3s; position: relative; }
.spbnn_area_inner > a > p.photo	{ width: 100%; overflow: hidden; line-height: 0; position: relative; }
.spbnn_area_inner > a > p.photo strong	{ display: block; background: transparent center center / cover no-repeat; width: 100%; height: 0; padding: 0 0 65%; overflow: hidden; line-height: 0; transition: all 1s; opacity: 1; }
.spbnn_area_inner > a > p.txt	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; width: 100%; }
.spbnn_area_inner > a > p.txt b	{ color:#333; font-size: clamp(18px, 20px, 1.4vw); line-height: 1.3; font-weight: 400; padding: 20px 5% 0; width: 100%; }
.spbnn_area_inner > a > p.txt span	{ color:#333; font-size: clamp(12px, 13px, 1.3vw); line-height: 1.6; font-weight: 400; padding: 10px 5% 20px; width: 100%;  font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; font-weight: 400; font-family: "Meiryo UI", "Hiragino Sans", "Yu Gothic UI", "MS PGothic", "Hiragino Kaku Gothic ProN", sans-serif; }
.spbnn_area_inner > a > p.txt i	{ font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; font-weight: 400; letter-spacing:.1rem; font-family: "Meiryo UI", "Hiragino Sans", "Yu Gothic UI", "MS PGothic", "Hiragino Kaku Gothic ProN", sans-serif; font-size: clamp(12px, 14px, 1.4vw); line-height: 1.2; font-style: normal; font-weight: 400; display: -webkit-flex; display: flex; justify-content: center; align-items: center; border-radius: 100px; background-color: #959595; color:#fff; width: 80%; max-width: 200px; padding: 10px; transition: all .3s; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: 20px; }
.spbnn_area_inner > a > p.txt i svg	{ width: 16px; color:#fff; line-height: 1; margin: 0 0 0 5px; }
@media (min-width: 768px) { 
	.spbnn_area_inner > a.lastone	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: row; align-items: center; padding: 0; margin: 40px 0 0; }
	.spbnn_area_inner > a.lastone > p.photo	{ width: 40%; overflow: hidden; line-height: 0; position: relative; }
	.spbnn_area_inner > a.lastone > p.photo strong	{ height: 0; padding: 0 0 55%; overflow: hidden; line-height: 0; transition: all 1s; opacity: 1; }
	.spbnn_area_inner > a.lastone > p.txt	{ width: 60%; display: -webkit-flex; display: flex; flex-direction: row; align-items: center; }
	.spbnn_area_inner > a.lastone > p.txt b	{ padding: 0 20px; width: auto; }
	.spbnn_area_inner > a.lastone > p.txt span	{ padding: 0 20px 0 0; width: auto; }
	.spbnn_area_inner > a.lastone > p.txt i	{ position: static; width: 200px; transform: translateX(0) translateY(0); }
	/*.spbnn_area_inner > a:hover	{ transform: translateY(-5px); }*/
	.spbnn_area_inner > a:hover > p.photo strong	{ transform: scale(1.05); opacity: .6; }
	.spbnn_area_inner > a:hover > p.txt b	{ color:#6db506; }
	.spbnn_area_inner > a:hover > p.txt span	{ color:#666; }
	.spbnn_area_inner > a:hover > p.txt i	{ background-color: #6db506; }
}
@media (max-width: 980px) { 
	.spbnn_area	{ padding: 0 0 100px; }
	.spbnn_area_inner > a	{ width: calc(50% - 5px); padding: 0 0 38px; margin: 0 0 10px; }
	.spbnn_area_inner > a > p.txt b	{ font-size: 13px; padding: 10px 5% 5px; }
	.spbnn_area_inner > a > p.txt span	{ font-size: 11px; padding: 0 5% 10px; }
	.spbnn_area_inner > a > p.txt i	{ font-size: 11px; width: 90%; max-width: 95%; padding: 6px; bottom: 12px; }
	.spbnn_area_inner > a > p.txt i svg	{ width: 12px; margin: 0; }
}
@media (max-width: 767.9px) { 
	.spbnn_area	{ width: 100%; margin: 0; }
	.spbnn_area_inner 	{ padding: 0 20px 20px; margin: 0; }
	.spbnn_area_inner > a	{ display: none; }
	.spbnn_area_inner > a.lastone	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; background-color: #fff; padding: 0 0 60px; margin: 0 0 40px; transition: all .3s; position: relative; }
	.spbnn_area_inner > a.lastone > p.photo	{ width: 100%; overflow: hidden; line-height: 0; position: relative; }
	.spbnn_area_inner > a.lastone > p.photo strong	{ display: block; background: transparent center center / cover no-repeat; width: 100%; height: 0; padding: 0 0 55%; overflow: hidden; line-height: 0; transition: all 1s; opacity: 1; }
	.spbnn_area_inner > a.lastone > p.txt	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; width: 100%; }
	.spbnn_area_inner > a.lastone > p.txt b	{ color:#333; font-size: 20px; line-height: 1.3; font-weight: 400; padding: 10px 20px 0; width: 100%; }
	.spbnn_area_inner > a.lastone > p.txt span	{ color:#333; font-size: 14px; line-height: 1.6; font-weight: 400; padding: 5px 22px; }
	.spbnn_area_inner > a.lastone > p.txt i	{ font-size: 12px; width: 90%; padding: 10px; bottom: 15px; }
	.spbnn_area_inner > a.lastone > p.txt i svg	{ width: 16px; color:#fff; line-height: 1; margin: 0 0 0 5px; }
}

/* ------------ TOP BANNER ------------- */
.topbnn	{ display: -webkit-inline-flex; display: inline-flex; margin: 40px 0 0; }
.topbnn > a	{ display: -webkit-flex; display: flex; align-items: center; justify-content: flex-start; padding: 1% 10%; border: 2px solid rgba(241,43,0,1); transition: all .5s; background-color: rgba(255,255,255,.8); position: relative; }
.topbnn > a::after	{ content:""; width: 0; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 100%; background-color: rgba(241,43,0,0); transition: all .5s; z-index: 1; }
.topbnn > a span	{ color:#6db506; font-size: clamp(14px, 20px, 2vw); font-weight: 700; position: relative; z-index: 2; transition: all .5s; }
.topbnn > a svg	{ width: 40px; color:#6db506; position: relative; z-index: 2; transition: all .5s; }
@media (min-width: 768px) { 
	.topbnn > a:hover::after	{ width: 100%; right: 0; background-color: rgba(241,43,0,1); }
	.topbnn > a:hover span	{ color:#fff; }
	.topbnn > a:hover svg	{ color:#fff; }
}
@media (max-width: 767.9px) { 
	.topbnn	{ margin: 20px 0 0; }
	.topbnn > a	{ padding: 2% 5%; }
	.topbnn > a svg	{ width: 30px; }
}

/* ------------ FOOTER ------------- */
footer	{ background-color: #fff; z-index: 8; display: -webkit-flex; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 60px 10%; margin: 0; position: relative; }
footer .container	{  width: 100%; max-width: 980px; text-align: center; font-size: 12px; padding: 30px 0; }

/* ------------ GO TOP ------------- */
.gotop { position: fixed; bottom: 0; right: 0; transition: all 1s; opacity: 0; z-index: 40; width: 60px; height: 60px; pointer-events: none; }
.gotop a { display: -webkit-flex; display: flex; align-items: center; justify-content: center; line-height: 0; transition: all .5s; height: 100%; width: 100%; background-color: #848484; }
.gotop a span { color:#fff; font-size: 13px; font-weight: 500; line-height: 1; letter-spacing:.2rem; padding: 0; margin: 3px 0 0; }
.gotop a svg { color:#fff; width: 28px; padding: 0; margin: 0;  transform:rotate(-90deg); }
.gotop.fixed { opacity: 1; pointer-events: auto; }
@media (min-width: 768px) { 
	.gotop a:hover { background-color: #6db506; }
	.gotop > a:hover span,
	.gotop > a:hover .icon	{ color:#fff;  }
}
@media (max-width: 767.9px) { 
	.gotop { bottom: 50px; width: 50px; height: 50px; pointer-events: none; }
	.gotop a { background-color: transparent; }
	.gotop a svg { color:#6db506; width: 34px; }
}
@media print{
	.gotop { display: none; }
}

/* ------------ BLOCK ------------- */
@media (max-width: 767.9px)	{ .pconly { display: none!important; } }
@media (min-width: 768px)	{ .pconly { display: inline-block!important; } }
@media (max-width: 767.9px)	{ .sponly { display: inline-block!important; } }
@media (min-width: 768px)	{ .sponly { display: none!important; } }
.noimg	{ display: none!important; }
.delay01	{ transition-delay: 0.1s; animation-delay: 0.1s; }
.delay02	{ transition-delay: 0.2s; animation-delay: 0.2s; }
.delay03	{ transition-delay: 0.3s; animation-delay: 0.3s; }
.delay04	{ transition-delay: 0.4s; animation-delay: 0.4s; }
.delay05	{ transition-delay: 0.5s; animation-delay: 0.5s; }
.delay06	{ transition-delay: 0.6s; animation-delay: 0.6s; }
.delay07	{ transition-delay: 0.7s; animation-delay: 0.7s; }
.delay08	{ transition-delay: 0.8s; animation-delay: 0.8s; }
.delay09	{ transition-delay: 0.9s; animation-delay: 0.9s; }
.delay10	{ transition-delay: 1s; animation-delay: 1s;}

/* ------------ clearfix ------------- */
span.clearfix	{ display:block; }
.clearfix:after	{ content:"."; display:block; height:0; clear:both; visibility:hidden; font-size:0; line-height:0; }
.clearfix	{ *overflow:hidden; *zoom:1; }
.clearfix:not(:target)	{ /* overflow:hidden\9; */ /* zoom:1\9; */ }
* html .clearfix	{ height:1%; overflow:visible; }

