@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Hind:wght@400;700&family=Noto+Sans+JP:wght@100;400;700&display=swap');
* { min-height:0; min-width:0; box-sizing: border-box; }
*: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: #dfe5f4; font-family:'Hind', 'Noto Sans JP', "游ゴシック",'YuGothic','Hiragino Sans',Meiryo,sans-serif; font-weight: 400; font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; letter-spacing:.08rem; height:100%; overflow-x: hidden;}
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: #000; font-style: normal; text-decoration: none; }

/* ------------ 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); }
}


/* ------------ LOADING ------------- */
.loading	{ position: fixed; display: -webkit-flex; display: flex; justify-content: center; align-items: center; background: #1c50a1; background-position:center; background-attachment: fixed; z-index: 999; top: 0; left: 0; right: 0; bottom: 0; }
.loading-block	{ width: 80px; display: flex; justify-content: space-between; }
.circle	{ width: 12px; height: 12px; background-color: #fff; 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: 767px) { 
	.loading	{ background-size:24px auto; }
}


/* ------------ NAVIGATION ------------- */
#navigation	{ top:0; z-index:3; width:100%; height: 60px; text-align: center; padding: 0; margin: -60px 0 0; display: -webkit-flex; display: flex; align-items: center; justify-content: center; background-color: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, .05); }
#navigation .wrapper	{ width: 100%; max-width: 600px; height: 100%; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
#navigation ul.menu	{ width: 100%; list-style: none; display: -webkit-flex; display: flex; padding: 0; height: 100%; }
#navigation ul.menu li	{ width: 25%; display: -webkit-flex; display: flex; }
#navigation ul.menu li a	{ font-size: 16px; line-height: 1; color:#1c50a1; font-weight: 700; background-color: #fff; width: 100%; height: 100%; text-align: center; display: -webkit-flex; display: flex; align-items: center; justify-content: center; border-right: 1px solid #eee; }
#navigation ul.menu li:first-child a	{ border-left: 1px solid #eee; }
#navigation ul.menu li a:hover	{ color: #1c50a1; background-color: #fff; }
#navigation ul.menu li a.active	{ color: #fff; background-color: #1c50a1; }
@media (max-width: 767px)	{ 
	#navigation	{ height: 40px; margin: -40px 0 0; display: none; }
	#navigation ul.menu li a	{ font-size: 12px; }
}

/* ------------ TOP MAIN ------------- */
.topmain	{ position: relative; width: 100%; height: 100vh; min-height: 600px; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
.topmain__wrapper	{ width: 100%; display: -webkit-flex; display: flex; justify-content: center; padding: 0 16%; margin: 0; }
.topmain__wrapper > h1	{ position: absolute; top: 30px; left: 40px; width: 200px; }
.topmain__wrapper > h2	{ color:#fff; font-size: 90px; font-size: clamp(30px, 120px, 12vw); font-weight: 100; letter-spacing:3rem; line-height: 1; padding: 0; margin: 0 0 30px; }
.topmain__wrapper > strong	{ color:#fff; font-size: 90px; font-size: clamp(30px, 30px, 3vw); font-weight: 700; letter-spacing:1rem; line-height: 1; padding: 0; margin: 0; }
@media (max-width: 767px) { 
	.topmain	{ height: calc(var(--vh, 1vh) * 100); }
	.topmain__wrapper	{ width: 100%; margin: 0; }
	.topmain__wrapper > h1	{ top: 12px; left: 20px; width: 140px; }
	.topmain__wrapper > h2	{ font-size: 48px; margin: 0 0 20px; }
	.topmain__wrapper > strong	{ font-size: 14px; letter-spacing:.3rem; }
}
@media (max-width: 374px) { 
	.topmain__wrapper > h2	{ margin: 0 0 20px; }
	.topmain__wrapper > h1	{ margin: 0 0 20px; }
}
.btmlinkbtn	{ display: block; }
.btmlinkbtn > a	{ font-size: 40px; line-height: 1; display: -webkit-flex; display: flex; align-items: center;justify-content: center; height: 100px; background-color: rgba(40,40,40,1); color:#ffffff; }
@media (min-width: 768px) { 
	.btmlinkbtn > a:hover	{ color:#30b4ff; }
}
@media (max-width: 767px) { 
	.btmlinkbtn > a	{ font-size: 30px; height: 60px; background-color: rgba(40,40,40,1); color:#ffffff; }
}
/* ------------ TOP SLIDER ------------- */
.topSlider	{ position: relative; width: 100%; height: 100vh; position: fixed; top: 0; right: 0; bottom: 0; left: 0; transition: all 2s; z-index:-1; }
.topSlider	{ position: relative; width: 100%; height: 100vh; position: fixed; top: 0; 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,.3); 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; }
.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/main2.jpg) center bottom no-repeat; background-size: cover; }
.tpslider .main02	{ background: url(../images/main2.jpg) center center no-repeat; background-size: cover; }
.tpslider .main03	{ background: url(../images/main2.jpg) center center no-repeat; background-size: cover; }
.tpslider .main04	{ background: url(../images/main2.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 (orientation: portrait) and (max-width: 767px) { 
	.topSlider::after	{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; content:""; background-color: rgba(30,54,152,.3); transition: all 2s; mix-blend-mode: multiply; }
	.tpslider .main01	{ background: url(../images/mainsp2.jpg) center center no-repeat; background-size: cover; }
	.tpslider .main02	{ background: url(../images/mainsp2.jpg) center center no-repeat; background-size: cover; }
	.tpslider .main03	{ background: url(../images/mainsp2.jpg) center center no-repeat; background-size: cover; }
	.tpslider .main04	{ background: url(../images/mainsp2.jpg) center center no-repeat; background-size: cover; }
}

/* ------------ DRAWR MENU ------------- */
nav.sp	{ display: block; 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; }
nav.sp.open	{ transform: translateZ(0); }
.menuinner	{ display: block; padding: 0; margin: 0; width: 100%; height: 100%; display: -webkit-flex; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.menuinner > h2	{ padding: 0; margin: 0 0 20px; max-width: 120px; }
.menuinner > ul.nav	{ width: 100%; max-width: 300px; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 0; margin: 0 0 10px; }
.menuinner > ul.nav > li	{ width: 100%; list-style: none; padding: 0; margin: 0; position: relative; border-top: 1px solid #666; }
.menuinner > ul.nav > li:last-child	{ border-bottom: 1px solid #666; }
.menuinner > ul.nav > li > a	{ display: block; color:#1e4098; font-size: 16px; line-height: 1.5; font-weight: 700; letter-spacing:.05rem; padding: 12px 0; margin: 0; transition: all .5s; }
.menuinner > ul.subnav	{ width: 100%; max-width: 300px; display: -webkit-flex; display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 30px 0 0; margin: 0; border-top: 1px solid #666; }
.menuinner > ul.subnav > li	{ width: 100%; list-style: none; padding: 0; margin: 0; position: relative; }
.menuinner > ul.subnav > li > a	{ display: block; color:#1e4098; font-size: 14px; line-height: 1.5; font-weight: 700; letter-spacing:.05rem; padding: 0 0 10px; margin: 0; transition: all .5s; }
.menuinner > p	{ text-align: center; color:#666; font-size: 10px; line-height: 1; padding: 40px 0 0; margin: 0; }
@media (min-width: 768px) { 
	.menuinner > ul.nav > li > a:hover, 
	.menuinner > ul.subnav > li > a:hover	{ color:#f9891a; }
}
@media (max-width: 767px) { 
	nav.sp	{ width: 100%; max-width: 320px; 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: 16px; padding: 8px 0; }
	.menuinner > ul.subnav > li > a	{ font-size: 12px; }
	.menuinner > p	{ font-size: 9px; padding: 20px 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: transparent; }
.menu-trigger span	{ display: inline-block; box-sizing: border-box; position: absolute; top: 20px; left: 20px; width: 20px; height: 3px; background-color: #1e4098; transition: all .5s; transform: translateX(0); transition: all .5s; }
.menu-trigger.active	{ transition: all .5s; }
.menu-trigger.active span	{ background-color: #1e4098; }
.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: 860px) { 
	.menu-trigger	{ display: inline-block; 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: #1e4098; }
	.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); }
}

/* ------------ FIXEDSTICKY ------------- */
.fixedsticky	{ position: -webkit-sticky; position: -moz-sticky; position: -ms-sticky; position: -o-sticky; position: sticky; }
.fixedsticky-withoutfixedfixed .fixedsticky-off, 
.fixed-supported .fixedsticky-off	{ position: static; }
.fixedsticky-withoutfixedfixed .fixedsticky-on, 
.fixed-supported .fixedsticky-on	{ position: fixed; }
.fixedsticky-dummy	{ display: none; }
.fixedsticky-on + .fixedsticky-dummy	{ display: block; }

/* ------------ ITEM SET ------------- */
.itemSet	{ padding: 140px 0; }
.itemSet.map	{ padding: 140px 0 60px; }
.itemSet .inscrll	{ width: 100%; text-align: center; height: 80px; }
.itemSet .inscrll > strong { font-size: 2rem; line-height: 1; position: relative; display: inline-block; width: 100%; }
.itemSet .inscrll > strong:before	{ width: 25px; height: 15px; content: ''; display: block; position: absolute; top: 50px; left: 50%; transform: translate(-50%,-50%); background-image: url(../images/arrow.png); background-position: center center; background-size: cover; background-repeat: no-repeat; }
.itemSet .inscrll > p	{ font-size: 1.3rem; margin: 0; padding: 30px 0 0; position: relative; display: inline-block; }
.itemSet .inscrll > p > a	{ font-size: 1rem; padding: 0 20px 0; position: relative; }
.itemSet .inscrll > p > a:before	{ width: 13px; height: 12px; content: ''; display: block; position: absolute; bottom: 0; left: 3px; transform: translate(0,-50%); background-image: url(../images/arrow2.png); background-position: center center; background-size: cover; background-repeat: no-repeat; }
.itemSet .inimg	{ display:block; width: 100%; }
.itemSet .inimg img	{ width: 100%; }
@media (max-width: 498px)	{ 
	.itemSet	{ padding: 60px 0 40px; }
	.itemSet.map	{ padding: 60px 0 30px; }
	.itemSet .inscrll	{ height: 60px; }
	.itemSet .inscrll > strong { font-size: 20px; }
	.itemSet .inscrll > strong:before	{ width: 15px; height: 9px; top: 40px; }
	.itemSet .inscrll > p { font-size: .9rem; padding: 15px 0 0; }
	.itemSet .inscrll > p > a	{ font-size: .7rem; padding: 0 15px 0; }
	.itemSet .inscrll > p > a:before	{ width: 9px; height: 8px; left: 2px; }
}
#menu-2 .itemSet	{ background-color: #e2e6eb; }
#menu-3 .itemSet	{ background-color: #fff; }
#menu-4 .itemSet	{ background-color: #e2e6eb; }


/* ------------ MAIN ------------- */
.incontent	{ max-width: 900px; margin: 0 auto; padding: 0 15px; }
.incontent h3	{ font-size: 1.3rem; text-align: center; letter-spacing: 2px; padding: 25px 0 10px; }
/* 
.incontent h3	{ overflow: hidden; text-align: center; }
.incontent h3 span	{ position: relative; display: inline-block; margin: 0 2.5em; padding: 0 1em; text-align: left; }
.incontent h3 span::before,
.incontent h3 span::after	{ position: absolute; top: 50%; content: ''; width: 400%; height: 1px; background-color: #c9bb95; }
.incontent h3 span::before	{ right: 100%; }
.incontent h3 span::after	{ left: 100%; }
@media (max-width: 498px)	{ 
	.incontent h3 span	{ margin: 0; padding: 0; text-align: left; }
	.incontent h3 span::before,
	.incontent h3 span::after	{ display: none; }
}
 */

.incontent > p	{ font-size: 18px; text-align: center; letter-spacing: 1px; padding: 0 0 10px; }
.incontent > p.contct	{ margin: 10px 0 20px; }
.incontent > p.contct a	{ display: inline-block; color:#fff; font-size: 18px; font-weight: 700; line-height: 1; border-radius: 0px; padding: 20px 40px; background-color: #1c50a1; transition: all .3s; }
.incontent > p.contct a:hover	{ color:#000000; background-color: #1c50a1; }
.incontent > p > span	{ display: inline-block;  }
.incontent > ul	{ list-style: none; display: -webkit-flex; display: flex; justify-content: space-between; flex-wrap: wrap; align-content: space-between; padding: 0; margin: 0; }
.incontent > ul:after	{ content:""; display: block; width:32.5%; }
.incontent > ul > li	{ display: flex; align-items: center; width: 32.5%; margin: 0 0 10px; background-color: #fff; padding: 60px 25px; }
.incontent > ul > li img	{ width: 80%; max-width: 220px; height: auto; margin: 0 auto; }
@media (max-width: 767px)	{ 
	.incontent > h3	{ font-size: 1.2rem; padding: 25px 0 5px; }
	.incontent > p	{ font-size: .8rem; padding: 0 0 5px; }
	.incontent > p.contct	{ margin: 20px 0 10px; }
	.incontent > ul li	{ width: 49%; margin: 0 0 7px; padding: 25px 25px; }
	.incontent > ul li img	{ width: 100%; }
}

dl.plof	{ display:flex; flex-wrap: wrap; margin-top: 10px; }
dl.plof > dt	{ font-size: 16px; line-height: 1.4; width: 35%; padding: 10px; text-align: right; }
dl.plof > dd	{ font-size: 16px; line-height: 1.4; padding: 10px; margin: 0; width: 65%; }
dl.plof > dd > ul	{ display: -webkit-flex; display: flex; flex-direction: column; list-style-type: disc; margin: 0 0 0 1em;  }
dl.plof > dd > ul > li	{ padding: 0; font-size: 16px; line-height: 1.4; margin: 0 0 5px; }
dl.plof > dd > dl	{ display: -webkit-flex; display: flex; align-items: flex-start; }
dl.plof > dd > dl > dt	{ white-space: nowrap; width: 4.5em; }
dl.plof > dd > dl > dd	{ width: calc(100% - 5em); }
dl.plof > dd > dl > dt, 
dl.plof > dd > dl > dd	{ font-size: 16px; line-height: 1.4; font-weight: 400; margin: 0 0 5px; }

@media screen and (max-width: 767px) {
	dl.plof > dt, 
	dl.plof > dd	{ font-size: 13px; width: 100%; text-align: center; padding: 8px 0 0; }
	dl.plof > dt	{ font-size: 14px; padding: 20px 0 0; }
	dl.plof > dd	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
	dl.plof > dd > ul	{ width: auto; margin: 0 0 0 1em; }
	dl.plof > dd > ul.more	{ width: 86%; }
	dl.plof > dd > ul > li	{ font-size: 13px; width: auto; text-align: left; margin: 0 0 5px; }
	dl.plof > dd > dl	{ width: 90%; }
	dl.plof > dd > dl > dt, 
	dl.plof > dd > dl > dd	{ font-size: 13px; text-align: left; margin: 0 0 5px; }
}

#map	{ width: 100%; height:700px}
@media screen and (max-width: 767px) {
	#map	{ width: 100%; height:500px}
}
@media screen and (min-width: 1280px) {
	#map	{ width: 100%; height:900px}
}

.gmap	{ height: 0; overflow: hidden; padding-bottom: 40%; position: relative; }
.gmap iframe	{ position: absolute; left: 0; top: 0; height: 100%; width: 100%; }
@media (max-width: 767px)	{ 
	.gmap	{ padding-bottom: 100%; }
}

/* ------------ FOOTER ------------- */
footer	{ text-align: center; box-sizing: border-box; background-color: #fff; }
footer .footer-inner	{ color:#000; margin: 0 auto; max-width: 730px; padding: 24px 0; box-sizing: border-box; }
footer .footer-inner small	{ font-size: 10px; }
@media (max-width: 767px)	{ 
	footer	{ margin: 0; }
	footer .footer-inner	{  width: 100%; padding: 15px 0 50px; }
}

.maruyou_inner	{ width: 100%; padding: 40px 20px 0; margin: 0 auto; max-width: 1200px; position: relative; }
.maruyou_items	{ display: -webkit-flex; display: flex; justify-content: space-between; align-items: flex-end; position: relative; padding: 0 20px; margin: 0 0 60px; transform: translateX(0); }
.maruyou_items.reflect	{ flex-direction: row-reverse; transform: translateX(0); }
@media (max-width: 768px) { 
	.maruyou_inner	{ padding: 0 20px; }
	.maruyou_items	{ transform: translateX(0); padding: 0 30px; }
	.maruyou_items.reflect	{ transform: translateX(0); }
}
@media (min-width: 1000px) { 
	.maruyou_items	{ padding: 0 30px; }
}
@media (min-width: 1300px) { 
	.maruyou_items	{ transform: translateX(-5%); padding: 0 60px; }
	.maruyou_items.reflect	{ transform: translateX(5%); }
}
.maruyou_items_img	{ width: 60%; position: relative; }
.maruyou_items_img img	{ width: 100%; vertical-align: bottom; line-height: 0; }
.maruyou_items_img strong	{ position: absolute; top: -2%; left: -40px; color:#fff; font-family: 'Hind', sans-serif; font-size: 120px; font-size: clamp(40px, 120px, 12vw); line-height: 0; z-index: 1001; }
.maruyou_items_txt	{ width: 40%; display: -webkit-flex; display: flex; flex-direction: column; justify-content: center; padding: 0 0 36px; }
.maruyou_items_txt h3	{ font-size: 28px; font-size: clamp(26px, 20px, 2.7vw); font-weight: 700; line-height: 1.2; padding: 0 0 10px 40px; border-bottom: 1px solid #333; margin: 0; }
.maruyou_items_txt p	{ font-size: 15px; font-size: clamp(12px, 15px, 1.5vw); line-height: 1.8; margin: 0 0 30px 40px; }
.maruyou_items_txt p.nmb, 
.maruyou_items_txt p.prc	{ font-size: 12px; font-size: clamp(10px, 12px, 1.1vw); line-height: 1.6; margin: 0 0 10px 40px; }
.maruyou_items_txt p.nmb	{ margin-top: 30px; }
.maruyou_items_txt p.prc b	{ font-size: 18px; font-size: clamp(14px, 18px, 1.8vw); }
.maruyou_items_txt > a	{ position:relative; display: -webkit-flex; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; height: 60px; margin: 20px 0 0 40px; border: 0 solid #fff; }
.maruyou_items_txt > a > span	{ color:#000; text-decoration: none; outline: none; font-size: 16px; line-height: 1; font-family: 'Hind', sans-serif; letter-spacing:.4rem; }
.maruyou_items_txt > a::before,
.maruyou_items_txt > a::after	{ content: ''; position: absolute; border: solid #000; width: 40px; height: 20px; transition: all 0.3s ease-in-out; }
.maruyou_items_txt > a::before	{ top: -1px; left: -1px; border-width: 1px 0 0 1px; }
.maruyou_items_txt > a::after	{ bottom: -1px; right: -1px; border-width: 0 1px 1px 0; }
@media (min-width: 769px) { 
	.maruyou_items_txt > a:hover::before,
	.maruyou_items_txt > a:hover::after	{ width:calc(100% + 2px); height:calc(100% + 2px); border-color:#000 }
	.maruyou_items.reflect .maruyou_items_img strong	{ left: auto; right: -40px; }
	.reflect .maruyou_items_txt h3	{ padding: 0 40px 10px 0; }
	.reflect .maruyou_items_txt > a	{ margin: 20px 40px 0 0; }
	.reflect .maruyou_items_txt p	{ margin: 0 40px 30px 0; }
	.reflect .maruyou_items_txt p.nmb, 
	.reflect .maruyou_items_txt p.prc	{ margin: 0 40px 10px 0; }
	.reflect .maruyou_items_txt p.nmb	{ margin-top: 30px; }
}
@media (min-width: 980px) { 
	.maruyou_items_txt p.nmb,
	.maruyou_items_txt > a > span	{ font-size: 16px; }
}
@media (max-width: 768px) { 
	.maruyou_items	{ flex-wrap: wrap; margin: 0 0 30px; padding: 0; }
	.maruyou_items_img	{ width: 100%; margin: 0 0 30px; }
	.maruyou_items_img strong	{ top: auto; bottom: 30px; left: -20px; right: auto; font-size: 70px; }
	.maruyou_items_txt	{ width: 100%; padding: 0 0 30px; }
	.maruyou_items_txt h3,
	.reflect .maruyou_items_txt h3	{ font-size: 20px; padding: 0 0 10px; margin: 0; }
	.maruyou_items_txt p	{ font-size: 13px; margin: 0 0 20px; }
	.maruyou_items_txt p.nmb, 
	.maruyou_items_txt p.prc	{ font-size: 12px; margin: 0 0 5px; }
	.maruyou_items_txt p.nmb	{ margin-top: 30px; }
	.maruyou_items_txt p.prc b	{ font-size: 16px; }
	.maruyou_items_txt > a	{ max-width: 100%; margin: 20px 30px 0; }
	.maruyou_items_txt > a::before,
	.maruyou_items_txt > a::after	{ height: 75%; width: 92%; }
}


/* ------------ SERVICE ------------- */
.maruyou_inner	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.service_wrapper	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 60px; }
.service_wrapper > h3	{ text-align: center; font-size: 22px; font-weight: 700; line-height: 2; margin: 0 0 60px; }
.service_wrapper > ul	{ width: 100%; max-width: 900px; display: -webkit-flex; display: flex; list-style: none; flex-wrap: wrap; gap: 40px; counter-reset: listnum; }
.service_wrapper > ul > li	{ width: calc(50% - 20px); display: -webkit-flex; display: flex; flex-direction: column; }
.service_wrapper > ul > li > strong	{ color:#1b75bc; position: relative; padding: 0 0 10px 30px; border-bottom: 2px solid #1b75bc; font-size: 20px; width: 100%; margin: 0 0 10px; }
.service_wrapper > ul > li > strong::before	{ color:#1b75bc; font-size: 24px; content:""; position: absolute; left: 0; top: -3px; counter-increment: listnum; content: counter(listnum); }
.service_wrapper > ul > li > p	{ color:#000; padding: 0 30px; font-size: 16px; line-height: 1.5; width: 100%; }
@media (max-width: 768px) { 
	.service_wrapper	{ margin: 0 0 40px; }
	.service_wrapper > h3	{ font-size: 15px; margin: 0 0 40px; }
	.service_wrapper > ul	{ gap: 20px }
	.service_wrapper > ul > li	{ width: 100%; }
	.service_wrapper > ul > li > strong	{ padding: 0 0 5px 20px; font-size: 16px; margin: 0 0 10px; }
	.service_wrapper > ul > li > strong::before	{ font-size: 20px; top: -3px; }
	.service_wrapper > ul > li > p	{ padding: 0 20px; font-size: 14px; }
}
.service_comment	{ width: 100%; max-width: 900px; background-color: #fff; padding: 60px; display: -webkit-flex; display: flex; flex-direction: column; margin: 0 0 60px; }
.service_comment > h3	{ font-size: 22px; font-weight: 700; line-height: 2; margin: 0 0 30px; }
.service_comment > p	{ color:#000; font-size: 14px; line-height: 2; width: 100%; margin: 0 0 20px; }
.service_comment > p.comlast	{ text-align: right; color:#000; font-size: 16px; line-height: 2; width: 100%; margin: 0; padding: 10px 0 0; }
@media (max-width: 768px) { 
	.service_comment	{ padding: 30px; }
	.service_comment > h3	{ font-size: 20px; margin: 0 0 20px; }
	.service_comment > p	{ font-size: 13px; margin: 0 0 10px; }
	.service_comment > p.comlast	{ font-size: 14px; }
}
.service_under	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.service_underhdd	{ display: -webkit-flex; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0 0 20px; }
.service_underhdd > b	{ font-size: 18px; line-height: 1; margin: 0 0 10px; }
.service_underhdd > h3	{ font-size: 22px; font-weight: 700; line-height: 2; margin: 0 0 20px; }
.service_underhdd > p	{ text-align: center; color:#000; font-size: 16px; line-height: 2; margin: 0 0 20px; }
.service_underbdy	{ display: -webkit-flex; display: flex; align-items: flex-start; gap: 40px; }
.service_underbdy .txt	{ width: 35%; display: -webkit-flex; display: flex; flex-direction: column; }
.service_underbdy .txt > b	{ width: 100%; background-color: #fff; padding: 20px 20px 16px; text-align: center; font-size: 18px; line-height: 1; margin: 0 0 20px;  }
.service_underbdy .txt > ul	{ width: 100%; display: -webkit-flex; display: flex; list-style: none; flex-wrap: wrap; gap: 20px; }
.service_underbdy .txt > ul > li	{ width: 100%; display: -webkit-flex; display: flex; flex-direction: column; background-color: #fff; padding: 20px; }
.service_underbdy .txt > ul > li > strong	{ color:#f15e65; position: relative; border-bottom: 2px solid #f15e65; font-size: 16px; width: 100%; padding: 0 0 5px; margin: 0 0 5px; }
.service_underbdy .txt > ul > li:nth-child(2) > strong	{ color:#f4bc50; border-bottom: 2px solid #f4bc50; }
.service_underbdy .txt > ul > li:nth-child(3) > strong	{ color:#695391; border-bottom: 2px solid #695391; }
.service_underbdy .txt > ul > li:nth-child(4) > strong	{ color:#85c246; border-bottom: 2px solid #85c246; }
.service_underbdy .txt > ul > li:nth-child(5) > strong	{ color:#2f7fb6; border-bottom: 2px solid #2f7fb6; }
.service_underbdy .txt > ul > li > p	{ color:#000; padding: 0; font-size: 14px; line-height: 1.5; width: 100%; }
.service_underbdy .img	{ width: calc(65% - 40px); }
@media (max-width: 768px) { 
	.service_underhdd > b	{ font-size: 14px; margin: 0 0 5px; }
	.service_underhdd > h3	{ font-size: 18px; margin: 0 0 10px; }
	.service_underhdd > p	{ font-size: 13px; margin: 0 0 20px; }
	.service_underbdy	{ flex-wrap: wrap; gap: 0; }
	.service_underbdy .txt	{ width: 100%; margin: 0 0 20px; }
	.service_underbdy .txt > b	{ padding: 20px 20px 16px; font-size: 14px; margin: 0 0 10px;  }
	.service_underbdy .txt > ul	{ gap: 0; padding: 10px; background-color: #fff; }
	.service_underbdy .txt > ul > li	{ padding: 10px; }
	.service_underbdy .txt > ul > li > strong	{ font-size: 14px; padding: 0 0 5px; margin: 0 0 5px; }
	.service_underbdy .txt > ul > li > p	{ font-size: 13px; }
	.service_underbdy .img	{ width: 100%; }
}


/* ------------ GO TOP ------------- */
#fadebtn	{ position: fixed; bottom: 20px; right: 20px; }
#fadebtn a	{ display: inline-block; font-size: 12px; font-weight: 700; line-height: 1; text-align: center; text-decoration: none; padding: 8px 25px; background: #1c50a1; color: #fff; display: inline-block; }
@media (max-width: 767px) { 
	#fadebtn	{ position: fixed; bottom: 0; left: 0; width: 100%; z-index: 40; }
	#fadebtn a	{ bottom: 0; right: 0; padding: 6px; width: 100%; }
}
#fadebtn a:link, 
#fadebtn a:visited, 
#fadebtn a:hover, 
#fadebtn a:active	{ text-decoration: none; }
#fadebtn a:hover, 
#fadebtn a:active	{ background: #1c50a1; }


/* ------------ BLOCK ------------- */
@media (max-width: 670px)	{ .pconly { display: none; } }
@media (min-width: 671px)	{ .pconly { display: block; } }
@media (max-width: 670px)	{ .sponly { display: block; } }
@media (min-width: 671px)	{ .sponly { display: none; } }


/* ------------ 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; }

