@charset "UTF-8";

/* # =================================================================
   # gsap
   # ================================================================= */
.trigger-area-bg .is_hide{opacity: 0;}
.trigger-area-bg .is_active{opacity: 1;}


/* # =================================================================
   # ファーストビュー
   # ================================================================= */
   
.section-fv{
	width:1200px;
	text-align:left;
	padding:50px;
}

.fv-txt1, .fv-txt2, .fv-txt3{padding-bottom:20px;}
.fv-txt1 img{height:70px;}
.fv-txt2 img{height:70px;}
.fv-txt3 img{width:80%;height:auto;}


.fv-txt4{
	padding-top:80px;
	font-size:22px;
	font-weight:700;
}



/*スクロールアニメ*/
.scloll-line {
  display: inline-block;
  position: absolute;
  right: 0px;
  bottom: 30px;
  z-index: 2;
  padding: 0px 150px 10px 0;
  overflow: hidden;
  color: #000;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.scloll-line span{
	text-align:left;
	font-size: 12px;
}

.scloll-line::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 250px;
  height: 1px;
  background: #000;
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes sdl {
  0% {
    transform: scale(0, 1);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 100% 0;
  }
  100% {
    transform: scale(0, 1);
    transform-origin: 100% 0;
  }
}



/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-fv{
	width: 9999px;
	text-align:left;
}

	.fv-txt1, .fv-txt2, .fv-txt3{padding-bottom:10px;}
	.fv-txt1 img{height:50px;}
	.fv-txt2 img{height:50px;}
	.fv-txt3 img{width:85%;}
	
	.fv-txt4{
		padding-top:60px;
		font-size:22px;
		font-weight:700;
	}
	
	.scloll-line {
		display: inline-block;
		position: absolute;
		right: 20px;
		bottom: 0;
		z-index: 2;
		padding: 10px 10px 110px;
		overflow: hidden;
		color: #000;
		font-size: 12px;
		line-height: 1;
		letter-spacing: .2em;
		text-transform: uppercase;
		text-decoration: none;
		writing-mode: vertical-lr;
	}
	
	.scloll-line span{
		text-align:left;
		font-size: 12px;
	}
	
	.scloll-line::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 1px;
		height: 100px;
		background: #000;
		animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
	}
	
	@keyframes sdl {
		0% {
			transform: scale(1, 0);
			transform-origin: 0 0;
		}
		50% {
			transform: scale(1, 1);
			transform-origin: 0 0;
		}
		50.1% {
			transform: scale(1, 1);
			transform-origin: 0 100%;
		}
		100% {
			transform: scale(1, 0);
			transform-origin: 0 100%;
		}
	}
}

@media screen and (max-width:599px){
	.section-fv{padding:25px;}
	.fv-txt1, .fv-txt2, .fv-txt3{padding-bottom:10px;}
	.fv-txt1 img{height:25px;}
	.fv-txt2 img{height:25px;}
	.fv-txt3 img{width:100%;}
	
	.fv-txt4{
		padding-top:40px;
		font-size:20px;
		font-weight:700;
	}
	
	.scloll-line {
		display: inline-block;
		position: absolute;
		right: 20px;
		bottom: 0;
		z-index: 2;
		padding: 10px 10px 70px;
		overflow: hidden;
		color: #000;
		font-size: 10px;
		line-height: 1;
		letter-spacing: .2em;
		text-transform: uppercase;
		text-decoration: none;
		writing-mode: vertical-lr;
	}
	
	.scloll-line::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 1px;
		height: 60px;
		background: #000;
		animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
	}
}



/* # =================================================================
   # about
   # ================================================================= */
   
   
.section-about{
	width:1200px;
	text-align:left;
	background-color:var(--color-gray1);
	padding:50px 150px;
}

.about-bg{
	overflow:hidden;
}

.about-bg img{width:500px;height:100vh;object-fit: cover;}

.about-flex{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width:1200px;
}

.about-flex-boxL{width:40%;}
.about-flex-boxR{width:60%;}

.about-maintxt{
	font-size:25px;
	line-height:180%;
	font-weight: 700;
	text-align:left;
	margin-bottom:30px;
	color:var(--color-white);
}

.about-subtxt{
	font-size:16px;
	line-height:220%;
	font-weight: 700;
	text-align:left;
	margin-bottom:30px;
	color:var(--color-white);
}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-about{
	width:100%;
	text-align:left;
	background-color:var(--color-gray1);
	padding:100px 50px;
}
.about-bg img{width:100%;height:300px;object-fit: cover;}
.about-flex{width:100%;}
.about-flex-boxL{width:100%;}
.about-flex-boxR{width:100%;}
.about-maintxt{font-size:20px;}
.about-subtxt{font-size:14px;}
}

@media screen and (max-width:599px){
.section-about{padding:100px 25px;}
}


/* # =================================================================
   # 税務調査
   # ================================================================= */
   

.section-tax{
	width:850px;
	text-align:left;
	padding:50px 150px;
	background-image: url("../img/tax_bg.webp");
	background-size: cover;
}

.tax-txt{
	font-size:16px;
	line-height:220%;
	font-weight: 700;
	text-align:left;
	margin:30px 0;
	color:var(--color-white);
}

/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-tax{
	width:100%;
	text-align:left;
	padding:100px 50px;
	background-image: url("../img/tax_bg.webp");
	background-size: cover;
}
}

@media screen and (max-width:599px){
.section-tax{padding:100px 25px;}
}


/* # =================================================================
   # 事業継承
   # ================================================================= */
   

.section-succession{
	width:850px;
	text-align:left;
	padding:50px 150px;
	background-image: url("../img/succession_bg.webp");
	background-size: cover;
	background-position: center;
}

.succession-txt{
	font-size:16px;
	line-height:220%;
	font-weight: 700;
	text-align:left;
	margin:30px 0;
	color:var(--color-white);
}

/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-succession{
	width:100%;
	text-align:left;
	padding:100px 50px;
	background-image: url("../img/succession_bg.webp");
	background-size: cover;
	background-position: center;
}
}

@media screen and (max-width:599px){
.section-succession{padding:100px 25px;}
}

/* # =================================================================
   # 医療法人
   # ================================================================= */
   

.section-medical{
	width:850px;
	text-align:left;
	padding:50px 150px;
	background-image: url("../img/medical_bg.webp");
	background-size: cover;
	background-position: center;
}

.medical-txt{
	font-size:16px;
	line-height:220%;
	font-weight: 700;
	text-align:left;
	margin:30px 0;
	color:var(--color-white);
}

/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-medical{
	width:100%;
	text-align:left;
	padding:100px 50px;
	background-image: url("../img/medical_bg.webp");
	background-size: cover;
	background-position: center;
}
}

@media screen and (max-width:599px){
.section-medical{padding:100px 25px;}
}



/* # =================================================================
   # 法人業務
   # ================================================================= */
   
.section-houjin{
	width:1250px;
	text-align:left;
	padding:50px 150px;
	background-color:var(--color-gray6);
}



.houjin-flex{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width:1200px;
}

.houjin-flex-boxL{width:40%;}
.houjin-flex-boxR{width:60%;}

.houjin-flex2{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.houjin-flex2-box{
	width:31%;
	margin-top:30px;
}

.houjin-img{overflow:hidden;}
.houjin-img img{
	width:100%;
	object-fit: cover;
	object-position: center;
	transition: all .5s;
}

.linkbox:hover .houjin-img img{
	transform: scale(1.1);
}


.houjin-txt-main{
	font-size:16px;
	font-weight:700;
	line-height:180%;
	text-align:left;
	margin-top:20px;
}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){

.section-houjin{
	width:100%;
	text-align:left;
	padding:100px 50px;
}

.houjin-flex{width:100%;}
.houjin-flex-boxL{width:100%;}
.houjin-flex-boxR{width:100%;}
.houjin-flex2-box{width:48%;}
}

@media screen and (max-width:599px){
.section-houjin{padding:100px 25px;}
}



/* # =================================================================
   # SERVICE
   # ================================================================= */
   
.section-service{
	width:800px;
	text-align:left;
	padding:50px 150px;
}

.service-txt{
	font-size:16px;
	line-height:220%;
	font-weight: 700;
	text-align:left;
	margin:30px 0;
}

/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-service{
	width:100%;
	text-align:left;
	padding:100px 50px;
}
}

@media screen and (max-width:599px){
.section-service{padding:100px 25px;}
}


/* # =================================================================
   # PEOPLE
   # ================================================================= */
   
.section-people{
	width:1500px;
	text-align:left;
	padding:50px 150px;
	background-color:var(--color-gray6);
}


.staff-img{overflow:hidden;}
.staff-img img{
	width:100%;
	object-fit: cover;
	object-position: center;
	transition: all .5s;
}

.linkbox:hover .staff-img img{
	transform: scale(1.1);
}

.staff-name-e{
	display:block;
	background-image: url("../img/yaji_bk.svg");
	background-repeat: no-repeat;
	background-size: 12px;
	background-position: right 10px center;
	font-family: 'Inter', sans-serif;
	font-size:24px;
	font-weight:600;
	color:var(--color-gray1);
	padding:5px 10px;
	text-align:left;
	margin-top:40px;
}

.staff-name{
	font-size:16px;
	color:var(--color-gray1);
	padding:5px 10px;
	text-align:left;
}

.staff-name span{font-size:12px;}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-people{
	width:100%;
	text-align:left;
	padding:100px 50px;
	background-color:var(--color-gray6);
}
.staff-name-e{font-size:20px;}
.staff-name{font-size:14px;}
}

@media screen and (max-width:599px){
.section-people{padding:100px 25px 50px 25px;}
}

/* # =================================================================
   # CLIENT
   # ================================================================= */
   
.section-client{
	width:1200px;
	text-align:left;
	padding:50px 150px;
}



.client-flex{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width:1200px;
}

.client-flex-boxL{width:40%;}
.client-flex-boxR{width:60%;}

.client-flex2{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.client-flex2-box{
	width:48%;
	margin-top:30px;
}

.client-img{overflow:hidden;}
.client-img img{
	width:100%;
	height:200px;
	object-fit: cover;
	object-position: center;
	transition: all .5s;
}

.linkbox:hover .client-img img{
	transform: scale(1.1);
}


.client-txt-main{
	font-size:16px;
	font-weight:700;
	line-height:180%;
	text-align:left;
	margin-top:20px;
}

.client-txt{
	font-size:16px;
	text-align:center;
}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){

.section-client{
	width:100%;
	text-align:left;
	padding:100px 50px;
}

.client-flex{width:100%;}
.client-flex-boxL{width:100%;}
.client-flex-boxR{width:100%;}
}

@media screen and (max-width:599px){
.section-client{padding:100px 25px;}
.client-img img{height:150px;}
}



/* # =================================================================
   # ACCESS
   # ================================================================= */
   
.section-access{
	width:400px;
	border-right:solid 1px var(--color-gray4);
}


.ifram-map{
   transition: all 0.7s ease;
   vertical-align: bottom;
   width:100%;
   height:100%;
}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
	.section-access{width:100%;height:300px;border-right:0;border-bottom:solid 1px var(--color-gray4);}
}



/* # =================================================================
   # TOPICS
   # ================================================================= */
.section-topics{
	width:1000px;
	text-align:left;
	padding:50px 150px;
	background-color:var(--color-gray1);
}

.news_link {
	display: flex;
	justify-content: start;
	column-gap: 10px;
	margin: 30px 0;
	padding: 0;
	list-style-type: none;
}
.news_link li {
	display: inline-block;
	background-color:var(--color-gray2);
	margin-left: 2px;
	color: var(--color-white);
	border-radius:5px;
	position: relative;
	padding: 10px 15px;
	cursor: pointer;
	text-align: center;
	line-height: 1;
	transition: all .5s;
}
.news_link li:first-child {
	margin-left: 0;
}
.news_link li.active, .news_link li:hover {
	color: var(--color-gray1);
	font-weight: 700;
	background-color:var(--color-white);
	
}
.news_link li.active:after, .news_link li:hover:after {
	display: block;
}
.news-content {
	display: flex;
	flex-wrap: nowrap;
	align-items: baseline;
	margin-bottom: 20px;
	padding-bottom: 20px;
	margin-left:auto;
	margin-right:auto;
	border-bottom:solid 1px var(--color-gray4);
}
.news-date {
	font-size: 14px;
	margin-right: 20px;
	color: var(--color-white);
}
.cat-box{
	margin-right: 20px;
	background-color: var(--color-white);
	min-width:100px;
	font-size: 12px;
	text-align: center;
	padding: 0 6px;
	height: 25px;
	line-height: 25px;
	color: var(--color-gray1);
	border-radius:5px;
}

.news-txt {
	font-size: 16px;
	color: var(--color-white);
}



.news-content .news-r{
	text-align:left;
	line-height:150%;
}

.news-content .news-r a {
	color: var(--color-white);
	transition: color 0.2s ease-in-out;
}
.news-content .news-r a:hover {
	color: var(--color-gray3);
	transition: color 0.2s ease-in-out;
}


/*-----------スマホ設定-----------------*/
@media screen and (max-width:1025px){
.section-topics{
	width:100%;
	text-align:left;
	padding:100px 50px;
	background-color:var(--color-gray1);
}
.news-content {
		display: flex;
		flex-wrap: wrap;
	}
	.news-content .news-r{
		padding-top:10px;
	}
}

@media screen and (max-width:599px){
.section-topics{padding:100px 25px;}
}

