/*
Theme Name:   link_renew260128
Author:       Yuichi Haraguchi
Description:  これは自作のWordPressテーマです。
Version:      1.0.0
*/


/* =========================================================
  BASE (Desktop-first)
========================================================= */
body{
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}
body.home{
	background: #F8F9FA;
}
h1,
h2,
h3,
h4,
h5,
p{
	margin-bottom: 0;
}
img{
	width: 100%;
	max-width: 100%;
	height: auto;
}
.result_brand_wrap .slick-slide img {
  width: 100%;       /* 横幅を親要素に合わせる */
  height: 150px;     /* ここで高さを固定（お好みで調整） */
  object-fit: contain; /* 比率を保ったまま枠を埋める */
}
.navbar{
	padding-top:40px; 
}
.navbar-toggler-icon{
	background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-toggler{
	border: none;
}
#mv{
	background-image:url(./images/mv.png);
	background-position: top center;
	background-size: contain;
	width: 100%;
	aspect-ratio:8/5;
}

#mv .header-logo{
	width: 114px;
}
.home #mv_inner{
	position: relative;
	height: calc(var(--adjusted-mv-height,auto) - min(6.09375vw ,117px));
}

.home #mv_front{
	position: absolute;
	width:90%;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
}
@media (min-width: 576px) {
    .home #mv_front {
        max-width: 540px;
    }
}
@media (min-width: 768px) {
    .home #mv_front {
        max-width: 720px;
    }
}
@media (min-width: 992px) {
    .home #mv_front {
        max-width: 960px;
    }
}
@media (min-width: 1200px) {
    .home #mv_front {
        max-width: 1140px;
    }
}
	@media (min-width: 1400px) {
    .home #mv_front {
        max-width: 1320px;
    }
}
.home #mv_front .main{
	font-size:min(3.3333333333333335vw,64px);
	color: #fff;
	font-weight: 400;
	line-height: 1.18;
	margin-bottom: 2rem;
	
}
.home #mv_front .main span{
	font-size:min(5vw,96px);
	
}
.home #mv_front .sub{
	font-size:min(2.083333333333333vw,40px);
	color: #fff;
	font-weight: 300;
	letter-spacing: .18em;
	line-height: 1.5;
	
	margin-bottom: 3rem;
}

.home #mv_front .sub span{
	position: relative;
	display: inline-block;
	text-decoration: underline;
	text-decoration-thickness:9px;
	text-decoration-color: #CF040E;
	text-underline-offset:-5px;
}
/*.home #mv_front .sub span::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 9px;
	bottom: 9px;
	left: 0;
	background: #CF040E;
	z-index: -1;
}*/

.home #mv_front .result{
	display: flex;
	gap:15px;
	margin-bottom: 3rem;
	flex-wrap: wrap;
}
.home #mv_front .result .item{
	width: min(14.322916666666666vw,275px);
	
}
.home #mv_front .result .item .item_wrap{
	position: relative;
	text-align: center;
	color: #fff;
	padding: 0 min(2.3958333333333335vw,46px);
	padding-top: 10px;
}

.home #mv_front .result .item .item_wrap::before{
	content: "";
	background-image: url(./images/fv_icon1.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	position: absolute;
	top:0;
	left: 0;
	width: min(3.0729166666666665vw,59px);
	aspect-ratio:59/134;
		
}
.home #mv_front .result .item .item_wrap::after{
	content: "";
	background-image: url(./images/fv_icon2.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	position: absolute;
	top:0;
	right: 0;
	width: min(3.0729166666666665vw,59px);
	aspect-ratio:59/134;
		
}
.home #mv_front .result .item p{
font-size: min(1.1458333333333333vw,22px);
	font-weight: 300;
	letter-spacing: .08em;
	line-height: 1.0;
}
.home #mv_front .result .item p:nth-child(2){
font-size: min(1.5625vw,30px);
	font-weight: 600;
	background: linear-gradient(180deg, #fff 0%, #F9E6AC 100%);

  /* 2. 背景をテキストで切り抜く（標準プロパティとSafari用） */
  -webkit-background-clip: text;
  background-clip: text;

  /* 3. テキスト自体の色を透明にする */
  -webkit-text-fill-color: transparent;
  color: transparent; /* フォールバック用 */
}
.home #mv_front .result .item p span{
	
	font-weight: 500;
	letter-spacing: .03em;
	font-size: min(3.90625vw,75px);
}
.home #mv_front .cta{
	display: flex;
	gap:15px;
}
.home #mv_front .cta .item{
	width: min(19.53125vw,375px);
	text-align: center;
}
.home #mv_front .cta .item a{
	padding: 1rem 0;
	font-size: min(1.4583333333333333vw,28px);
	letter-spacing: .18em;
	line-height: 1.5;
	font-weight: 300;
	display: block;
	text-decoration: none;
}
.home #mv_front .cta .item:first-child a{
	background: #041931;
	border-radius: 51px;
	border: solid 1px #fff;
	color: #fff;
}
.home #mv_front .cta .item:last-child a{
	background: #fff;
	border-radius: 51px;
	border: solid 1px #041931;
	color: #041931;
}
.home #mv_front .cta .item span{
	display: inline-block;
	position: relative;
	padding-right: 45px;
}
.home #mv_front .cta .item span::after{
	position: absolute;
	top:calc(50% - 17.5px);
	content: "";
	background-image: url(./images/arrow_white.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 35px;
	right: 0;
	aspect-ratio:1/1;
		
}
.home #mv_front .cta .item:last-child span::after{
	background-image:url(./images/arrow_navy.svg);
}
.home #mv_news{
	position: relative;
	display: flex;
	align-items: center;
	left: 0;
	bottom:0;
	z-index: 1;
	background: #212529;
	height: min(6.09375vw ,117px);
	width: 100%;
}

.home #mv_news #scroll_btn{
	position: absolute;
	bottom:0;
	right: 2rem;
	
}
.home #mv_news #scroll_btn a{
	color: #fff;
	text-decoration: none;
	font-size: 15px;
	letter-spacing: .18em;
}

.home #mv_news #scroll_btn a span{
	padding-bottom: 135px;
	position: relative;
	display: inline-block;
	
}
.home #mv_news #scroll_btn a span::after{
content: "";
	width: 1px;
	height: 131px;
	background: #fff;
	position: absolute;
	left: calc(50% - .5px);
	bottom: 0;
}
.home #mv_news .container{
	position: relative;
	
}
.home #mv_news .mv_bottom_amazon{
	position: absolute;
	left: 0;
	bottom:0;
	width: min(44.01041666666667vw,845px);
}
.home #mv_news #mv_news_flex{
	display: flex;
	padding-left: calc(min(44.01041666666667vw,845px) + 30px );
	
}
.home #mv_news #mv_news_flex .item{
	width: fit-content;
	color: #fff;
	letter-spacing: .18em;
}
.home #mv_news #mv_news_flex .item.ttl{
	font-size: 20px;
	font-weight: bold;
	padding-right: 85px;
	position: relative;
	margin-right: 15px;
}
.home #mv_news #mv_news_flex .item.date{
	margin-right: 15px;
	font-size: 20px;
}
.home #mv_news #mv_news_flex .item.ttl::after{
	position: absolute;
	content: "";
	width: 70px;
	height: 1px;
	top: calc(50% - .5px);
	right: 0;
	background: #fff;
	
}
.home #mv_news #mv_news_flex .item a{
	color: #fff;
	text-decoration: none;
	letter-spacing: .18em;
	font-size: 20px;
}
.home #mv_news #mv_news_flex .item{
	width: fit-content;
}
@media (max-width: 1100px) {
	
.navbar{
	padding-top:20px; 
}
.home #mv_front .main {
    font-size: 45px;
	}
	.home #mv_front .sub{
		font-size: 20px;
	}.home #mv_front .cta .item span::after{
		width: 25px;
	top:calc(50% - 12.5px);
	}
	.home #mv_front .result{
		margin-bottom: 1.5rem;
	}
	.home #mv_front .cta .item{
		width: 300px;
	}
.home #mv_front .cta .item a{
	padding: .75rem 0;
	font-size: 20px;
	}
.home #mv_news #scroll_btn a{
	font-size: 14px;
}
.home #mv_news #mv_news_flex .item.ttl{
	font-size: 16px;
	}
.home #mv_news #mv_news_flex .item.date{
	font-size: 16px;
}
.home #mv_news #mv_news_flex .item a{
	font-size: 16px;
}
}
.navbar-nav li a{
	color: #fff;
	letter-spacing: 0.18em;
	font-size: min(1.0416666666666665vw,20px);
}
.header-btn{
	text-decoration: none;
	display: block;
	padding-left: 2em!important;
	padding-right: 2em!important;
	border-radius: 30px;
	background: #1A4578;
	border:1px solid #F8F9FA;
}
.header-btn span{
	position: relative;
	padding-left: 35px!important;
	display: inline-block;
}
.header-btn span::before{
	width: min(1.3020833333333335vw,25px);
	aspect-ratio:1/1;
	content: "";
	background-image: url('./images/emvelope.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	top: calc(50% - ( min(1.3020833333333335vw,25px) / 2));
}
footer {
  background: linear-gradient(
    to bottom,
    #F8F9FA 156px,
    #041931 156px
  );
	padding-bottom: 1rem;
}
footer .footer_cta{
	display: flex;
	border-radius: 24px;
	background: #819cc9;
	padding: 3em 1em;
	margin-bottom: 80px;
}

footer .footer_cta .item{
width: 50%;
	padding: 0 1em;
	position: relative;
}

footer .footer_cta .item .cta_btn{
	border: 1px solid #fff;
	width: 68px;
	aspect-ratio:1/1;
	position: absolute;
	right:1em;
	top: calc(50% - 34px);
}
.arrow-right {
  position: relative;
  display: block;
	height: 100%;
}

.arrow-right::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 19px;
  width: 8px;      /* 矢印のサイズ */
  height: 8px;     /* 矢印のサイズ */
  border-top: 2px solid #fff;    /* 上の線 */
  border-right: 2px solid #fff;  /* 右の線 */
  transform: translateY(-50%) rotate(45deg); /* 45度回転させて矢印にする */
}
.arrow-right::before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% - 12.25px);
  width: 25.5px;      /* 矢印のサイズ */
  height: 2px;
  transform: translateY(-50%); /* 45度回転させて矢印にする */
	background: #fff;
}
footer .footer_cta .item .cta_ttl{
	color: #fff;
	font-size: 48px;
	font-weight: 600;
	margin-bottom: 1rem;
}
footer .footer_cta .item .cta_subttl{
	color: #fff;
	font-size:24px;
	font-weight: 600;
	margin-bottom: 1rem;
}
footer .footer_cta .item .cta_subttl span{
	position: relative;
	display: inline-block;
	
}
footer .footer_cta .item .cta_subttl span::after{
content: "";
	width: 81px;
	height: 5px;
	background: #fff;
	position: absolute;
	top: calc(50% - 2.5px);
	right: -90px;
}
footer .footer_cta .item .text{
	color: #fff;
	font-size:20px;
	font-weight: 500;
	line-height: 1.9;
}
footer .footer_flex{
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
footer .footer_flex .footer_logo{
	width: 114px;
	height: auto;
	margin-bottom: 1rem;
}
footer .footer_flex .address{
	font-size: 20px;
	color: #fff;
	letter-spacing: .18em;
	line-height: 1.5;
	margin-bottom: 1rem;
}
footer .footer_flex .foot_sns{
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	gap:10px;
	
}
	
footer .footer_flex .foot_sns li{
	width: 55px;
}
footer #copyright{
	text-align: center;
	font-size:14px;
	color: #fff;
}
footer .navigation{
	align-self: center;
}
footer .navigation ul{
	padding: 0;
	margin: 0;
	display: flex;
	gap:2rem;
	list-style: none;
}
footer .navigation ul li a{
	color: #fff;
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: .18em;
	text-decoration: none;
}
#service_cta{
	position: relative;
	background: #0A2647;
	padding: 80px 0;
}
#service_cta::before{
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	content: "";
	background: url(./images/service_tocontact.jpg);
	background-position: center;
	background-size: cover;
}
#service_cta h2{
font-weight: 700;
font-size: 36px;
line-height: 1.5;
letter-spacing: 0.18em;
color: #FFFFFF;
	margin-bottom: 1.5rem;
}
#service_cta p{
font-weight: 700;
font-size: 24px;
line-height: 1.5;
letter-spacing: 0.18em;
color: #FFFFFF;
	margin-bottom: 1.5rem;
}
#service_cta a{
	display: block;
	width: 418px;
	padding: 1.5rem 0;
	border-radius: 39px;
	background: #fff;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	color: #0A2647;
}
footer{
	background: #041931;
	padding-top: 80px;
}
@media (min-width: 1440px) {
footer .container{
	max-width: 1440px;
}
}

#result_brand{
	padding:80px 0; 
}
#result_brand h2{
font-size: 24px;
	text-align: center;
	letter-spacing: .18em;
	margin-bottom: 2rem;
}
#service{
	padding: 80px 0;
}
#service h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
}
#service h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
}
#service .service_flex{
	display: flex;
	justify-content: space-between;
	margin-bottom: 7rem;
}
#service .service_flex .item{
	width: 345px;
	position: relative;
}
#service .service_flex .item:nth-child(2){
	top: 1.5rem;
}
#service .service_flex .item:nth-child(3){
	top: 3rem;
}
#service .service_flex .item .img{
	margin-bottom: 1.5rem;
}
#service .service_flex .item .ttl{
	margin-bottom: 1rem;
}
#service .service_flex .item a{
	position: relative;
	display: block;
	text-decoration: none;
	color: #161616;
font-weight: 300;
font-size: 30px;
line-height: 1.6;
	
}
#service .service_flex .item a::after{
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 35px;
	aspect-ratio:1/1;
	background: url('./images/arrow_navy.svg');
	background-size: 100% auto;
	background-position: center;
	background-repeat: no-repeat;
}
#service .service_flex .item .des{
	padding-bottom: .75rem;
	border-bottom: 1px solid #AFAFAF;
	font-size: 15px;
}
#service .service_cta{
	background: #041931;
	padding: 50px 0;
}
	
#service .service_cta p{
	text-align: center;
	font-size: 48px;
	color: #fff;
	margin-bottom: 1.5rem;
}
#service .service_cta p span{
	font-size: 36px;
}
#service .service_cta p:first-child{
	margin-bottom: 1rem;
	font-size: 30px;
}
#service .service_cta a{
	background: #fff;
	color: #1A4578;
	position: relative;
	text-align: center;
	display: block;
	max-width: 511px;
	width: 90%;
	padding: 1rem 0;
	border: 1px solid #1A4578;
	border-radius: 51px;
	text-decoration: none;
	font-size: 28px;
	margin: 0 auto;
}
#service .service_cta a::after{
	position: absolute;
	top:calc(50% - 17.5px);
	content: "";
	background-image: url(./images/arrow_navy.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 35px;
	right: 1rem;
	aspect-ratio:1/1;
}
#reason{
	padding: 80px 0;
}
#reason h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
}
#reason h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
}
#reason .reason_cont{
	border-left: 18px solid #041931;
	border-radius: 20px;
	box-shadow: 0 0 14.4px 4px rgba(0,0,0,.1);
	margin-bottom: 4rem;
}
#reason .reason_cont:not(:last-child){
	margin-bottom: 2rem;
	
}
#reason .reason_cont .reason_flex{
	display: flex;

}
#reason .reason_cont .reason_flex .item:first-child{
	padding: 0 1rem 0 1.5rem;
	align-self: center;
	width: calc(100% - 562px);
}
	
#reason .reason_cont .reason_flex .item:last-child{
	width: 562px;
}
#reason .reason_cont .reason_flex .item img{
	height: 100%;
}

#reason .reason_cont .reason_flex .item .num{
	color: #B6B6B6;
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: .75rem;
	letter-spacing: 0;
}
#reason .reason_cont .reason_flex .item h3{
	color: #0A2647;
	font-size: 24px;
	line-height: 1.5;
	margin-bottom: 1rem;
	letter-spacing: .18em;
}
#reason .reason_cont .reason_flex .item p{
	
	letter-spacing: .1em;
	line-height: 1.5;
}
#reason .reason_copy{
	font-size: 35.68px;
	letter-spacing: .18em;
	text-align: center;
}
#img_cont{
	padding:80px 0;
}

#img_cont ul{
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
}
#works{
	padding: 80PX 0;
}
#works h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
}
#works h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
}
#works .works-list{
	padding: 0;
	margin: 0;
	list-style: none;
}
#works .works-item{
	
}
#works .works-flex{
	display: flex;
	padding: 2rem 3rem;
	border-radius: 25px;
	background: #fff;
	justify-content: space-between;
}
#works .works-flex .works-img{
	width: 450px;
}
#works .works-flex .works-content{
	align-self: center;
	width: 480px;
}
#works .works-flex .works-content .works-result{
	font-size: 24px;
	letter-spacing:.18em;
	color: #0A2647;
}
#works .works-flex .works-content .works-company{
	font-size: 24px;
	letter-spacing:.18em;
	color: #0A2647;
	margin-bottom: 1.5rem;
}
#works .works-flex .works-content .works-detail{
	font-size: 24px;
	letter-spacing:.1em;
	line-height: 1.7;
	color: #0A2647;
}
#works .works-flex .works-img img{
	border-radius: 26px;
}
#works .works_slider_wrap{
	position: relative;
	margin-bottom: 5rem;
	box-shadow: 0 0 18.9px 4px rgba(0,0,0,.1);
	border-radius: 25px;
}

#works .prev-arrow,
#works .next-arrow {
	position: absolute;
	top:calc(50% - 36.5px);
    display: block;
    width: 73px;
    height: 73px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
    transition: all .3s ease;
    cursor: pointer;
	z-index: 1;
	border-radius: 50%;
}

#works .prev-arrow {
	left: -36.5px;
    background-image: url(./images/works_pre.svg);
}
#works .next-arrow {
    background-image: url(./images/arrow_navy.svg);
	right: -36.5px;
}
#works .voice h2{
	text-align: center;
	font-size: 36px;
	line-height: 1.5;
	letter-spacing: .18em;
	color: #0A2647;
	margin-bottom: 1.5rem;
}

#works .voice .voice_item{
	background: #041931;
	padding: 2.5rem 1.75rem;
	
}
#works .voice .voice_item:not(:last-child){
	margin-bottom: 1rem;
	
}
#works .voice .voice_item .voice_flex{
	display: flex;
	justify-content: space-between;
	
}
#works .voice .voice_item .voice_flex .item:first-child{
	width: 406px;
}
#works .voice .voice_item .voice_flex .item:last-child{
	width: calc(100% - 436px);
}
#works .voice .voice_item .voice_flex .item{
	align-self: center;
	color: #fff;
	font-size: 24px;
	letter-spacing: .18em;
	line-height: 1.7;
	
}
#works .voice .voice_item .voice_flex .item p:not(:last-child){
	margin-bottom: 1rem;
}

#member{
	padding: 80PX 0;
}
#member h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
}
#member h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
}
#member .member_flex{
	display: flex;
	gap:20px;
	justify-content: space-between;
}

#member .member_flex .item{
	width: calc(100% / 3);
}
#member .member_flex .item .image{
	position: relative;
	margin-bottom: .75rem;
	
}#member .member_flex .item .image::before{
content: "";
    position: absolute;
    top: -26px;
    left: 0;
    width: 94px;
    height: 26px;
    background-color: #041931;
    clip-path: polygon(0% 0%, /* 左上 */ 85% 0%, /* 右上の欠け始め（数値を変えると欠け具合が変わります） */ 100% 100%, /* 右上の欠け終わり */ 100% 100%, /* 右下 */ 0% 100% /* 左下 */);
}
#member .member_flex .item .member_post{
font-weight: 400;
font-size: 15px;
line-height: 1.7;
letter-spacing: 0.18em;
color: #0A2647;
}
#member .member_flex .item .member_name{
font-weight: 400;
font-size: 24px;
line-height: 1.7;
letter-spacing: 0.18em;
color: #0A2647;
	margin-bottom: 1rem;
}
#member .member_flex .item .member_comment{
font-weight: 400;
font-size: 15px;
line-height: 1.7;
letter-spacing: 0.18em;
color: #0A2647;
}
#flow{
	padding: 100px 0 150px;
	background: #041931;
	border-radius: 59px 59px 0 0;
}
#flow h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
	color: #fff;
}
#flow h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
	color: #fff;
}
#flow .flow_flex{
	display: flex;
	gap:10px;
}
#flow .flow_flex .item{
	width: calc(100% / 4);
}
#flow .flow_flex .item .num{
	position: relative;
	color: #0A2647;
	display: block;
	margin-top: 3rem;
	margin-bottom: 1.5rem;
}
#flow .flow_flex .item .num span{
	background: #fff;
	position: relative;
	color: #0A2647;
	display: inline-block;
	width: 70px;
	aspect-ratio:1/1;
	border-radius: 50%;
}
#flow .flow_flex .item .num span::before{
	position: absolute;
	left: 50%;
	top: 50%;
	font-size: 24px;
	font-weight: bold;
	transform: translate(-50% ,-50%);
}
#flow .flow_flex .item .num.first span::before{
	content:"1";
}
#flow .flow_flex .item .num.second span::before{
	content:"2";
	}
#flow .flow_flex .item .num.third span::before{
	content:"3";
	}
#flow .flow_flex .item .num.fourth span::before{
	content:"4";
}

#flow .flow_flex .item .num::after{
	content: "";
	width: 1px;
	height: calc(3rem + 25px);
	background: #fff;
	position: absolute;
	top: calc(-3rem - 20px);
	left: 35px;
	
}
#flow .flow_flex .item .num::before{
	content: "";
	width: calc(100% + 10px);
	height: 1px;
	background: #fff;
	position: absolute;
	left: 0;
	top: calc(50% - .5px);
}

#flow .flow_flex .item .num.first::before{
	width: calc(100% + min(9.114583333333332vw,175px) + 10px);
	left: max(-9.114583333333332vw,-175px);
}

#flow .flow_flex .item .num.fourth::before{
	width: calc(100% + min(9.114583333333332vw,175px) + 10px);
	left: inherit;
	right: max(-9.114583333333332vw,-175px);
}
#flow .flow_flex .item .text h3{
	font-size: 20px;
	color: #fff;
}
#faq{
	padding: 110px 0 70px;
	border-radius: 59px 59px 0 0;
	position: relative;
	top: -50px;
	background: #F8F9FA;
}
#faq h2{
font-weight: 300;
font-size: 64px;
margin-bottom: 1rem;
}
#faq h2 + p{
font-weight: 300;
font-size: 24px;
line-height: 1.7;
letter-spacing: .18em;
margin-bottom: 2.5rem;
}

#faq dl:not(:last-child){
	margin-bottom: 1rem;
	
}
#faq dl dt{
	background: #041931;
	padding: 1rem 2.5rem;
	cursor: pointer;
	position: relative;
	color: #fff;
	font-weight: bold;
	font-size: 24px;
	letter-spacing: .18em;
	line-height: 1.7;
	border:1px solid #041931;
}

#faq dl dt::after{
	content: "";
	position: absolute;
	right: 1rem;
	top: 50%;
	width: 20px;
	aspect-ratio:1/1;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translateY(-50%) rotate(45deg);
	transition: all .2s;
}
#faq dl.is-open dt::after{
	transform: translateY(-50%) rotate(-135deg);
	transition: all .2s;
}
#faq dl dt span{
	display: inline-block;
	padding-left: 60px;
	position: relative;
}

#faq dl dt span::before{
	content: "";
	position: absolute;
	left: 0;
	top: calc(50% - 22.5px);
	width: 45px;
	aspect-ratio:1/1;
	background-image: url("./images/q.svg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
#faq dl dd{
	display: none;
	background: #fff;
	padding: 1rem 2.5rem;
	position: relative;
	color: #161616;
	font-size: 20px;
	letter-spacing: .18em;
	line-height: 1.7;
	border:1px solid #041931;
}
#faq dl dd span{
	display: inline-block;
	padding-left: 60px;
	position: relative;
}
#faq dl dd span::before{
	content: "";
	position: absolute;
	left: 0;
	top: calc(50% - 22.5px);
	width: 45px;
	aspect-ratio:1/1;
	background-image: url("./images/a.svg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
	
.home #column{
	padding: 30px 0 80px;
}
.home #column h2{
font-weight: 300;
font-size: 64px;
    margin-bottom: 2.5rem;
	width: fit-content;
}
.home #column .column_ttl{
	display: flex;
	justify-content: space-between;
}
.home #column .column_ttl a{
	font-size: 20px;
	letter-spacing: .18em;
	color: #161616;
	text-decoration: none;
	align-self: center;
}
.home #column .column_ttl a span{
	display: inline-block;
	padding-left: 80px;
	position: relative;
}
.home #column .column_ttl a span::before,
.home #column .column_ttl a span::after{
	content: "";
	background: #0A2647;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.home #column .column_ttl a span::before{
	width: 10px;
	aspect-ratio:1/1;
	border-radius: 10px;
}
.home #column .column_ttl a span::after{
	width: 67px;
	height: 1px;
}
.home #column .columnlist_wrap{
	display: flex;
	gap:20px;
}
.home #column .columnlist_wrap .columnlist_item{
	width: calc(100% / 3);
}
.home #column .columnlist_wrap .columnlist_item .columnlist_thum{
	margin-bottom: 1rem;
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	
	aspect-ratio:1/1;
}

.home #column .columnlist_wrap .columnlist_item .columnlist_thum img.ofi{
	width: 100%;
	aspect-ratio:1/1;
	object-fit: contain;
}
.home #column .columnlist_wrap a{
	text-decoration: none;
}
.home #column .columnlist_wrap .columnlist_item .columnlist_ttl h3{
	text-decoration: none;
	color: #0A2647;
	font-size: 24px;
	line-height: 1.7;
	letter-spacing: .18em;
}
.home #news{
	padding: 30px 0 80px;
}
.home #news h2{
font-weight: 300;
font-size: 64px;
    margin-bottom: 2.5rem;
}
.home #news .news_link a{
	font-size: 20px;
	letter-spacing: .18em;
	color: #161616;
	text-decoration: none;
	display: flex;
	justify-content: flex-end;
}
.home #news .news_link a span{
	display: inline-block;
	padding-left: 80px;
	position: relative;
}
.home #news .news_link a span::before,
.home #news .news_link a span::after{
	content: "";
	background: #0A2647;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.home #news .news_link a span::before{
	width: 10px;
	aspect-ratio:1/1;
	border-radius: 10px;
}
.home #news .news_link a span::after{
	width: 67px;
	height: 1px;
}

.home #news .newslist_wrap{
	margin-bottom: 3rem;
}
.home #news .newslist_flex{
	display: flex;
	width: 100%;
	border-top: 1px solid #D9D9D9;
	padding: 1rem 0;
	text-decoration: none;
	
}
.home #news .newslist_flex:last-child{
	border-bottom: 1px solid #D9D9D9;
}

.home #news .newslist_flex .newslist_date{
	width: fit-content;
	font-size: 20px;
	color: #161616;
	letter-spacing: .18em;
	line-height: 1.5;
	margin-right: 1rem;
}
.home #news .newslist_flex .newslist_cat{
	border: 1px solid #161616;
	color: #161616;
	letter-spacing: .18em;
	text-align: center;
	width: 156px;
	line-height: 1.75;
	margin-right: 1rem;
}
.home #news .newslist_flex .newslist_ttl{
	color: #161616;
	letter-spacing: .18em;
	line-height: 1.5;
	margin-right: 1rem;
	font-size: 20px;
}

#youtube_embed{
	padding:80px 0;
}
#youtube_embed .youtube_embed_wrap iframe{
	width:100%;
	aspect-ratio:16/9;
}
.youtube_embed_wrap .slick-slide {
  transform: scale(0.8); /* 80%の大きさに縮小 */
  transition: transform 0.6s ease; /* アニメーションの速度（JSのspeedと合わせると綺麗です） */
  opacity: 0.5; /* 真ん中以外を少し暗くすると、より中心が際立ちます（任意） */
  z-index: 1;
}

/* 真ん中に来たスライドのスタイル */
.youtube_embed_wrap .slick-center {
  transform: scale(1.0); /* 100%（元の大きさ）に戻す */
  opacity: 1; /* 明るさを戻す */
  z-index: 2; /* 前面に持ってくる */
}
@media (min-width: 1100px) {
	.container.container_1100{
		max-width: 1100px;
	}
}
@media (max-width: 1100px) {
	
	#works .works-flex .works-content .works-company{
		font-size: 22px;
	}
	#works .works-flex .works-content {
    padding: 1rem;
}
	#flow .flow_flex .item .num.fourth::before{
		right: 0;
	}
}
@media (min-width: 992px) {
	.flow_sp{
		display: none;
	}
	#top_amazon{
		display: none;
	}
	.news_ttl a{
		display: none;
	}
	
	.home #mv_news.sp{
		display: none;
	}
}
@media (max-width: 992px) {
	
	.home #mv_front .sub {
		margin-bottom: 2rem;
	}
	.home #mv_front .main {
        font-size: 47px;
		margin-bottom: 1.75rem;
		font-weight: 900;
    }
	.home #mv_front .main span{
        font-size: 47px;
    }
	.home #mv_front .sub{
		font-size: 15.5px;
	}
	.home #mv_front .sub span{
		display: inline;
	}
	#mv .header-logo{
		width: 57px;
	}
#mv{
	background-size: cover;
	aspect-ratio:375/812;
}
	.home #mv_inner{
    height: calc(var(--adjusted-mv-height, auto));
	}
	.home #mv_front .result{
		width: 100%;
		gap: 30px 15px;
		margin-bottom: 2.5rem;
		justify-content: center;
	}
	.home #mv_front .result .item p{
		font-size: 10.5px;
	}
	.home #mv_front .result .item p:nth-child(2){
        font-size: 17.25px;
    }
	.home #mv_front .result .item p:nth-child(3){
        font-size: 12.5px;
    }
	    .home #mv_front .result .item .item_wrap {
        padding: 0 25px;
			padding-top: 10px;
    }
	    .home #mv_front .result .item .item_wrap::before, .home #mv_front .result .item .item_wrap::after {
        width: 35px;
    }
	.home #mv_front .result .item p span {
        font-size: 43px;
    }
	.home #mv_front .cta {
    display: block;
	}
	
	.home #mv_front .cta .item:not(:last-child) {
		margin-bottom:1rem;
	}
	.home #mv_front .cta .item span::after{
		content: none;
		
	}
	.home #mv_front .cta .item a{
		position: relative;
		font-size: 16px;
	}
	.home #mv_front .cta .item a::after{
	position: absolute;
    content: "";
    background-image: url(./images/arrow_white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 25px;
    top: calc(50% - 12.5px);
    right: 1rem;
    aspect-ratio: 1 / 1;
	}
	.home #mv_front .cta .item:last-child a::after{
		background-image: url(./images/arrow_navy.svg);

	}
	.home #mv_front .result .item{
		width: calc(50% - 15px);
	}
	.home #mv_front .cta .item{
		width: 100%;
	}
	.home #mv_front .cta .item span{
		padding-right: 0;
	}
	.home #mv_news .mv_bottom_amazon{
		display: none;
	}
	.home #mv_news.pc{
		display: none;
	}
	
	.home #mv_news{
		height: 145px
	}
	.home #mv_news #mv_news_flex{
		padding-left: 0;
		flex-wrap: wrap;
		padding-bottom: 1rem;
	}
	
.home #mv_news #mv_news_flex .item.ttl{
	padding-right: 0;
	margin-right: 0;
	position: inherit;
	font-size: 12.5px;
	margin-bottom: 1rem;
}
	.home #mv_news #mv_news_flex .item.ttl{
		width: 100%;
	}
.home #mv_news #mv_news_flex .item.ttl::after{
	content: none;
	
}
	.home #mv_news #mv_news_flex .item.ttl span{
		position: relative;
	margin-right: 15px;
		display: inline-block;
		padding-right: 60px;
	}
	.home #mv_news #mv_news_flex .item.ttl span::after{
position: absolute;
	content: "";
	width: 45px;
	height: 1px;
	top: calc(50% - .5px);
	right: 0;
	background: #fff;
	}
	.home #mv_news #mv_news_flex .item,
	.home #mv_news #mv_news_flex .item.date{
		font-size: 12.5px;
	}
	.home #mv_news #mv_news_flex .item a{
		font-size: 12.5px;
	}
	.home #mv_news #scroll_btn{
		right: 50%;
		transform: translateX(50%);
		bottom:-40.5px;
	}
	.home #mv_news #scroll_btn a span{
		padding-bottom: 59px;
		
	}.home #mv_news #scroll_btn a span::after{
		height: 54px;
		background: #D9D9D9;
	}
	
	.home #mv_news #scroll_btn a{
		font-size: 12px;
	}
	#top_amazon{
		padding: 100px 0 50px;
		width: 90%;
		margin: 0 auto;
		
		
	}
	#top_amazon p{
		margin-bottom: .5rem;
		text-align: center;
		font-size: 16px;
	}
	.result_brand_wrap .slick-slide img{
		height: 80px;
	}
	#result_brand{
		padding: 20px 0;
	}
	#service{
		padding: 50px 0;
	}
	#reason{
		padding: 10px 0 50px;
	}
	#result_brand h2{
		line-height: 1.7;
		font-size: 16px;
	}
	
	#service h2 + p {
    font-size: 16px;
	}
	#service .service_flex {
    display: flex;
    justify-content: center;
    margin-bottom: 3rem;
    flex-wrap: wrap;
}
	#service .service_flex .item{
		width: 100%;
	}
	#service .service_flex .item:not(:last-child){
		margin-bottom: 3rem;
	}
	#service .service_flex .item a {
    font-size: 20px;
		font-weight: bold;
	}
	
#service .service_flex .item a::after{
	width: 23px;
}
	#service .service_flex .item .des{
		font-size: 12px;
	}
	#service .service_flex .item:nth-child(2) {
    top: 0;
}
	#service .service_flex .item:nth-child(3) {
    top: 0;
}
	#service .service_flex .item .img{
		margin-bottom: .25rem;
	}
	#service .service_flex .item .ttl {
    margin-bottom: .5rem;
}
	#service .service_cta{
		padding: 40px 10px;
	}
	#service .service_cta p {
    font-size: 24px;
	}
#service .service_cta p:first-child{
	margin-bottom: 1rem;
	font-size: 15px;
}
	#service .service_cta p.cta_copy {
    font-weight: bold;
	}
	#service .service_cta p span {
    font-size: 18px;
    font-weight: 300;
}
	#service .service_cta a {
    width: fit-content;
		padding: .75rem 3rem;
    border: 1px solid #1A4578;
    border-radius: 51px;
    text-decoration: none;
    font-size: 14px;
	}#service .service_cta a::after{
		right: .5rem;
		width: 17.5px;
		top: calc(50% - 8.75px);
	}
	#reason h2 + p {
    font-size: 16px;
	}
	#reason .reason_cont .reason_flex {
    display: block;
}
	#reason .reason_cont .reason_flex .item:first-child{
		padding:1rem 1rem;
	}
	#reason .reason_cont .reason_flex .item:first-child,
	#reason .reason_cont .reason_flex .item:last-child{
    width: 100%;
		
}
	#reason .reason_cont .reason_flex .item .num{
		font-size: 7.5px;
	}
	#reason .reason_cont .reason_flex .item h3{
		font-size: 18px;
		font-weight: bold;
	}
	#reason .reason_cont .reason_flex .item p{
		font-size: 12px;
		margin-bottom: 1rem;
	}
	#reason .reason_cont{
		border-left: none;
	}
	#reason .reason_cont .reason_flex .item img{
		vertical-align: middle;
		border-radius: 0 0 20px 20px;
	}
	#reason .reason_copy{
		font-size: 20px;
		font-weight: bold;
	}
	#img_cont{
		padding: 30px 0;
	}
	#img_cont ul{
		display: none;
	}
	#works{
		padding: 50px 0;
	}
	#works h2 + p{
		font-size: 16px;
	}
	#works .works-flex {
    display: block;
    padding: 1.5rem 1rem;
	}
	#works .works-flex .works-img {
    width: 100%;
		margin-bottom: .5rem;}
#works .works-flex .works-content {
    width: 100%;
}
	#works .works-flex .works-content .works-result {
    font-size: 12px;
		margin-bottom: .5rem;
	}
	#works .works-flex .works-content .works-company {
    font-size: 12px;
		margin-bottom: 1rem;
	}
	#works .works-flex .works-content .works-detail {
    font-size: 12px;
	}
	#works .prev-arrow, #works .next-arrow{
		width: 50px;
		height: 50px;
		
	}
	#works .next-arrow{
		right: 0;
	}
	#works .prev-arrow{
		left: 0;
	}
	#works .voice .voice_item {
    background: #041931;
    padding: 1.5rem 1rem;
	}
	#works .voice .voice_item .voice_flex {
    display: block;
	}
	#works .voice .voice_item .voice_flex .item:first-child{
		width: 100%;
		margin-bottom: 1rem;
	}
	#works .voice .voice_item .voice_flex .item:last-child{
		width: 100%;
	}
	#works .voice .voice_item .voice_flex .item p{
		font-size: 12px;
	}
	#works .voice .voice_item .voice_flex .item .company{
		font-size: 12px;
	}
	#works .voice h2{
		font-size: 20px;
		font-weight: bold;
	}
	#member{
		padding: 50px 0;
	}
	#member h2 + p{
		font-size: 16px;
	}
	#member .member_flex {
    display: block;
	}
	#member .member_flex .item{
		width: 100%;
	}
	#member .member_slider_wrap{
		position: relative;
	}
	#member .member_flex .item .member_post{
		font-size: 11px;
	}
	#member .member_flex .item .member_name{
		font-size: 18px;
	}
	#member .member_flex .item .member_comment{
		font-size: 11px;
	}
	
#member .next-arrow {
    background-image: url(./images/arrow_navy.svg);
    right: -10px;
}
#member .prev-arrow {
    background-image: url(./images/works_pre.svg);
    left: -10px;
}
#member .prev-arrow, #member .next-arrow {
    position: absolute;
    top: 150px;
    display: block;
    width: 36.5px;
	height: 36.5px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: all .3s ease;
    cursor: pointer;
    z-index: 1;
    border-radius: 50%;
}
	#flow{
		padding: 50px 0 105px;
		border-radius: 29.5px 29.5px 0 0;
	}
	#flow h2 + p{
		font-size: 16px;
	}
	#flow .flow_flex{
		display: none;
	}
	#flow .flow_flex_sp{
		display: flex;
		gap:15px;
	}
	#flow .flow_flex_sp .image{
		width: 130px;
	}
	#flow .flow_flex_sp .cont{
		width: calc(100% - 145px);
		align-content: center;
		position: relative;
	}
	
	#flow .flow_flex_sp .cont::after{
		content: "";
		position: absolute;
		left: 17px;
		height: calc(100% + 1.5rem);
		width: 1px;
		top: calc(50% + 17px);
		background: #fff;
	}
	
	#flow .flow_flex_sp:last-child .cont::after{
		content: none;
	}
	#flow .flow_flex_sp .num{
		position: relative;
		width: 35px;
		height: 35px;
	}
	#flow .flow_flex_sp .num::after{
		width: 1px;
		height: calc(100% - 40px);
		background: #fff;
		content: "";
		position: absolute;
		top: 70px;
		left: 35px;
	}
	
	#flow .flow_flex_sp:last-child .num::after{
		height: calc(100% - 60px);
	}
	#flow .flow_flex_sp .num span {
    background: #fff;
    position: relative;
    color: #0A2647;
    display: inline-block;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
	}
#flow .flow_flex_sp .num span::before {
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 12px;
    font-weight: bold;
    transform: translate(-50%, -50%);
}
	#flow .flow_flex_sp .num span::after{
		content: none;
	}
	#flow .flow_flex_sp .num.first span::before {
    content: "1";
}
	#flow .flow_flex_sp .num.second span::before {
    content: "2";
}
	#flow .flow_flex_sp .num.third span::before {
    content: "3";
}
	#flow .flow_flex_sp .num.fourth span::before {
    content: "4";
}
	#flow .flow_flex_sp:not(:last-child){
		margin-bottom: 1.5rem;
	}
	
	
	#flow .flow_flex_sp .text{
		display: flex;
		
	}
	
	#flow .flow_flex_sp .text h3{
		font-size: 14px;
		align-self: center;
		color: #fff;
		letter-spacing: .18em;
		width: calc(100% - 35px);
		padding-left: 1rem;
	}
	#faq {
    padding: 60px 0 70px;
		top: 0;
		border-radius: 0;
	}
	#faq h2 + p{
		font-size: 16px;
	}
	#faq dl dt,#faq dl dd{
		padding: .75rem 1.5rem .75rem .5rem;
		font-size: 12px;
	}
	#faq dl dt::after{
		width: 10px;
		right: .5rem;
	}
	#faq dl dt span::before,#faq dl dd span::before{
		width: 22.5px;
		top: calc(50% - 11.25px);
	}
	#faq dl dt span,#faq dl dd span{
		padding-left: 35px;
	}
	.home #column{
		padding-top: 0px;
		padding-bottom: 50px;
	}
	.home #column .column_ttl{
		margin-bottom: 1rem;
	}
	.home #column h2{
		margin-bottom: 0;
	}
	.home #column .column_ttl a{
		display: block;
		text-align: end;
		font-size: 10px;
	}
	.home #column .columnlist_wrap{
		gap: 10px;
	}
	.home #column .columnlist_wrap .columnlist_item{
		width: calc(50% - 5px);
		
	}
	.home #column .columnlist_wrap .columnlist_item:not(:last-child){
		margin-bottom: 1.5rem;
	}
	.home #column .columnlist_wrap .columnlist_item .columnlist_thum{
		margin-bottom: .75rem;
	}
	.home #column .columnlist_wrap .columnlist_item .columnlist_ttl h3{
		font-size: 12px;
	}
	.home #column .column_ttl a span{
		padding-left: 50px;
	}
	.home #column .column_ttl a span::before {
    width: 5px;
	}
	.home #column .column_ttl a span::after {
    width: 33.5px;
    height: 1px;
}
	.home #news .newslist_flex .newslist_date{
		width:fit-content;
		font-size: 10px;
		margin-right: .75rem;
	}
	.home #news .newslist_flex .newslist_cat{
		margin-right: .75rem;
		padding: 0 .5rem;
		font-size: 8px;
	}
	.home #news .newslist_flex .newslist_ttl{
		margin-right: 0;
		width: 100%;
		font-size: 8px;
		align-self: center;
	}
	.home #news .newslist_wrap{
		margin-bottom: 0;
	}
	.home #news .newslist_flex{
		padding: 1rem .5rem;
	}
	.home #news{
		padding: 30px 0 50px;
	}
	.home #news .news_link {
		display: none;
	}
	.home #news .news_ttl {
        margin-bottom: 1rem;
    }
.home #news .news_ttl {
    display: flex;
    justify-content: space-between;
}
.home #news .news_ttl a {
        display: block;
        text-align: end;
        font-size: 10px;
    letter-spacing: .18em;
    color: #161616;
    text-decoration: none;
    align-self: center;
}
.home #news h2{
	margin-bottom: 0;
}
.home #news .news_ttl a span {
    display: inline-block;
    padding-left: 50px;
    position: relative;
}
.home #news .news_ttl a span::before {
    width: 5px;
    aspect-ratio: 1 / 1;
    border-radius: 10px;
}
.home #news .news_ttl a span::before, .home #news .news_ttl a span::after {
    content: "";
    background: #0A2647;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.home #news .news_ttl a span::after {
    width: 33.5px;
    height: 1px;
}
	#youtube_embed{
		padding: 50px 0
	}
	
.youtube_embed_wrap .slick-slide {
    transform: scale(0.9);
	}
	.youtube_embed_wrap .slick-center{
		transform: scale(1.0);
	}

	.footer_cta.pc{
		display: none;
	}
	footer .footer_cta {
    display: block;
    padding: 0;
		margin-bottom: 40px;
		border-radius: 0;
	}
	footer .footer_cta .item {
		width: 100%;
		padding: 2rem 1.75rem;
	}
	
	footer .footer_cta .item:first-child {
		background: url('./images/footer_sp_1.jpg');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	footer .footer_cta .item:last-child {
		background: url('./images/footer_sp_2.jpg');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	footer .footer_cta .item .cta_btn{
		top: calc(50% - 17px);
		width: 34px;
		right: 1.75rem;
	}
	footer .footer_cta .item .cta_btn .arrow-right::before {
    left: calc(50% - 6.125px);
    width: 12.25px;
		height: 1px;
	}
	.arrow-right::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 9px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	}
	footer .footer_flex{
		display: block;
	}
	
	footer .footer_flex .detail{
		margin-bottom: 1rem;
	}
	footer .navigation ul{
		justify-content: center;
		flex-wrap: wrap;
		gap: .5rem;
	}
	.navbar-collapse{
		position: absolute;
    z-index: 999;
    background: rgb(255, 255, 255);
    width: 100%;
    top: 70px;
		padding: 1rem 0;
	}
	.navbar-nav li a{
		display: block;
		text-align: center;
		font-size: 16px;
		color: #333;
	}
	.navbar-nav li a.header-btn{
		color: #fff;
	}
	.header-btn span::before {
    width: 20px;
    aspect-ratio: 1 / 1;
    content: "";
    background-image: url(./images/emvelope.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    top: calc(50% - 10px);
}
	footer .footer_cta .item .cta_ttl{
		font-size: 24px;
		margin-bottom: .5rem;
		
	}
	footer .footer_cta .item .cta_subttl{
		font-size: 12px;
	}
	footer .footer_cta .item .cta_subttl span::after {
    height: 2px;
	width: 40.5px;
    top: calc(50% - 1px);
	right: -50px;
	}
	footer .footer_cta .item .text{
		font-size: 10px;
	}
	footer .footer_flex .address{
		font-size: 14px;
	}
	footer .navigation ul li a{
		font-size: 14px;
	}footer .footer_flex .foot_sns li{
		width: 30px;
	}
	#service h2,
	#reason h2,
	#works h2,
	#member h2,
	#flow h2,
	#faq h2,
	.home #column h2,
	.home #news h2{
		font-size: 32px;
	}footer .footer_flex .footer_logo {
    width: 94px;
	}
	
	#service_cta h2,#service_list h2{
		font-size: 24px;
		font-weight: bold;
	}
	#service_cta p{
		font-size: 18px;
	}#service_cta a{
		width: 100%;
	}
	#service_cta{
		background: rgba(10,38,71,.5);
	}
	#service_cta::before{
		z-index: -1;
		width:100%;
		bottom: 0;
		top:inherit;
		right: inherit;
		left: 0;
	}
}
	