/*COMMON*/

@media (min-width: 769px) {
.row-0			{margin-left:0px;	margin-right:0px;}
.row-0>div		{padding-right:0px;	padding-left:0px;}
.row-10			{margin-left:-5px;	margin-right:-5px;}	
.row-10>div		{padding-right:5px;	padding-left:5px;}
.row-20			{margin-left:-10px;	margin-right:-10px;}
.row-20>div		{padding-right:10px;padding-left:10px;}
.row-30			{margin-left:-15px;	margin-right:-15px;}
.row-30>div		{padding-right:15px;padding-left:15px;}
.row-40			{margin-left:-20px;	margin-right:-20px;}
.row-40>div		{padding-right:20px;padding-left:20px;}
.row-50			{margin-left:-25px;	margin-right:-25px;}
.row-50>div		{padding-right:25px;padding-left:25px;}
.row-60			{margin-left:-30px;	margin-right:-30px;}
.row-60>div		{padding-right:30px;padding-left:30px;}
.row-70			{margin-left:-35px;	margin-right:-35px;}
.row-70>div		{padding-right:35px;padding-left:35px;}
.row-80			{margin-left:-40px;	margin-right:-40px;}
.row-80>div		{padding-right:40px;padding-left:40px;}
.row-90			{margin-left:-45px;	margin-right:-45px;}
.row-90>div		{padding-right:45px;padding-left:45px;}
.row-100		{margin-left:-50px;	margin-right:-50px;}
.row-100>div	{padding-right:50px;padding-left:50px;}
.row-110		{margin-left:-55px;	margin-right:-55px;}
.row-110>div	{padding-right:55px;padding-left:55px;}
.row-120		{margin-left:-60px;	margin-right:-60px;}
.row-120>div	{padding-right:60px;padding-left:60px;}
}

a{
color: #007ac3;
}
a:hover{
text-decoration: none;
}
html,body{
font-family:"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
overflow-x: hidden;
}
.sans{
font-family: 'Noto Sans JP', sans-serif;
}
.serif{
font-family: 'Noto Serif JP', serif;
}
.btn{
transition: .3s;
}
.btn-primary{
color: #fff;
background-color: #007ac3;
border-color: #007ac3;
}
.btn-primary:hover{
color: #007ac3;
background-color: #fff;
border-color: #007ac3;
}
.dropdown-item:active {
background-color: #007ac3;
}



/*HEADER*/
#wrapper-navbar{
border-bottom: 1px solid #343a40;
}
.navbar .container{
max-width: 100%;
}
.navbar-expand-md{
z-index: 99;
}
.navbar-brand img{
max-width: 180px;
}
.nav-cart {
margin-right: -15px;
margin-left: 15px;
}
.nav-cart{
display: block;
color: #fff;
background-color: #007ac3;
white-space: nowrap;
padding: 2rem;
transition: .3s;

}
.nav-cart a{
display: block;
padding: 0 2rem 0 0;
color: #fff;

}
.nav-cart:hover{
color: #007ac3;
background-color: #fff;
}
.nav-cart a:hover{
color: #007ac3;
}
.nav-cart:hover > a{
color: #007ac3;
}

div.nav-cart {
position: relative;
overflow: hidden;
}
div.nav-cart > a:before{
content:"";
position: absolute;
width:100vw;
height:100vh;
-moz-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
left:50%;
top:50%;
}


.nav-cart span{
position: relative;
top: 4px;
display: inline-block;
margin-left: 1rem;
padding: .5rem 0;
font-size: 12px;
width: 20px;
height: 20px;
line-height: 5px;
overflow: hidden;
color: #fff;
background-color: rgba(0,0,0,.75);
border-radius: 50%;
text-align: center;
}


/*NAV*/
@media screen and (min-width: 769px) {
.dropdown:hover .dropdown-menu {
display: block;
animation: fadeIn .5s ease 0s 1 normal;
-webkit-animation: fadeIn .5s ease 0s 1 normal;
}
@keyframes fadeIn {
0% {opacity: 0;top:-20px;}
100% {opacity: 1;}
}

@-webkit-keyframes fadeIn {
0% {opacity: 0;top:-20px;}
100% {opacity: 1}
}
}

.toggle {
display: none;
}
.toggle-label {
cursor: pointer;
display: block;
width: 45px;
height: 45px;
user-select: none;
-webkit-tap-highlight-color: transparent;
}
.toggle-label:active {
-webkit-tap-highlight-color: transparent;
}
.toggle-label {
cursor: pointer;
}
.toggle-label .toggle-icon,
.toggle-label .toggle-icon:before,
.toggle-label .toggle-icon:after {
position: relative;
  display: block;
  top: 50%;
  left: 50%;
  height: 3px;
  width: 32px;
  background: #7fcfd8;
  content: '';
  transition: all 500ms ease-in-out;
}
.logged-in .toggle-label .toggle-icon,
.logged-in .toggle-label .toggle-icon:before,
.logged-in .toggle-label .toggle-icon:after {
  background: #fff;
}
.toggle-label .toggle-text {
  position: relative;
  display: block;
  top: calc(100% - 15px);
  height: 14px;
  font-size: 8px;
  font-size: 0.8rem;
  color: #50861c;
  text-align: center;
}
.toggle-label .toggle-text:before {
  position: absolute;
  width: 100%;
  left: 0;
  content: '';
  transition: all 500ms ease-in-out;
  visibility: visible;
  opacity: 1;
}
.toggle-label .toggle-text:after {
  position: absolute;
  width: 100%;
  left: 0;
  content: '';
  transition: all 500ms ease-in-out;
  visibility: hidden;
  opacity: 0;
}
.toggle-label .toggle-icon {
  transform: translate3d(-50%, -5px, 0);
}
.toggle-label .toggle-icon:before {
  transform: translate3d(-50%, -11.5px, 0);
}
.toggle-label .toggle-icon:after {
  transform: translate3d(-50%, 5px, 0);
}
.toggle:checked ~ .toggle-label .toggle-icon {
  background-color: transparent;
}
.toggle:checked ~ .toggle-label .toggle-icon:before,
.toggle:checked ~ .toggle-label .toggle-icon:after {
  top: 0;
}
.toggle:checked ~ .toggle-label .toggle-icon:before {
  transform: translateX(-50%) rotate(45deg);
  top: 1.5px;
}
.toggle:checked ~ .toggle-label .toggle-icon:after {
  transform: translateX(-50%) translateY(-10px) rotate(-45deg);
  top: 8.5px;
}
.toggle:checked ~ .toggle-label .toggle-text:before {
  visibility: hidden;
  opacity: 0;
}
.toggle:checked ~ .toggle-label .toggle-text:after {
  visibility: visible;
  opacity: 1;
}

a.nav-link,
#menu-footer-shop-nav li a{
position: relative;
display: inline-block;
padding: .4em;
text-decoration: none;
}
a.nav-link:after,
#menu-footer-shop-nav li a:after{
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 1px;
-webkit-transform: scaleX(0);
-ms-transform: scaleX(0);
transform: scaleX(0);
background-color: #7fcfd8;
-webkit-transition: all .3s ease;
transition: all .3s ease;
}
a.nav-link:hover:after,
#menu-footer-shop-nav li a:hover:after{
-webkit-transform: scaleX(1);
-ms-transform: scaleX(1);
transform: scaleX(1);
}
a.nav-link{
color: #000;
}
a.nav-link:hover{
color: #d93c57;
}
.navbar{
padding: 0;
}
nav.fade:not(.show){
opacity: 1;
}

.navbar-brand{
width: 200px;
}
.menu-item{
font-size: .875rem;
text-transform: uppercase;
}
.dropdown-toggle.nav-link{
overflow: hidden;
background-color: transparent;
}
.dropdown-toggle.nav-link:after,
.dropdown-toggle.nav-link:hover:after{
display: none;
}
.dropdown-menu{
top:95%;
}


@media screen and (max-width: 414px){
.navbar-brand{
width: 150px;
margin-left: .5rem;
}
.navbar-brand img{
max-width: 100%;
}
.nav-cart {
display: inline-block;
margin-left: 0;
margin-right: 5rem;
padding: 0;
}
.nav-cart a{
padding: .5rem;
color: #fff;
background-color: transparent;
}
.navbar-toggler {
position: absolute;
top: .3125rem;
right: 0;
}
.navbar-nav li{
padding: 1rem;
text-align: center;
}
.collapse.show + .nav-cart{
margin: 0;
padding: 0;
display: block;
width: 100%;
}
.collapse.show + .nav-cart a{
display: block;
width: 100%;
padding: 1rem;
color: #fff;
text-align: center;
background-color: #333;
}
}


/*FOOTER*/

#wrapper-footer{
margin-top: 8rem;
padding-top: 2rem;
background-color: #f0f0f0;
}
#wrapper-footer{
padding-bottom: 0;
}
.footer-address{
padding: 4rem 0;
}
.footer-address h3{
font-size: 1.25rem;
}
.footer-address h4{
font-size: 1rem;
}
.footer-address p{
font-size: .812rem;
line-height: 2;
letter-spacing: .5rem;
}

.footer-sns{
margin-bottom: 4rem;
}
.footer-sns ul{
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 0px 20px;
justify-content: center;
}
.footer-sns ul li{
display: block;
margin: 0;
padding: 0;
}
@media (min-width:835px){
.footer-sns ul li a img{
display: block;
transition: .3s ease-out;
}
.footer-sns ul li img:hover{
transform: scale(1.2) translateY(-2px) rotate(360deg);
}
}

.copyright{
padding: 1rem 0;
font-family: 'Roboto Condensed', sans-serif;
background-color: rgb(255 255 255 /1);
}

.copyright p{
margin: 0 ;
padding: 0;
font-size: .5rem;
letter-spacing: .25rem;
}


/*FOOTER WIDGET*/
#my_widget-1 h2,
#my_widget-2 h2,
#my_widget-3 h2{
margin-bottom: 2rem;
font-size: 1rem;
}
#my_widget-1 ul,
#my_widget-2 ul,
#my_widget-3 ul{
margin: 0;
padding: 0;
}
#my_widget-1 ul li,
#my_widget-2 ul li,
#my_widget-3 ul li{
margin: 0;
padding: .5rem 0;
font-size: .875rem;
line-height: 1.5;
text-align: left;
font-feature-settings:"palt";
}
#my_widget-1 ul li img,
#my_widget-2 ul li img{
border-radius: 50%;
padding: 2px;
background-color: rgba(255,255,255,.9);
box-shadow: 1px 1px 6px rgba(0,0,0,.1);
}

#my_widget-1 .recentviewed_post li:not(:last-child),
#my_widget-2 .ucart_featured_body.ucart_widget_body li:not(:last-child) {
border-bottom: 1px solid #ddd;
}
#my_widget-3 .ucart_login_body.ucart_widget_body li{
list-style: none;
}
#my_widget-3 .ucart_login_body.ucart_widget_body li input[type="text"]{
margin-top: .25rem;
margin-bottom: 1rem;
}
#my_widget-3 .ucart_login_body.ucart_widget_body li a{
font-size: .75rem;
}

#my_widget-1 ul li:after,
#my_widget-2 ul li:after{content:" ";display:block;clear:both;}

.thumimg{
float: left;
margin-right: 10px !important;
display: table;
width: 40px !important;
height: 40px;
}

/*FRONT PAGE*/
.front_mv{
padding: 4rem 0;
  background: -webkit-linear-gradient(top, #BCC5CE 0%, #929EAD 98%), -webkit-radial-gradient(at top left, rgba(255, 255, 255, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%);
  background: linear-gradient(-180deg, #BCC5CE 0%, #929EAD 98%), radial-gradient(at top left, rgba(255, 255, 255, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%);
  background-blend-mode: screen;
position: relative;
overflow-x: hidden;
}
.front_mv .metaslider{
z-index: 3;
position: relative;
}
.front_mv .metaslider img{
box-shadow: 0 2px 1px rgba(0,0,0,0.29), 
              0 4px 2px rgba(0,0,0,0.29), 
              0 8px 4px rgba(0,0,0,0.29), 
              0 16px 8px rgba(0,0,0,0.29),
              0 32px 16px rgba(0,0,0,0.29);
border-radius: 4px;
}

.bg {
animation:slide 3s ease-in-out infinite alternate;
background-image: linear-gradient(-60deg, rgba(255,255,255,.75) 50%, rgba(100,100,100,.5) 50%);
bottom:0;
left:-50%;
opacity:.5;
position:absolute;
right:-50%;
top:0;
z-index:0;
}
.bg2 {
animation-direction:alternate-reverse;
animation-duration:4s;
}
.bg3 {
animation-duration:5s;
}
@keyframes slide {
  0% {
    transform:translateX(-25%);
  }
  100% {
    transform:translateX(25%);
  }
}

.home section{
padding: 4rem 0;
}
.home a figure {
background-color: rgba(255,255,255,.5);
box-shadow: 0 0 6px rgba(0,0,0,.1);
transition: .5s;
}
.home a:hover figure {
background-color: rgba(255,255,255,1);
box-shadow: 0 0 24px rgba(0,0,0,.4);
}
.home figure img{
margin-bottom: 2rem;
}
.home a figure img{
filter: invert(0%);
transition: 1s;
}
.home a:hover figure img{
filter: invert(100%);
}

h2.animated,
h3.animated{
position: relative;
margin-bottom: 2rem;
}
h2.animated:before,
h3.animated:before{
animation-name: underline;
animation-duration: 1s;
animation-timing-function: ease-in-out;
animation-delay: 1s;
animation-iteration-count: 1;
animation-fill-mode:forwards;
display: block;
position: absolute;
left: 0;
bottom:-.5rem;
content: "";
height: 1px;
background-color: #333;
}
@keyframes underline {
	0% 		{width: 0%;}
	100%	{width: 100%;}
}
.home figcaption{
padding: 1rem;
}
.home a figcaption{
background-image: url(images/angle-right.svg);
background-repeat: no-repeat;
background-position: -6rem center;
transition: 1s;
color: #333;
}
.home a:hover figcaption{
background-position: right center;
color: #007ac3;
}
.link_twitter{
transition: .5s;
}
.link_twitter:hover{
transform: scale(1.1);
}
.others-item{
position: relative;
z-index: 3;
box-shadow: 0 0 36px rgba(0,0,0,.1);
}
.others-item .card-body{
position: relative;
padding-bottom: 3rem;
}
.others-item .card-body h5{
margin-bottom: 3rem;
font-size: 1.125rem;
text-align: center;
position: relative;
}
.others-item .card-body h5:before{
position: absolute;
margin: 0 auto;
display: block;
content: "";
left: 0;
right: 0;
bottom: -2rem;
width: 1px;
height: 15px;
background-color: #007ac3;
}
.others-item .card-body p{
font-size: .937rem;
}

.others-item .card-body .btn{
padding: .25rem .5rem;
position: absolute;
font-size: .875rem;
bottom: .5rem;
right: 1rem;
}
.home .whiteNoise .btn{
border-radius: 50px;
display: inline-block;
width: 40px;
height: 40px;
}
.home .introduction{
position: relative;
padding: 8rem 0;
line-height: 2;
position: relative;
z-index: 4;
box-shadow: 0 0 36px rgba(0,0,0,.1);
}
.home .introduction:before{
position: absolute;
margin: 0 auto;
display: block;
content: "";
left: 0;
right: 0;
top: 0;
width: 1px;
height: 80px;
background-color: #000;
}
.home .introduction:after{
position: absolute;
margin: 0 auto;
display: block;
content: "";
left: 0;
right: 0;
bottom: 0;
width: 3px;
height: 80px;
background-color: #007ac3;
}
.sns_utility{
background-color: #fafafa;
box-shadow: 0 -12px 18px rgba(0,0,0,.1);
}

/*PAGES*/
.page .page-header{
padding: 6rem 0;
}
.page .page-header h1{
font-size: 1.25rem;
letter-spacing: 1rem;
}
.interlude{
margin-bottom: 4rem;
padding-bottom: 4rem;
background: -webkit-linear-gradient(top, #BCC5CE 0%, #929EAD 98%), -webkit-radial-gradient(at top left, rgba(255, 255, 255, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%);
background: linear-gradient(-180deg, #BCC5CE 0%, #929EAD 98%), radial-gradient(at top left, rgba(255, 255, 255, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%);
background-blend-mode: screen;
position: relative;
}
.whiteNoise {
  background-color: #E1E6EC;
  background-image: -webkit-linear-gradient(top, #E1E6EC 2%, #F0F4F7 96%), -webkit-radial-gradient(at 50% 100%, rgba(255, 255, 255, 0.2) 0%, rgba(0, 0, 0, 0.5) 200%);
  background-image: linear-gradient(-180deg, #E1E6EC 2%, #F0F4F7 96%), radial-gradient(at 50% 100%, rgba(255, 255, 255, 0.2) 0%, rgba(0, 0, 0, 0.5) 200%);
  background-blend-mode: normal, color-burn; }

.interlude p{
font-size: 1rem;
font-weight: 700;
line-height: 2;
letter-spacing: .2rem;
text-align: justify;
font-feature-settings:"palt";
}

.interlude-contents ul{
margin: 0 0 4rem;
padding: 0;
list-style: none;
display: flex;
justify-content: center;
}
.interlude-contents ul li{
margin: 0 1rem;
padding: 0;
width: 100%;
text-align: center;
}
.interlude-contents ul li a{
display: block;
margin: 0;
padding: 1rem 2rem;
color: #00d2ab;
border: 2px solid #00d2ab;
border-radius: 4px;
transition: .3s;
}
.interlude-contents ul li a:hover{
color: #fff;
background-color: #00d2ab;
}
.interlude-contents p a span{
text-align: center;
margin: 0 auto;
padding: 1rem 2rem;
color: #fff;
background-color: rgba(0,122,195,.5);
border-radius: 4px;
transition: .3s;
}
.interlude-contents p a:hover span{
color: #fff;
background-color: rgba(0,122,195,.9);
}


.home .card img{
max-height: 254px;
/*4カラムの時
max-height: 127px;
*/
}

/*導光板とは*/
section.structure{
padding: 4rem 0;
}
.structure h4 span{
display: block;
font-size: 1rem;
}
.structure ol{
margin: 0;
padding: 0;
list-style: none;
counter-reset: number;
}

.structure ol li {
margin: 0 0 .5rem 1.25rem;
line-height: 1.75;
padding: .5rem 0 .5rem 1rem;
border: 1px solid #eaeaea;
border-radius: 4px;
list-style: none;
position: relative;
}

.structure ol li:before {
float: left;
width: 2.5em;
height: 2.5em;
border-radius: 50%;
text-align: center;
line-height: 2.5;
counter-increment: number;
content: counter(number);
margin-right: .5em;
margin-left: -2.5em;
}
.structure ol li:nth-child(1):before{color: #fff;background: #88c7e3;}
.structure ol li:nth-child(2):before{color: #fff;background: #808080;}
.structure ol li:nth-child(3):before{color: #000;background: #d9e021;}
.structure ol li:nth-child(4):before{color: #fff;background: #ff7bac;}
.structure ol li:nth-child(5):before{color: #fff;background: #dc8f43;}
.structure ol li:nth-child(6):before{color: #fff;background: #000;}

.usage-example{}
.usage-example figure{
background-color: rgba(255,255,255,.5);
box-shadow: 0 0 4px rgba(0,0,0,.1);
transition: .5s;
}
.usage-example figure:hover{
background-color: rgba(255,255,255,1);
box-shadow: 0 0 24px rgba(0,0,0,.2);
}
.usage-example figure img{
margin-bottom: 1rem;
}
.usage-example figcaption{
padding: 1rem;
}
.usage-example figcaption dl{
margin: 0;
}
.usage-example figcaption dt{
margin-bottom: 1rem;
text-align: center;
}
.usage-example figcaption dd{
text-align: justify;
}

.feature{
padding: 4rem 0;
}
.point5{
display: flex;
margin: 0 0 2rem;
padding: 0;
list-style: none;
}
.point5 li{
margin: 0;
padding: 1rem;
width: 100%;
}
.feature .merit{}
.feature .merit li{
padding: 1rem 0;
}
.feature .merit li:not(:last-child) {
border-bottom: 1px dotted #666;
}
.mark-sheet{}
.mark-sheet figure img{
margin-bottom: 2rem;
}
.mark-sheet figcaption dt{
margin-bottom: 2rem;
font-size: 1.5rem;
font-weight: 500;
position: relative;
}
.mark-sheet figcaption dt:before{
position: absolute;
left: 0;
bottom: -10px;
display: block;
content: "";
width: 30px;
height: 3px;
background-color: #000;
}
.mark-sheet figcaption dt:after{
position: absolute;
left: 0;
bottom: -9px;
display: block;
content: "";
width: 90px;
height: 1px;
background-color: #000;
}
.feature .col-md-6 h3{
position: relative;
margin-bottom: 2rem;
}
.feature .col-md-6 h3:before{
position: absolute;
left: 0;
bottom: -10px;
display: block;
content: "";
width: 30px;
height: 3px;
background-color: #000;
}
.feature .col-md-6 h3:after{
position: absolute;
left: 0;
bottom: -9px;
display: block;
content: "";
width: 90px;
height: 1px;
background-color: #000;
}



/*導光板への印刷・デザイン*/
.printed-lgp section{
padding: 4rem 0;
}
.printed-lgp section h2{
font-size: 1.75rem;
}
.link_print{
padding: 4rem 0;
}
.link_print p a span{
text-align: center;
margin: 0 auto;
padding: 1rem 2rem;
color: #fff;
background-color: rgba(0,122,195,.5);
border-radius: 4px;
transition: .3s;
}
.link_print p a:hover span{
color: #fff;
background-color: rgba(0,122,195,.9);
}
.printed-lgp section figure{
margin-bottom: 4rem;
}
.printed-lgp section figure img{
margin-bottom: 2rem;
}
.printed-lgp section figcaption{
text-align: center;
}
.contact-contents{}
.contact-contents h3{}
.contact-contents h3 span{
display: block;
font-size: 1rem;
}
.contact-contents .phone{
font-size: 2rem;
}
.contact-contents .phone i{
font-size: 1.75rem;
display: inline-block;
position: relative;
margin-top: -.125rem;
}
.contact-contents dl{
margin-bottom: 2rem;
}
.contact-contents dt{
margin-bottom: .75rem;
}

/*会社概要*/
.access ul{
list-style: none;
}
.access ul li{
padding: .5rem 0;
}
.access ul li:not(:last-child) {
border-bottom: 1px dotted #333;
}
.greeting{
margin-bottom: 4rem;
}
.internal-view{}
.internal-view figure{}
.internal-view figure img{
margin-bottom: 1rem;
}
.internal-view figcaption{
text-align: center;
}

/*FAQ*/
.faq .interlude{
padding-bottom: 0;
}
.faq section dl{}
.faq section dt{
margin-bottom: 2rem;
font-weight: 700;
}
.faq section dd{
position: relative;
margin-bottom: 6rem;
padding: 2rem;
font-size: 1.125rem;
line-height: 1.75;
text-align: justify;
background-color: rgba(0,0,0,.05);
}
.faq section dd:before {
content: "";
position: absolute;
top: -30px;
left: 50%;
margin-left: -15px;
border: 15px solid transparent;
border-bottom: 15px solid rgba(0,0,0,.05);
}


/*特定商取引法に基づく表示*/
.shopping-guide{}
.shopping-guide .interlude{
padding-bottom: 0;
}
.payment-category{
padding: .5rem;
border: 1px solid #ddd;
border-radius: 3px;
}
.payment-category dt{
margin-bottom: .5rem;
padding-bottom: .5rem;
border-bottom: 1px solid #eaeaea;
background-color: rgba(255,255,255,.5);
}
.payment-category dd{
font-size: .937rem;
line-height: 1.75;
color: #333;
}
.payment-category dd:not(:last-child) {
margin-bottom: 1.5rem;
}

.tbl-postage{
margin-bottom: 2rem;
width: 100%;
}
.tbl-postage caption{
caption-side:top;
padding-bottom: .5rem;
}
.tbl-postage th,
.tbl-postage td{
padding: .5rem;
white-space: nowrap;
border: 1px solid #ddd;
}
.tbl-postage th{
text-align: center;
}
.tbl-postage td{
text-align: right;
}

.tbl-payment{
margin-bottom: 2rem;
width: 100%;
border-collapse: separate;
border-spacing: 8px;
}
.tbl-payment th,
.tbl-payment td{
padding: .5rem 1rem .5rem 0.25rem;
}
.tbl-payment th{
text-align: left;
border-right: 4px solid #ddd;
white-space: nowrap;
}
.tbl-payment td{
}
.dl-guide{}
.dl-guide dt{
margin: 0 0 2rem;
}
.dl-guide dt{
margin: 0 0 1rem;
}

.dl-guide dd:not(:last-child) {
margin-bottom: 2rem;
}
.dl-guide dd strong{
display: block;
margin-top: 1rem;
margin-bottom: .5rem;
padding: 0;
}


/*お問い合わせ*/
.contact .interlude{
padding-bottom: 0;
}

/*個人情報保護指針*/
.privacy .interlude{
padding-bottom: 0;
}
.privacy-contents{
margin-bottom: 8rem;
}
.privacy-contents p{
margin-bottom: 4rem;
line-height: 1.75;
text-align: justify;
}
.privacy-contents dl{
}
.privacy-contents dt{
margin-bottom: 1rem;
}
.privacy-contents dd{
line-height: 1.75;
text-align: justify;
}
.privacy-contents dd:not(:last-child) {
margin-bottom: 4rem;
}


/*商品リスト*/
.archive .wrapper{
padding-bottom: 0;
}
.archive h1.page-title{
padding: 4rem 0;
text-align: center;
font-size: 1rem;
letter-spacing: .25rem;
}

.category-accessory article.h-100,
.category-custom-order-lgp article.h-100,
.category-item article.h-100,
.category-led article.h-100,
.category-lgp-item article.h-100,
.category-sale article.h-100{
position: relative;
box-shadow: 0 0 3px rgba(0,0,0,.15);
}
.item-list_thumbnail{
height: 200px;
overflow: hidden;
}
.item-list_thumbnail img{
height: 100%;
transition: .3s;
}
.item-list_thumbnail img:hover{
transform: rotate(-5deg) scale(1.2);;
}

.category-accessory article.h-100 .entry-title,
.category-custom-order-lgp article.h-100 .entry-title,
.category-item article.h-100 .entry-title,
.category-led article.h-100 .entry-title,
.category-lgp-item article.h-100 .entry-title,
.category-sale article.h-100 .entry-title
{
padding: 1rem;
font-size: 1rem;
font-feature-settings:"palt";
}
.custom-order-lgp_interlude{
background-image: url(images/bg_custom-order-lgp_interlude_2.jpg);
background-position: center 60px;
background-repeat: no-repeat;
}
.link_custom-order{
margin: 8rem auto 4rem;
}
.link_custom-order a span{
padding: 1rem 4rem;
font-size: 1.625rem;
color: #fff;
border: 4px solid #fff;
border-radius: 4px;
transition: .3s;
}
.link_custom-order a:hover span{
color: #000;
background-color: #fff;
}
p.item-list-detail{
margin: 0;
padding: 0 1rem;
text-align: right;
font-size: 1.25rem;
}
p.link-more_item{
margin: 0;
padding: .5rem 1rem 1rem;
text-align: right;
}

p.link-more_item a{
display: inline-block;
padding: .25rem .5rem;
color: #fff;
background-color: #007ac3;
border: 2px solid #007ac3;
border-radius: 3px;
transition: .3s;
}
p.link-more_item a:hover{
color: #007ac3;
background-color: #fff;
}
.new-item .newitem{
padding: .5rem;
position: absolute;
right: 0;
top: 0;
display: inline-block;
color: #fff;
background-color: #dc0000;
}

/*ページネーション*/
.page-item.active .page-link {
z-index: 1;
color: #fff;
background-color: #007ac3;
border-color: #007ac3;
}
.page-link{
color: #007ac3;
}
.page-link:hover {
z-index: 2;
color: #380040;
text-decoration: none;
background-color: #007ac3;
border-color: #dee2e6;
}

.custom-order-lgp_mv,
.custom-order-lgp_interlude,
.custom-order-lgp_caution{
padding: 2rem 0;
color: #ddd;
background-color: #000;
}
.custom-order-lgp_select{
padding: 2rem 0;
}

.custom-order-lgp_select h2{
font-size: 2.25rem;
}
.custom-order-lgp_select h2 span{
font-size: 1.125rem;
}
.custom-order-lgp_caution figure{
margin-bottom: 4rem;
}
.custom-order-lgp_caution figure img,
.custom-order-lgp_caution figure .metaslider{
margin-bottom: 2rem;
}
.custom-order-lgp_caution figcaption dt{
margin-bottom: 2rem;
font-size: 1.5rem;
font-weight: 400;
}
.custom-order-lgp_caution figcaption dd{
margin-bottom: 1rem;
line-height: 1.75;
text-align: justify;
}
.custom-order-lgp_interlude{
padding-bottom: 4rem;
}

/*商品詳細*/
.single .two-column{
padding-top: 4rem;
}

#itempage h2.item_name{
margin-bottom: 1rem;
padding: 1rem 0;
font-size: 1.5rem;
font-feature-settings:"palt";
border-top: 1px solid #333;
border-bottom: 1px solid #333;
}
#itempage p.single-price{
margin-bottom: 2rem;
font-size: 2rem;
text-align: right;
}
#itempage p.single-price em.tax{
font-size: .875rem;
}
#itempage table.item_option{
border: none;
}
#itempage table.item_option caption{
padding: 2rem 0 .5rem;
font-size: 1rem;
caption-side: top;
color: #333;
}
.item_option th,
.item_option td{
padding: .5rem;
}
#itempage table.item_option td label{
display: inherit;
margin: 0;
font-size: .875rem;
}
#itempage table.item_option th {
border-right-width: 0;
border-bottom-width: 1px;
border-right-style: solid;
border-bottom-style: solid;
border-right-color: #CCCCCC;
border-bottom-color: #fff;
text-align: left;
background-color: #eaeaea;
font-size: .875rem;
}
#itempage table.item_option td {
border-right-width: 0;
border-bottom-width: 1px;
border-right-style: solid;
border-bottom-style: solid;
border-right-color: #CCCCCC;
border-bottom-color: #fff;
text-align: left;
}
#itempage table.item_option tr:last-child th,
#itempage table.item_option tr:last-child td{
border-bottom: none;
}
.itemimg{
margin-bottom: .5rem;
}
.skuform div{
padding: 2rem 0;
}
.accbox {
margin: 2em 0;
padding: 0;
max-width: 100%;
}
.accbox label {
display: block;
margin: 1.5px 0;
padding : 11px 12px;
color :#2f8fcf;
font-weight: bold;
background :#a4cbf3;
cursor :pointer;
transition: all 0.5s;
}
.accbox label:hover {
background :#85baef;
}
.accbox input {
display: none;
}
.accbox .accshow {
height: 0;
padding: 0;
overflow: hidden;
opacity: 0;
transition: 0.8s;
}
.cssacc:checked + .accshow {
height: auto;
padding: 5px;
background: #eaeaea;
opacity: 1;
}

/*CART*/
.catbox{
padding: 2rem 0;
}
.header_explanation{
margin-top: 2rem;
margin-bottom: 4rem;
}
.header_explanation h3{
margin: 0 0 1rem;
padding: .5rem 0;
font-size: 1.5rem;
display: inline-block;
position: relative;
}
.header_explanation h3:after{
position: absolute;
display: block;
content: "";
bottom: -.25rem;
width: 100%;
height: 1px;
background-color: #333;
}
.header_explanation h4{
margin: 0 0 1rem;
font-size: .937rem;
font-weight: 700;
color: #009a83;
}
.header_explanation p{
font-size: .875rem;
}
.header_explanation ul{}
.header_explanation li{
padding: .25rem 0;
font-size: .812rem;
}
.header_explanation li:not(:last-child) {
border-bottom: 1px dotted #999;
}
#customer-info .send{
margin-bottom: 2rem;
}
#customer-info h5{
padding: .5rem .25rem;
background-color: #333;
}
#itempage .field{
padding: 2rem 0;
}
#itempage .field ul.item_custom_field{
margin: 0;
padding: 0;
}
#itempage .field ul.item_custom_field li{
padding: 1rem 0;
font-size: .937rem;
line-height: 1.6;
font-feature-settings:"palt";
}
.exp dl{
margin: 2rem 0;
padding: 0;
}
.exp dt{
margin: 0 0 1rem 0;
padding: .25rem;
display: inline-block;
position: relative;
}
.exp dt:after{
position: absolute;
display: block;
content: "";
bottom: -.25rem;
width: 100%;
height: 1px;
background-color: #333;
}


/*共通モジュール*/
.contact_link{
padding: 4rem 0;
background-color: #007ac3;
}
.contact_link a img{
opacity: .75;
background-color: rgba(255,255,255,.9);
border-radius: 3px;
transition: .5s;
box-shadow: 0 1px 1px rgba(0,0,0,0.11), 
              0 2px 2px rgba(0,0,0,0.11), 
              0 4px 4px rgba(0,0,0,0.11), 
              0 8px 8px rgba(0,0,0,0.11), 
              0 16px 16px rgba(0,0,0,0.11), 
              0 32px 32px rgba(0,0,0,0.11);
}
.contact_link a img:hover{
opacity: 1;
background: #fff;

box-shadow: 0 1px 1px rgba(255,255,255,0.11), 
              0 2px 2px rgba(255,255,255,0.11), 
              0 4px 4px rgba(255,255,255,0.11), 
              0 8px 8px rgba(255,255,255,0.11), 
              0 16px 16px rgba(255,255,255,0.11), 
              0 32px 32px rgba(255,255,255,0.11);
}



/**カート補正**/
div.usccart_navi li.ucart{
padding: .5rem;
color: #999;
background-color: transparent;
}
div.usccart_navi li.usccart_cart,
div.usccart_navi li.usccart_customer,
div.usccart_navi li.usccart_delivery,
div.usccart_navi li.usccart_confirm{
color: #000;
background-image: none;
border: 1px solid #333;
}

/*必要事項の入力方法*/
.input-method{}
.input-method ol{
margin: 0;
padding: 0;
}
.input-method ol li{
padding: .25rem 0 .25rem 2.5rem;
list-style-type:none;
list-style-position:inside;
counter-increment: cnt;
position: relative;
}
.input-method ol li:before{
position: absolute;
left: 0;
top: .25rem;
display: marker;
content: "[ " counter(cnt) " ] ";
}

/*CF7*/
.wpcf7 input[type=submit] {
color: #fff;
background-color: #007ac3;
border-color: #007ac3;
}
.wpcf7 input:hover[type=submit] {
background-color: #fff;
color: #007ac3;
border-color: #007ac3;
}
form.wpcf7-form dl{}
form.wpcf7-form dt{
padding: .5rem 1rem;
border-bottom: 1px solid #333;
}
form.wpcf7-form dd{
margin-bottom: 3rem;
}




/*UTILITY*/
.scroll{
overflow-x: auto;
}
.wpcf7-form dt span{
display: inline-block;
margin-left: 1rem;
padding: .25rem;
font-size: .75rem;
line-height: 1;
color: #fff;
background-color: #dc3545;
border-radius: 2px;
}
.item_utility_link{
list-style: none;
display: flex;
border-top: 1px solid #eaeaea;
padding-top: .25rem;
}
.item_utility_link li{
padding: .25rem;
font-size: .937rem;
}
.item_utility_link li a{
display: inline-block;
padding: .5rem .75rem;
transition: .3s;
border-radius: 3px;
}
.item_utility_link li:not(:last-child) {
border-right:1px solid #eaeaea;
}
.item_utility_link li a:hover{
color: #fff;
background-color: #007ac3;
}

.category-custom-order-lgp article.post-160 .thumb,
.category-custom-order-lgp article.post-178 .thumb,
.category-custom-order-lgp article.post-181 .thumb,
.category-custom-order-lgp article.post-184 .thumb{
position: relative;
}

.category-custom-order-lgp article.post-160 .thumb:before,
.category-custom-order-lgp article.post-178 .thumb:before,
.category-custom-order-lgp article.post-181 .thumb:before,
.category-custom-order-lgp article.post-184 .thumb:before{
position: absolute;
display: block;
color: #000;
background-color: rgba(255,255,255,.9);
left: 10%;
right: 10%;
top: 45%;
text-align: center;
z-index: 99;
}

.category-custom-order-lgp article.post-160 .thumb:before{
content: "A 厚さ5mm・2辺入光";
}
.category-custom-order-lgp article.post-178 .thumb:before{
content: "B 厚さ5mm・1辺入光";
}
.category-custom-order-lgp article.post-181 .thumb:before{
content: "C 厚さ3mm・2辺入光";
}
.category-custom-order-lgp article.post-184 .thumb:before{
content: "D 厚さ3mm・1辺入光";
}

@media screen and (max-width: 414px) {
.h2, h2{
font-size: 1.5rem;
}

.front_mv{
margin-bottom: 0;
padding: 2rem 0;
}
.home .introduction{
padding: 2rem 0;
}
.page .page-header{
padding: 2rem 0;
}
.interlude{
margin-bottom: 1rem;
padding-bottom: 0;
}
.home .introduction:before,
.home .introduction:after{
display: none;
}
.point5{
display: inherit;
}
.link_custom-order a span{
padding: .5rem;
font-size: 1.375rem;
}
}


@media screen and (min-width: 768px) {
.wpcf7 input[type="tel"]{
width: 50%;
}
.wpcf7 .zip input[type="text"]{
width: 50%;
}
}

@media screen and (min-width: 415px) {
a[href^="tel:"] {
pointer-events: none;
}
}



/*BLOG NEWS */
.post-type-archive-blog,
.post-type-archive-news,
.tax-category-blog{
background-color: #fafafa;
}

.post-type-archive-blog .row-blog .col-md-4 article,
.tax-category-blog .row-blog .col-md-4 article{
background-color: #fff;
height: 100%;
box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.post-type-archive-blog .row-blog .col-md-4 img,
.tax-category-blog .row-blog .col-md-4 img{
position: relative;
display: block;
margin: 0 0 1rem;
aspect-ratio: 16 / 9;
overflow: hidden;
object-fit: cover;
filter: grayscale(.4);
transition: 1s;
}
.post-type-archive-blog .row-blog .col-md-4 img:hover,
.tax-category-blog .row-blog .col-md-4 img:hover{
filter: grayscale(0);
}
.post-type-archive-blog .row-blog .col-md-4 h2,
.tax-category-blog .row-blog .col-md-4 h2{
position: relative;
margin: 0 0 1rem;
padding: 0 .5rem;
font-size: 1.125rem;
line-height: 1.3;
}
.posted-date{
padding: 0 .5rem;
font-family: 'Roboto Condensed', sans-serif;
letter-spacing: .1em;
}
.post-type-archive-blog .row-blog .col-md-4 p,
.tax-category-blog .row-blog .col-md-4 p{
position: relative;
margin: 0 0 1rem;
padding: 0 .5rem;
font-size: .875rem;
line-height: 1.3;
color: #6c6c6c;
}

.post-type-archive-news .row-news article{
display: block;
width: 100%;
margin: 0 0 2rem;
padding: 1rem;
background-color: #fff;
border: 1px solid #ddd;
}

.post-type-archive-news .row-news h2{
position: relative;
margin: 0 0 1rem;
font-size: 1.125rem;
line-height: 1.3;
}

.post-type-archive-news .row-news p{
position: relative;
margin: 0 0 1rem;
font-size: .875rem;
line-height: 1.3;
}
.single-blog .entry-header,
.single-news .entry-header {
margin: 0 0 2.5rem;
}
.single-blog .entry-header h1,
.single-news .entry-header h1{
position: relative;
margin: 0 0 1rem;
padding: 1rem 0;
font-size: 1.5rem;
text-align: center;
border-top: 1px solid #333;
border-bottom: 1px solid #333;
inline-size: fit-content;
margin-inline: auto;
}

.single-blog .entry-header .entry-meta,
.single-news .entry-header .entry-meta{
margin: 0 0 1rem;
padding: 0;
text-align: center;
}

p.submit [type=submit], button {
color: #fff;
background-color: #007ac3;
border: none;
display: inline-block;
padding: .375rem 1rem;
border-radius: 60px;
}
#my_widget-3 .ucart_login_body.ucart_widget_body li input[type="text"],
#my_widget-3 .ucart_login_body.ucart_widget_body li input[type="password"]{
border: 2px solid #000;
display: block;
width: 100%;
padding: .2rem;
}
.lastViewedItem{
display: flex;
align-items: center;
justify-content: start;
}

.nav-links{
margin-top: 4rem;
padding-top:  1rem;
border-top: 1px solid #000;
}

.blog-list{
margin: 0;
padding: 0;
list-style: none;
}
.blog-list li{
padding: .5rem 0;
}
.blog-list li:not(:last-child) {
border-bottom: 1px solid #666;
}
.blog-list li a{
display: block;
margin-bottom: .5rem;
font-weight: 600;
line-height: 1.6;
}
.blog-list li .date{
font-family: 'Roboto Condensed', sans-serif;
font-size: .937rem;
font-weight: 700;
letter-spacing: .1em;
color: #666;
}
.meta-flex{
display: flex;
align-items: center;
gap: 10px;
}
.meta-flex .term{
display: inline-block;
padding: .2rem;
font-size: .75rem;
font-weight: 600;
border-width: 1px;
border-style: solid;
border-radius: 3px;
}

.category-prototype .term {
color: #E67E22; /* オレンジ系 */
border-color: #E67E22;
}

.category-past-work .term {
color: #2980B9; /* 青系 */
border-color: #2980B9;
}

.category-information .term {
color: #27AE60; /* 緑系 */
border-color: #27AE60; /* 緑系 */
}

.category-no-category .term {
color: #7F8C8D; /* グレー */
border-color: #7F8C8D; /* グレー */
}
.btn-backnumber{
display: inline-block;
margin: .5rem 0 0;
padding: .375rem .5rem;
font-size: .875rem;
line-height: 1;
color: #fff;
background-color: #007ac3;
border: 1px solid #007ac3;
border-radius: 4px;
transition: .3s;
}
.btn-backnumber:hover{
color: #007ac3;
background-color: #fff;
border: 1px solid #007ac3;
}
.ul_front-feature{
margin: 0;
padding: 0;
list-style: none;
}
.ul_front-feature li{
display: block;
margin: 0;
padding: 0;
}
.ul_front-feature li img{
display: block;
border-radius: 4px;
box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
transition: .2s;
}
.ul_front-feature li img:hover{
border-radius: 8px;
box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.ul_front-feature li:not(:last-child) {
margin-bottom: 1rem;
}
.section_reason{
background-image: linear-gradient(to left top,
  #f28b8e,  /* 柔らかい赤 */
  #f292b3,  /* 優しいピンク */
  #e6a2d2,  /* 薄い紫ピンク */
  #c5addc,  /* ソフトラベンダー */
  #b0bfe4,  /* パステルブルー */
  #9ccbe9,  /* 明るい水色 */
  #88d4ec,  /* ソフトシアン */
  #74dcdd,  /* 明るいターコイズ */
  #72e3da,  /* ミント感ある */
  #70e9d4,
  #6fefcd,
  #6df4c4   /* 柔らかいグリーン系 */
);
}
.section_reason ol{
margin: 0 0 2rem;
padding: 0;
list-style: none;
counter-reset: number;
}
.section_reason ol li {
margin: 0 0 1rem 1.5rem;
padding: 1rem 1rem 1rem 1rem;
background-color: #fff;
font-size: 1.25rem;
font-weight: 600;
line-height: 2.5;
border: 1px solid #eaeaea;
border-radius: 4px;
list-style: none;
position: relative;
border-radius: 4px;
box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
transition: .3s;
}
.section_reason ol li:hover {
box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
transform: translateY(-1px);
}
.section_reason ol li em{
color: #007ac3;
font-style: normal;
}

.section_reason ol li span{
display: block;
font-size: 1rem;
font-weight: 500;
line-height: 1.5 !important;
}
.section_reason ol li:before {
float: left;
background: #dd0011;
width: 2.5rem;
height: 2.5rem;
border-radius: 50%;
color: #fff;
text-align: center;
line-height: 2.125;
counter-increment: number;
content: counter(number);
margin-right: .5rem;
margin-left: -2.5rem;
}

.accordion-faq summary{
position: relative;
list-style: none;
}
.accordion-faq summary::-webkit-details-marker {
display:none;
}
.accordion-faq[open] summary {
}
.accordion-faq summary::before{
content: "";
position: absolute;
z-index: 2;
left: 2px;
top: 4px;
display: block;
width: 40px;
height: 40px;
background-image: url(images/before_q.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: center center;
}
.accordion-faq:hover{
cursor: pointer;
}
.accordion-faq summary span{
display: block;
padding: .5rem 1rem .5rem 60px;
font-size: 1.125rem;
font-weight: 600;
transition: .5s;
}
.accordion-faq summary span:hover{
background: #aed5ec;
}

.accordion-faq {
margin: 0 0 .5rem;
padding: 1rem 1rem;
font-weight: 500;
transition: 0.5s;
word-break: break-word;
overflow-wrap: break-word;
word-wrap: break-word; /* 古いブラウザ向けの保険 */
}
.accordion-faq[open] {
height: auto;
background: #aed5ec;
}
.accordion-faq div{
padding: 2rem 1rem;
}
.pagination{
justify-content: center;
}

/*20509*/
:root {
  --color-bg1: rgb(8, 10, 15);     /* 背景のベース */
  --color-bg2: rgb(0, 17, 32);     /* 背景のベース2（濃紺） */

  /* メインカラー群を差し替え */
  --color1: 10, 207, 173;   /* #0acfad ターコイズ */
  --color2: 73, 189, 240;    /* #49bdf0 パステルブルー */
  --color3: 0, 122, 195;    /* #007ac3 青 */

  /* サポート用にトーン違い */
  --color4: 5, 150, 125;    /* ターコイズの濃いめ */
  --color5: 52, 120, 189;    /* #3478BD　カートの青 */

  --color-interactive: 0, 122, 195; /* 青をインタラクティブ色に */
  --circle-size: 80%;
  --blending: hard-light;
}
.front-mv_wrapper{
position: relative;
}
.id_dark{
position: absolute;
z-index: 99;
left: 0;
right: 0;
bottom: 20vh;
margin: 0 auto;
width: 30vw;
filter: drop-shadow(3px 3px 20px rgb(0 0 0 /1));
opacity: .5;
}
.front-mv {
position: absolute;
z-index: 10;
top: 30px;
left: 50%;
/*transform: translate(-50%, -50%);*/
left: 0;
right: 0;
margin: 0 auto;
user-select: none;
max-width: 90%;
padding: 40px;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px);
border-radius: 8px;
box-shadow: 0 4px 90px rgba(0, 0, 0, 0.1);
overflow: hidden;
}
.front-mv:before {
content: "";
position: absolute;
z-index: 2;
top: 0;
left: 0;
width: 100%;
height: 2px;
background: white;
background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, white 34%, white 89%, rgba(255, 255, 255, 0) 100%);
opacity: 0.3;
filter: blur(0.5px);
mix-blend-mode: hard-light;
}
.front-mv .noise {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: 1;
opacity: 0.1;
}
.front-mv .content {
position: relative;
z-index: 2;
text-shadow: -3px 0px 2px rgba(0, 0, 0, 0.1);
}

@keyframes moveInCircle {
0% {transform: rotate(0deg);}
50% {transform: rotate(180deg);}
100% {transform: rotate(360deg);}
}
@keyframes moveVertical {
0% {transform: translateY(-50%);}
50% {transform: translateY(50%);}
100% {transform: translateY(-50%);}
}
@keyframes moveHorizontal {
0% {transform: translateX(-50%) translateY(-10%);}
50% {transform: translateX(50%) translateY(10%);}
100% {transform: translateX(-50%) translateY(-10%);
}
}

.gradient-bg {
width: 100vw;
height: 100vh;
position: relative;
overflow: hidden;
background: linear-gradient(40deg, var(--color-bg1), var(--color-bg2));
top: 0;
left: 0;
}
.gradient-bg .svgBlur {
display: none;
}
.gradient-bg .noiseBg {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 1;
mix-blend-mode: soft-light;
opacity: 0.3;
}
.gradient-bg .gradients-container {
filter: url(#goo) blur(40px);
width: 100%;
height: 100%;
}
.gradient-bg .g1 {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color1), 0.8) 0, rgba(var(--color1), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: var(--circle-size);
height: var(--circle-size);
top: calc(50% - var(--circle-size) / 2);
left: calc(50% - var(--circle-size) / 2);
transform-origin: center center;
animation: moveVertical 30s ease infinite;
opacity: 1;
}
.gradient-bg .g2 {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color2), 0.8) 0, rgba(var(--color2), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: var(--circle-size);
height: var(--circle-size);
top: calc(50% - var(--circle-size) / 2);
left: calc(50% - var(--circle-size) / 2);
transform-origin: calc(50% - 400px);
animation: moveInCircle 20s reverse infinite;
opacity: 1;
}
.gradient-bg .g3 {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color3), 0.8) 0, rgba(var(--color3), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: var(--circle-size);
height: var(--circle-size);
top: calc(50% - var(--circle-size) / 2 + 200px);
left: calc(50% - var(--circle-size) / 2 - 500px);
transform-origin: calc(50% + 400px);
animation: moveInCircle 40s linear infinite;
opacity: 1;
}
.gradient-bg .g4 {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color4), 0.8) 0, rgba(var(--color4), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: var(--circle-size);
height: var(--circle-size);
top: calc(50% - var(--circle-size) / 2);
left: calc(50% - var(--circle-size) / 2);
transform-origin: calc(50% - 200px);
animation: moveHorizontal 40s ease infinite;
opacity: 0.7;
}
.gradient-bg .g5 {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color5), 0.8) 0, rgba(var(--color5), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: calc(var(--circle-size) * 2);
height: calc(var(--circle-size) * 2);
top: calc(50% - var(--circle-size));
left: calc(50% - var(--circle-size));
transform-origin: calc(50% - 800px) calc(50% + 200px);
animation: moveInCircle 20s ease infinite;
opacity: 1;
}
.gradient-bg .interactive {
position: absolute;
background: radial-gradient(circle at center, rgba(var(--color-interactive), 0.8) 0, rgba(var(--color-interactive), 0) 50%) no-repeat;
mix-blend-mode: var(--blending);
width: 100%;
height: 100%;
top: -50%;
left: -50%;
opacity: 0.7;
}

.blog-list_front{
}
.blog-list_front{
display: block;
margin: 0 0 2rem;
padding: 1rem;
background-color: #fff;
border: 1px solid #ccc;
box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.blog-list_front li {
display: grid;
grid-template-columns:auto 150px;
gap: 5px;
}
.blog-list_front li:not(:last-child) {
border-bottom: 1px solid #ccc;
}

.blog-list_front li .date{
grid-column:1 / 3;
grid-row:1 / 2;
}
.blog-list_front li a{
grid-column:1 / 2;
grid-row:2 / 3;
letter-spacing: .1em;
}
.blog-list_front li .term{
grid-column:2 / 3;
grid-row:2 / 3;
}
.home .btn-backnumber{
display: block;
margin:0 auto 4rem;
width: fit-content;
}

.link_category{}
.link_category img{
display: block;
margin: 0 auto 1.5rem;
}
.link_category h3{
margin: 0 auto 1.25rem;
font-size: 1.25rem;
font-weight: 700;
text-align: center;
left: .1em;
}
.link_category a.btn{
display: block;
margin:0 auto;
width: fit-content;
}

.contact .interlude {
position: relative;
overflow: hidden;
}
.contact .interlude::before {
content: "";
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 1600 800'%3E%3Cg %3E%3Cpath fill='%23ffb100' d='M486 705.8c-109.3-21.8-223.4-32.2-335.3-19.4C99.5 692.1 49 703 0 719.8V800h843.8c-115.9-33.2-230.8-68.1-347.6-92.2C492.8 707.1 489.4 706.5 486 705.8z'/%3E%3Cpath fill='%23ffb800' d='M1600 0H0v719.8c49-16.8 99.5-27.8 150.7-33.5c111.9-12.7 226-2.4 335.3 19.4c3.4 0.7 6.8 1.4 10.2 2c116.8 24 231.7 59 347.6 92.2H1600V0z'/%3E%3Cpath fill='%23ffbe00' d='M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z'/%3E%3Cpath fill='%23ffc500' d='M0 0v429.4c55.6-18.4 113.5-27.3 171.4-27.7c102.8-0.8 203.2 22.7 299.3 54.5c3 1 5.9 2 8.9 3c183.6 62 365.7 146.1 562.4 192.1c186.7 43.7 376.3 34.4 557.9-12.6V0H0z'/%3E%3Cpath fill='%23ffcc00' d='M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z'/%3E%3Cpath fill='%23ffd914' d='M1600 0H0v136.3c62.3-20.9 127.7-27.5 192.2-19.2c93.6 12.1 180.5 47.7 263.3 89.6c2.6 1.3 5.1 2.6 7.7 3.9c158.4 81.1 319.7 170.9 500.3 223.2c210.5 61 430.8 49 636.6-16.6V0z'/%3E%3Cpath fill='%23ffe529' d='M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z'/%3E%3Cpath fill='%23ffef3d' d='M1600 0H498c118.1 85.8 243.5 164.5 386.8 216.2c191.8 69.2 400 74.7 595 21.1c40.8-11.2 81.1-25.2 120.3-41.7V0z'/%3E%3Cpath fill='%23fff852' d='M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z'/%3E%3Cpath fill='%23ffff66' d='M1315.3 72.4c75.3-12.6 148.9-37.1 216.8-72.4h-723C966.8 71 1144.7 101 1315.3 72.4z'/%3E%3C/g%3E%3C/svg%3E");
background-size: cover;
transform: scaleY(-1);
z-index: 0;
animation: bgmoveY 20s linear infinite alternate;
}

@keyframes bgmoveY {
  0%   { background-position: 0 0; }
  100% { background-position: 0 100%; }
}


.contact a[href^="tel:"] {
font-family: 'Roboto Condensed', sans-serif;
font-size: 2.5rem;
line-height: 1;
}


.contact picture{
display: block;
margin: 0 auto;
}
@media (max-width:834px) {
.front-mv_wrapper{
height: 50vh;
overflow: hidden;
}
}
@media (max-width:600px) {
#wrapper-footer {
margin-top: 0rem;
padding-top: 2rem;
}
.front-mv{
padding: 0;
max-width: 96%;
}
.contact .link_line_sp {
display: block;
margin: 0 auto;
max-width: 300px;
}
.front-mv_wrapper{
height: 30vh;
}
}

.grid-feature{
display:grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
grid-template-rows:100px 100px;
}
.grid-feature div:nth-of-type(1){grid-column:1 / 2;grid-row:1 / 2;}
.grid-feature div:nth-of-type(2){grid-column:2 / 3;grid-row:1 / 2;}
.grid-feature div:nth-of-type(3){grid-column:3 / 4;grid-row:1 / 2;}
.grid-feature div a{
padding: 10px;
display: grid;
grid-template-columns: 80px auto 60px;
gap: 0 8px;
align-items: center;
border: 1px solid rgb(0 0 0 /.1);
border-radius: 4px;
transition: .3s;
}
.grid-feature div a:hover{
background-color: #fff;
border: 1px solid #007ac3;
transform: translateY(-1px);
}
.grid-feature div a img{
grid-column:1 / 2;
}
.grid-feature div a hgroup{
margin: 0;
padding: 0;
grid-column:2 / 3;
}
.grid-feature div a h5{
font-weight: 700;
color: #000;
}
.grid-feature div a p{
color: #3c3c3c;
}
.grid-feature div a i{
display: block;
width: 40px;
height: 40px;
line-height: 6px;
padding: 1rem;
color: #fff;
background-color: #007ac3;
grid-column:3 / 4;
border: 1px solid #007ac3;
border-radius: 50%;
transition: .3s;
}
.grid-feature div a:hover i{
transform: rotate(360deg);
}
@media(max-width:1200px){
.grid-feature div a{
grid-template-columns: 48px auto;
gap: 30px;
}
.grid-feature div a i{
display: none;
}
}
@media(max-width:834px){
.grid-feature div a{
grid-template-columns: 1fr;
gap: 0 15px;
place-items: center;
}
.grid-feature div a img{
margin-bottom: 15px;
grid-column:1 / 2;
grid-row:1 / 2;
}
.grid-feature div a hgroup{
margin: 0;
padding: 0;
grid-column:1 / 2;
grid-row:2 / 3;
}
.grid-feature div a hgroup h5{
text-align: center;
}
}
@media(max-width:600px){
.grid-feature{
gap: 10px;
}
.grid-feature div a {
padding: 5px;
gap: 0px;
}
.grid-feature div a img{
max-width: 60px;
}
.grid-feature div a hgroup h5{
font-size: .937rem;
}
.grid-feature div a hgroup p{
font-size: .75rem;
}
}