#sticky{
	gap:10rem;
}

#sticky_left{
	width: calc(35% - 5rem);
}

#sticky_right{
	width: calc(65% - 5rem);
}

#sticky_right .l-flex{
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 5rem;
}

#sticky_right .l-flex a{
    display: inline-block;
}

#sticky_right .l-flex h4{
font-size: 2rem;
    text-align: right;
}

#sticky_right .l-flex p{
    line-height: 1;
    margin-bottom: 10px;
}

#sticky_child{
aspect-ratio: 3 / 4;
	position:relative;
}

#sticky_child:before{
content: "";
    position: absolute;
    left: -10px;
    bottom: -10px;
    width: 100px;
    height: 100px;
    background: var(--accent);
    z-index: -1;
}

.message-wrap h4{
	font-size:2rem;
    position: relative;
    padding-left: 4rem;
    margin-bottom: 2rem;
}

.message-wrap h4:before{
	content:"";
	position:absolute;
	left:0;
	top:50%;
	width:3rem;
	height:1px;
	background:var(--accent);
}

.message-wrap p{
	margin-bottom:5rem;
}

.message-wrap p:last-child{
	margin-bottom:0;
}

.catch-title {
	margin:10rem 0;
}

#philosophy{
	    overflow: hidden;	
}

#page__moving{
width: 100vw;
    margin: 10rem calc(50% - 50vw);
    position: relative;
    text-align: center;
}

#page__moving h3{
    font-size: 2.5rem;
    color: var(--accent);
    position: relative;
    z-index: 3;
    text-align: center;
    line-height: 5;
    display: inline-block;
	padding:0 5rem;
}

#page__moving h3::before,
#page__moving h3::after {
	content:"";
    position: absolute;
    top: -3px;
    width: 40px;
    height: 100%;
    content: '';
    border-top: solid 3px;
    border-bottom: solid 3px;
}

#page__moving h3::before {
    border-left: solid 3px;
    left: 0;
}

#page__moving h3::after {
    border-right: solid 3px;
    right: 0;
}

.moving-text-wrap {
  display: flex;
  overflow: hidden;
position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.moving-text-item {
  display: flex;
  list-style: none;
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
}

.moving-text-item img {
  width: 150vw!important;
  margin: 0 3rem;
}

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

#philosophy_list li{
	margin-bottom:5rem;
}

#philosophy_list li:last-child{
	margin-bottom:0;
}

#philosophy_list li h4{
    font-size: 2rem;
    margin-bottom: 3rem;
}

#philosophy_list li h4 span{
    font-family: "Inter", "NotosansJP-B", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Meiryo", sans-serif;
line-height: 1;
    font-size: inherit;
}

#philosophy_list li h4 span:first-child{
    margin-right: 3rem;
    display: inline-block;
}

#philosophy_list li h4 span:last-child{
	color:var(--main-r);
	background:var(--sub);
	padding:5px;
}

#company_profile table h4{
    font-family:"NotosansJP-R", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Meiryo", sans-serif;
	margin-bottom:10px;
}

#company_profile table tr td{
    vertical-align: top;
    border-bottom: 1px solid #B9B9B9;
    padding: 2rem 0;
    font-family:"NotosansJP-R", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Meiryo", sans-serif;
}

#company_profile table tr td:first-child{
	width:25%;
}

#company_profile table tr:first-child td{
	border-top:1px solid #B9B9B9;
}

@media screen and (max-width:1600px) {

}

@media screen and (max-width:1400px) {

}

@media screen and (max-width:1200px) {
#sticky_left {
    width: calc(30% - 5rem);
}
#sticky_right {
    width: calc(70% - 5rem);
}
#page__moving h3 {
    font-size: 2rem;
    line-height: 4;
}
#philosophy_list li h4 {
    font-size: 1.6rem;
    margin-bottom: 2rem;
}
#company_profile table h4{
    font-size: 1.4rem;
	}
.message-wrap h4,
#sticky_right .l-flex h4{
    font-size: 1.6rem;
}
}

@media screen and (max-width:960px) {
#sticky {
    gap: 5rem;
}
#sticky_left {
    width: calc(30% - 2.5rem);
}
#sticky_right {
    width: calc(70% - 2.5rem);
}
}

@media screen and (max-width:767px) {
#page__company .title-wrap {
    text-align: left;
}
#sticky_child {
    aspect-ratio: 4 / 4;
}
#sticky_child:before {
    width: 70px;
    height: 70px;
}
.catch-title {
margin: 0;
    margin-bottom: 5rem;
    font-size: 1.6rem;
    text-align: center;
}
}