html { font-size: 2.6vw; }
body{font-size: 1.4rem;
line-height: 2.2;
}

.gd,
.gd2,
.gd3{width: 100%; }
.gd_s{width: 33rem; 
  margin-left: auto; margin-right: auto;
}
.gd2_s{width: 29rem; 
  margin-left: auto; margin-right: auto;
}
.pc{display:none}
.sp{display:block}

h2.bgw {
font-size: 3rem;
letter-spacing:-0.05em;
}

.sw-img .image{display:none;}

/*loading*/
.loading-pattern .loading-text{
margin-bottom: calc(2em + 7rem);
}
.loading-pattern .loading-text2 {
    position:absolute;
bottom: 7rem;
}
/*header*/

.site-header {
    padding: 2rem;
}
.site-title svg {
    width: 12rem;
    height: auto;
    display: block;
}
.site-title span {
    font-size: 1.1rem;
}

/* site-menu */


.site-menu .btn-entry.fix {
    right: 4.5rem;
    height: 3rem;
    line-height: 1;
}
.site-menu .btn-entry.fix .box-a a {
    font-size: 1.4rem;
    padding: .8rem 1.5rem;
    height: 3.5rem;
}
.btn-entry .box-a a:after {
    width: 1.9rem;
    height: 1.2rem;
}
.btn-entry.fix .box-a a:after {
    width: 1.3rem;
    height: .9rem;
    margin-left: .8em;
}
.nav-overlay-menu-inner{padding: 6rem 3rem 3rem; }
.nav-overlay-menu li a {
font-size: 1.8rem;
padding-left: .6em;
}
.nav-overlay-menu li span+span:before{
padding: 0 
}
.site-menu .nav-overlay-menu-li li:not(.nav-our-community) span+span {
margin-top: 0;
}
.site-menu .nav-overlay-inner .btn-entry a {
width:16rem;
}
.site-menu .blc-btn {
justify-content: space-between;
margin-top: 6rem;
gap: 0;
}
.nav-overlay-img {margin-top: 6rem;}
.nav-overlay-img img {
width: 100%;
}

/* hamburger */

#nav-toggle {
    width: 3.5rem;
    height: 3.5rem;
}
.site-menu.is-open #nav-toggle span:nth-child(1) { transform: translateY(.6rem) rotate(40deg); }
.site-menu.is-open #nav-toggle span:nth-child(3) { transform: translateY(-.6rem) rotate(-40deg); }

/*image-index*/

.image-index span{
    font-size:1.2rem;
    padding: .8rem 1.4rem 1rem ;
}
.image-index span.t1{
    top: 0; left:1.4rem;
    padding: 1.4rem 1rem 1.2rem;
}
.image-index span.t2{
    font-size:4rem;
}
.image-index span.t3{
    padding-bottom: 1rem;
}

/*home*/

.home .section1 .blc-news .blc-fullmovie{display:inline-block;}
.home .section1 .blc-news .blc-news-link{
margin-top: 1rem;
}
.home #philosophy .image1 {margin-top: 5rem; text-align:right}
.home #philosophy .image1 img{width: 28rem; height: auto;}

.home #philosophy .image2 {margin-top: 3rem;}
.home #philosophy .image2 img{width: 30rem; height: auto;}

.home #episode .btn{text-align:right}

.home #episode .episode-index{margin-top: 7rem;}

.home #vision .text2{margin-top: 3rem;}

.home #job-categories .btn {text-align: right}
.home #job-categories .swiper {
    overflow: visible;
}
.home #job-categories .swiper .swiper-slide {
    width: calc(100% - 4rem);
    padding: 0 1rem;
}
.home #work-place .text2{margin-top: 3rem;}
.home #work-place .image2{margin-top: 5rem; width: 25.5rem;margin-left: 10.5rem;}

.home #our-business .inner .text .btn{position:absolute;
bottom: 4rem; left: 0;
}
.home #our-business .inner .text {
height: calc(100% - 12.5rem);
}
.home #entry .btn {
    margin-top: 4rem;
text-align:center;
}
.home #entry {
padding-bottom: 8rem;
}

/*page-title*/

.page-title {
	padding-bottom:5rem;
}
.page-title p.fo3 {
    margin-bottom: 0;
}
.page-title h1 {
    font-size: 3.5rem;
    letter-spacing:-0.05em;
}

/*entry-content*/

.page-section {
    padding-bottom: 5rem;
}
section+section.page-section {
padding: 5rem 0;
}
.page-title h1.sm {
font-size: 3rem;
}
.page-title .lead {
text-align:left;
}
.page-content .section-image{
    height: auto ;
}

/*philosophy*/
#philosophy .message p {
padding: 6rem 6rem 4rem 4rem;
}
#philosophy .message p .copy {
    font-size: 3rem;
    height: 38rem;
}
#philosophy .message .name {
font-size:1.8rem;
}
#philosophy .interview .text {margin-top: 5rem}
#philosophy .interview h2 {margin-bottom: 2rem}

/*episode*/

#episode .introduction .image img{display:block}
#episode .introduction .text{padding: 5rem 0}
#episode .introduction .text p{font-size: 1.8rem}

#episode .blc-episode{
    padding: 5rem;
    height: 82rem;
}
/*faq*/
#faq .page-section {padding-top: 0}
#faq .page-section h2{ 
text-align:center;
}
#faq .blc-faq {
font-size: 1.8rem;
padding-top: 2rem;
}
#faq .page-section .inner {
padding-bottom: 2rem;
}
#faq .blc-faq+.blc-faq {
margin-top: 2rem;
}
#faq .blc-faq .faq-a p:last-child {
font-size: 1.4rem;
}
#faq .blc-faq .m {
width: 2.5rem;
height: 2.5rem;
}
.faq-btn {
width: 3rem;
height: 3rem;
right: 0;
top: 2rem;
}

/*our-business*/
#our-business .page-section .img {
margin-top: 4rem;
}

#our-business .page-section .img img{
   width: 25.5rem;
}
#our-business .page-section {
padding-bottom: 6rem;
}

/*entry*/

#entry .page-section h2 {
font-size: 1.8rem;
}
#entry .page-section table th, 
#entry .page-section table td {
display:block;
text-align:left;
border: none;
padding: 0 1rem;
}
#entry .page-section table th{
border-top: .1rem solid;
padding-top: 1.5rem;
}
#entry .page-section table td{
padding-bottom: 1.5rem;
}
#entry .page-section table tr:last-child th {
border-bottom: none;
}
#entry .page-section .blc-btn {
gap: 2rem;
}
.btn.btn-entry2 .box-a a {
font-size: 1.8rem;
}
.btn.btn-entry3 .box-a a {
font-size: 1.8rem;
padding: 1.6em 1em;
width: 21rem;
}

#entry .page-section {
padding-bottom: 8rem;
}



/*community*/

#our-community .list li{
    margin-top:6rem;
}
#our-community .message h2 {
font-size: 3rem;
margin-top: 0;
}
#our-community .message .image {margin-top: 5rem; text-align:right}
#our-community .message .image img{width: 20rem; height: auto}


/*footer*/
.blc-footer {
padding: 4rem 0 6rem;
position:relative;
}
.nav-overlay-menu li span,
.blc-footer-recruit li span{width: auto}
.nav-overlay-menu  li a ,
.blc-footer-recruit li a {
flex-direction: row;
justify-content:left;
align-items: flex-end;
}
.nav-overlay-menu ul li.nav-our-community a,
.blc-footer-recruit ul:last-child li:last-child a {
flex-direction: column;
align-items:initial;
}
.blc-footer-recruit li span+span, 
.nav-overlay-menu-li li span+span {
font-size: 1rem;
}
.nav-overlay-menu  li span+span:before,
.blc-footer-recruit li span+span:before{
	content:'/';
	display:inline-block;
	padding: 0 .8rem ;
}
.nav-overlay-menu  ul:last-child li:last-child span+span:before,
.blc-footer-recruit  ul:last-child li:last-child span+span:before{
	display:none;
}

.nav-overlay-menu .btn.btn-coporate .box-a a,
.blc-footer-other .btn.btn-coporate .box-a a{
font-size: 1rem;
height: 3.6rem; 
}
.blc-footer-other{margin-top: 6rem;}
.blc-footer-other .btn-entry .box-a {
width: 15.4rem;
}
.blc-footer-other ul {
margin-top:4rem;
}

.btn.btn-coporate .box-a a {
font-size: 1rem;
height: 3.4rem;
padding: 0 1.5em;
}
.instagram ,
.instagram a {
width: 3.4rem;
height: 3.4rem;
}
.blc-footer-recruit{padding-left: 1rem}
.btn-entry .box-a a {
font-size: 1.8rem;
padding: 1.8rem 0;
}
.footer-privacypolicy {
position: absolute;
bottom: 6rem;
right: 0;
}


