@charset "UTF-8";

html {
font-size:62.5%;
}
body {
font-size:1.4rem;
font-family: "Noto Sans JP", sans-serif;
font-size:16px;
color: #444;
line-height: 1.8;
letter-spacing: 0.07em;
}

a{color: #123577;}

*, *::before, *::after {
box-sizing:border-box;
}

.cf::after {
content:'';
display:block;
clear:both;
}

img{
width: 100%;
height: auto;
vertical-align: bottom;
}

.pcnone{display: none;}

.pd-120{padding: 120px 0px;}
.pd-100{padding: 100px 0px;}
.pd-80{padding: 80px 0px;}
.pd-50{padding: 50px 0px;}
.pd-30{padding: 30px 0px;}

.pt-180{padding-top:180px;}

.pb-50{padding-bottom:50px;}
.pb-100{padding-bottom:100px;}
.pb-150{padding-bottom:150px;}


.mt-60{margin-top: 60px;}

.mb-30{margin-bottom: 30px;}
.mb-60{margin-bottom: 60px;}
.mb-120{margin-bottom: 120px;}

.tc{text-align:center;}

section{
width: 100%;
clear: both;
}

main{
width: 1110px;
margin:0 auto;	
}

header{
width: 100%;
float: left;
background-color: #e61673;
position: relative;
z-index: 10;
}

.headerwrap {
display: flex;
justify-content: flex-start;
}

.headerwrap div:last-of-type {
margin-left: auto;
}

.header-logo{
width:400px;
display: flex;
justify-content: center;
align-items: center;
margin-left: 20px;
}

.header-link{
width:100%;
float:right;
}

.header-link ul{
display: flex;
justify-content: flex-end;
}

.happylions{
	display:flex;
	justify-content: center; /* 左右中央 */
  align-items: center;
	gap: 40px;
}

.happylions-logo{
	width:220px;
}

.happylions-text{
	font-size:100px;
	font-family: "Bonheur Royale", cursive;
	line-height:1.2;
	color:#e61773;
}
.lci_em{
	text-align:center;
}

.lci_em img{
	width:160px;
}

.messege{
font-size: 14px;
padding-top: 11px;
color: #fff;
margin-right:10px;
}

.header-link li a{
display: block;
padding: 10px 30px;
font-size: 14px;
background: #000;
color: #fff;
float:right;
}

.header-link li a.tel{
background: #fff;
  color: #e61673;
	
}

/* 6-1-4.js、vegas.min.jsと連動*/
#slider {
width: 100%;
height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
}

.slide-text{
/*font-family: "Zen Old Mincho", serif;*/
font-family: "Outfit", sans-serif;
position: absolute;
z-index: 2;
top: 47%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
font-size:8em;
letter-spacing: 0.2em;
text-transform: uppercase;
color: #fff;
line-height: 1.2;
}

.flex-center{
display: flex;
justify-content: center;
gap: 40px;
}

.grid-2{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;	
}

.grid-3{
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 40px;	
}

.grid-4{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
}

h3.lions_title{
	text-align:center;
	font-size:2em;
	margin-bottom:30px;
}

h2.title{
text-align: center;
font-size: 2em;
margin-bottom: 80px;

}


/*productproductproductproductproductproductproductproductproductproductproductproductproductproductproduct*/

.bg-01{
background:url(../images/26421638.jpg) #e9e9e9;
background-repeat:no-repeat;
background-size:cover;
background-position: -15% 0%;
}

.productlist{
position: relative;
display: grid;
place-items: center;
}

.productlist-text{
position: absolute;
}

.productlist-text h3{
font-size: 1.5em;
color: #fff;
margin-top: 20px;
}

.more-btn{
padding-top: 25px;
}

.more-btn a{
background: #000;
color: #fff;
font-size: 12px;
padding: 10px 30px;
border-radius: 30px;
}

.subtitle {
font-size: 14px;
}

.center-link{
text-align:center;
margin-top:60px;
}

.center-link a{
background: #e61673;
padding: 13px 30px;
color: #fff;
display: inline-block;
}

/*newsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnewsnews*/

.bg-02{
background:url(https://nagano-happylc.org/wp-content/uploads/2026/07/bg01.jpg);
background-repeat:no-repeat;
background-size:cover;
}

h3.newstitle a{
font-weight:normal;
margin-top:15px;
font-size:15px;
color: #b71f1f;
display: block;
}

.bg-03{
background:url(https://nagano-happylc.org/wp-content/uploads/2026/07/bg01.jpg);
background-repeat:no-repeat;
background-size:cover;
}

.video-box{
text-align:center;
}

.newsimg img{
width: 340px;

  object-fit: cover;
  object-position: top;
}

/*pagepagepagepagepagepagepagepagepagepagepagepagepagepagepagepagepage*/

.page-title{
text-align: center;
position: absolute;
top: 60%;
left: 0;
right: 0;
color: #fff;
font-size: 28px;
letter-spacing: 0.1em;
}

.thumbox{
width:40%;
float:left;
}

.single_contents{
width:55%;
float:right;
}

h2.single_title{
font-size:24px;
margin-bottom:15px;
letter-spacing: 2px;
}

.single_date{
font-size: 16px;
font-family: "Jura", sans-serif;
font-weight: bold;
border-left: 5px solid #ddd;
padding-left: 10px;
margin-bottom: 5px;
}


/*contactcontactcontactcontactcontactcontactcontactcontactcontactcontactcontactcontactcontact*/

.contact-box p{
text-align:center;
}

.contact-btn{
text-align:center;
}

.contact-btn li a{
border: 1px solid #9b9b9b;
padding: 20px 50px;
transition: 0.6s;
color: #484848;
}

.contact-btn li a:hover{
background: #e61673;
transition: 0.6s;
color: #fff;
}

/*footerfooterfooterfooterfooterfooterfooterfooterfooterfooterfooterfooterfooterfooterfooter*/

footer{
width: 100%;
text-align: center;
padding-top: 50px;
clear: both;
background: #e9e9e9;
}

.foot-box{
display:grid;
grid-template-columns:1fr;
gap: 50px;
}

.add{
font-size:14px;
text-align:left;
}

.add dt{
font-size: 16px;
margin-bottom: 3px;
font-weight: 500;
}

.foot-info{
display: flex;
justify-content: center;
}

.foot_logo{
width: 120px;
margin-right: 25px;
}

.foot-nav{
display: flex;
gap: 41px;
text-align: center;
margin: 0 auto;
justify-content: center;
}

.foot-nav li a{
color:#222;
}

.foot-nav li a:hover{
color: #b71f1f;
}

footer .copy{
color: #fff;
line-height: 4;
font-size: 12px;
background:#e61673;
margin-top: 35px;
}