@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');





/**
 * 共通
 */
html,
body{
	scroll-behavior: smooth;
	position: relative;
	font-family: 'Zen Maru Gothic', serif;
	font-style: normal;
	font-size: 16px;
	line-height: 2;
	color: #1a1a1a;
	/* Light 300, Regular 400, Medium 500, Bold 700, Black 900 */
	font-weight: 500;
	background-color: #fff;
}
html.ofh,
body.ofh{
	overflow: hidden!important;
}
.zenkaku{
	font-family: 'Zen Kaku Gothic New', sans-serif;
	/* Light 300, Regular 400, Medium 500, Bold 700, Black 900 */
	font-weight: 500;
	font-style: normal;
}
.poppins{
	font-family: "Poppins", sans-serif;
	/* Thin 100, ExtraLight 200, Light 300, Regular 400, Medium 500, SemiBold 600, Bold 700, ExtraBold 800, Black 900 */
	font-weight: 500;
	font-style: normal;
}
.inner{
	width: 90vw;
	margin: 0 auto;
}
.nonei{
	display: none!important;
}
.flex{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.fwn{
	flex-wrap: nowrap;
}
.jcsb{
	justify-content: space-between;
}
.jcc{
	justify-content: center;
}
.jce{
	justify-content: end;
}
.aifs{
	align-items: flex-start;
}
.aife{
	align-items: flex-end;
}
.ais{
	align-items: stretch;
}
.center{
	text-align: center;
}
.right{
	text-align: right;
}
.peni{
	pointer-events: none!important;
}
.vertical{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.text_ellipsis{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 1;
}
.pr{
	position: relative;
}
.pc_item{
	
}
.sp_item{
	display: none;
}
@media screen and (min-width: 1920px){
	.inner{
		width: 1728px;
	}
}
@media screen and (max-width: 768px){
	.pc_item{
		display: none;
	}
	.sp_item{
		display: block;
	}
}
section{
	position: relative;
}
svg{
	display: block;
	overflow: visible;
}
svg path,
svg circle,
svg polyline{ 
	vector-effect: non-scaling-stroke;
}





/**
 * 準共通
 */
h2.h2{
	padding-bottom: 80px;
}
h2.h2 span,
h1.h1 span.en,
h1.h1 span.jp{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	padding-left: 20px;
}
h2.h2 span.jp{
	color: #e6194d;
	font-weight: 500;
}
h2.h2 p.jcc span.jp{
	padding-left: 0;
}
h2.h2 span:before,
h1.h1 span.en:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background-color: #e6194d;
	border-radius: 100%;
}
h2.h2 span.jp:before{
	display: none;
}
section.company h2.h2 span,
section.lowerpage_company h1.h1 span,
section.company_cp h2.h2 span{
	color: #fff;
}
section.company h2.h2 span:before,
section.lowerpage_company h1.h1 span:before,
section.company_cp h2.h2 span:before{
	background-color: #fff;
}
p.viewmore a{
	display: block;
	width: 200px;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	padding-bottom: 1px;
}
p.viewmore a.flex{
	display: flex;
}
p.viewmore a.flex span{
	display: block;
	margin-right: calc(16px * (1/2));
}
p.viewmore a.flex span:last-child{
	margin-right: 0;
}
p.viewmore a:before,
p.viewmore a:after{
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
}
p.viewmore a:before{
	background-color: #ebebeb;
}
p.viewmore a:after{
	transform: scale(0.2, 1);
	transform-origin: left center;
	background-color: #e6194d;
	transition: .8s;
}
p.viewmore a:hover:after{
	transform: scale(1, 1);
}
section.company p.viewmore a,
section.contact p.viewmore a{
	color: #fff;
}
section.company p.viewmore a:before,
section.contact p.viewmore a:before{
	background-color: rgba(255, 255, 255, 0.5);
}
section.company p.viewmore a:after,
section.contact p.viewmore a:after{
	background-color: rgba(255, 255, 255, 1);
}
@media screen and (max-width: 768px){
	h2.h2{
		padding-bottom: 20.51vw;
	}
	h2.h2 span,
	h1.h1 span.en,
	h1.h1 span.jp{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		padding-left: calc(3.59vw * (20/16));
	}
	h2.h2 span:before,
	h1.h1 span.en:before{
		width: calc(3.59vw * (8/16));
		height: calc(3.59vw * (8/16));
	}
	p.viewmore a{
		width: calc(3.59vw * (200/16));
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	p.viewmore a.flex span{
		margin-right: calc(3.59vw * (1/2));
	}
}





/**
 * sticky_contents
 */
section.message .sticky_contents,
section.company .sticky_contents,
section.recruit .sticky_contents{
	height: 300vh;
}
section.message .sticky_contents .sticky_content,
section.company .sticky_contents .sticky_content,
section.recruit .sticky_contents .sticky_content{
	position: sticky;
	top: 0;
	height: 100vh;
	overflow: hidden;
}
section.message .sticky_contents .sticky_content .contents_bg,
section.company .sticky_contents .sticky_content .contents_bg,
section.recruit .sticky_contents .sticky_content .contents_bg{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}
section.message .sticky_contents .sticky_content .contents,
section.company .sticky_contents .sticky_content .contents,
section.recruit .sticky_contents .sticky_content .contents{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}
section.message .sticky_contents .sticky_content .contents .txts p span.txt,
section.message .sticky_contents .sticky_content .contents .txts p span.txt span,
section.company .sticky_contents .sticky_content .contents .txts p span.txt,
section.company .sticky_contents .sticky_content .contents .txts p span.txt span,
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt,
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt span{
	display: block;
}
section.message .sticky_contents .sticky_content .contents .txts p span.txt,
section.company .sticky_contents .sticky_content .contents .txts p span.txt,
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt{
	width: 100%;
}
section.message .sticky_contents .sticky_content .contents .txts p span.txt span,
section.company .sticky_contents .sticky_content .contents .txts p span.txt span,
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt span{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.company .sticky_contents .sticky_content .contents .txts p span.txt span{
	color: #fff;
}
@media screen and (max-width: 768px){
	section.message .sticky_contents,
	section.company .sticky_contents,
	section.recruit .sticky_contents{
		height: 300vh;
	}
	section.message .sticky_contents .sticky_content .contents .txts p span.txt span,
	section.company .sticky_contents .sticky_content .contents .txts p span.txt span,
	section.recruit .sticky_contents .sticky_content .contents .txts p span.txt span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
}





/**
 * slick
 */
section.service .service_lists,
section.staff .staff_lists,
section.access .access_lists{
	margin-bottom: calc(16px + 10px + 40px);
}
section.service .service_lists .service_list,
section.staff .staff_lists .staff_list,
section.access .access_lists .access_list{
	width: 720px;
}
section.service .service_lists .service_list .content,
section.staff .staff_lists .staff_list .content,
section.access .access_lists .access_list .content{
	display: block;
	width: calc(720px - (40px * 2));
	margin: 0 auto;
}
section.service .service_lists .service_list .content .thm,
section.staff .staff_lists .staff_list .content .thm,
section.access .access_main_lists .access_main_list .content .thm,
section.access .access_lists .access_list .content .thm{
	width: 160px;
	height: 160px;
}
section.service .service_lists .service_list .content .thm svg,
section.staff .staff_lists .staff_list .content .thm img,
section.access .access_main_lists .access_main_list .content .thm img,
section.access .access_lists .access_list .content .thm img{
	width: 100%;
	height: 100%;
}
section.staff .staff_lists .staff_list .content .thm img,
section.access .access_main_lists .access_main_list .content .thm img,
section.access .access_lists .access_list .content .thm img{
	display: block;
}
section.service .service_lists .service_list .content .txts,
section.staff .staff_lists .staff_list .content .txts,
section.access .access_main_lists .access_main_list .content .txts,
section.access .access_lists .access_list .content .txts{
	width: calc(100% - 180px);
}
section.service .service_lists .service_list .content .txts .head,
section.staff .staff_lists .staff_list .content .txts .head,
section.access .access_main_lists .access_main_list .content .txts .head,
section.access .access_lists .access_list .content .txts .head{
	margin-bottom: 12px;
}
section.service .service_lists .service_list .content .txts .head h3 span,
section.staff .staff_lists .staff_list .content .txts .head h3 span,
section.access .access_main_lists .access_main_list .content .txts .head h3 span,
section.access .access_lists .access_list .content .txts .head h3 span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
}
section.service .service_lists .service_list .content .txts .head p.en span,
section.staff .staff_lists .staff_list .content .txts .head p.en span,
section.access .access_main_lists .access_main_list .content .txts .head p.en span,
section.access .access_lists .access_list .content .txts .head p.en span{
	display: block;
	font-size: 12px;
	color: #afafaf;
	font-weight: 300;
}
section.service .service_lists .service_list .content .txts .txt p a,
section.service .service_lists .service_list .content .txts .txt p span,
section.staff .staff_lists .staff_list .content .txts .txt p a,
section.staff .staff_lists .staff_list .content .txts .txt p span,
section.access .access_main_lists .access_main_list .content .txts .txt p a,
section.access .access_main_lists .access_main_list .content .txts .txt p span,
section.access .access_lists .access_list .content .txts .txt p a,
section.access .access_lists .access_list .content .txts .txt p span{
	display: block;
}
section.service .service_lists .service_list .content .txts .txt p,
section.service .service_lists .service_list .content .txts .txt p a,
section.service .service_lists .service_list .content .txts .txt p span,
section.staff .staff_lists .staff_list .content .txts .txt p,
section.staff .staff_lists .staff_list .content .txts .txt p a,
section.staff .staff_lists .staff_list .content .txts .txt p span,
section.access .access_main_lists .access_main_list .content .txts .txt p,
section.access .access_main_lists .access_main_list .content .txts .txt p a,
section.access .access_main_lists .access_main_list .content .txts .txt p span,
section.access .access_lists .access_list .content .txts .txt p,
section.access .access_lists .access_list .content .txts .txt p a,
section.access .access_lists .access_list .content .txts .txt p span{
	font-size: 14px;
	letter-spacing: calc(14px * 0.05);
	font-weight: 400;
}
section.service .service_lists .service_list .content .txts .txt p a,
section.service .service_lists .service_list .content .txts .txt p span{
	padding-left: 14px;
}
section.service .service_lists .service_list .content .txts .txt p a:before,
section.service .service_lists .service_list .content .txts .txt p span:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 4px;
	height: 4px;
	background-color: #1a1a1a;
	border-radius: 100%;
}
@media screen and (max-width: 768px){
	section.service .service_lists,
	section.staff .staff_lists,
	section.access .access_lists{
		margin-bottom: calc(6.15vw + (8.21vw * (10/40)) + 10.26vw);
	}
	section.service .service_lists .service_list,
	section.staff .staff_lists .staff_list,
	section.access .access_lists .access_list{
		width: 100vw;
	}
	section.service .service_lists .service_list .content,
	section.staff .staff_lists .staff_list .content,
	section.access .access_lists .access_list .content{
		width: calc(100vw - (5vw * 2));
	}
	section.service .service_lists .service_list .content .thm,
	section.staff .staff_lists .staff_list .content .thm,
	section.access .access_main_lists .access_main_list .content .thm,
	section.access .access_lists .access_list .content .thm{
		width: 20.51vw;
		height: 20.51vw;
	}
	section.service .service_lists .service_list .content .txts,
	section.staff .staff_lists .staff_list .content .txts,
	section.access .access_main_lists .access_main_list .content .txts,
	section.access .access_lists .access_list .content .txts{
		width: calc(100% - (20.51vw + 5.13vw));
	}
	section.service .service_lists .service_list .content .txts .head,
	section.staff .staff_lists .staff_list .content .txts .head,
	section.access .access_main_lists .access_main_list .content .txts .head,
	section.access .access_lists .access_list .content .txts .head{
		margin-bottom: 3.08vw;
	}
	section.service .service_lists .service_list .content .txts .head h3 span,
	section.staff .staff_lists .staff_list .content .txts .head h3 span,
	section.access .access_main_lists .access_main_list .content .txts .head h3 span,
	section.access .access_lists .access_list .content .txts .head h3 span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.service .service_lists .service_list .content .txts .head p.en span,
	section.staff .staff_lists .staff_list .content .txts .head p.en span,
	section.access .access_main_lists .access_main_list .content .txts .head p.en span,
	section.access .access_lists .access_list .content .txts .head p.en span{
		font-size: 3.08vw;
	}
	section.service .service_lists .service_list .content .txts .txt p,
	section.service .service_lists .service_list .content .txts .txt p a,
	section.service .service_lists .service_list .content .txts .txt p span,
	section.staff .staff_lists .staff_list .content .txts .txt p,
	section.staff .staff_lists .staff_list .content .txts .txt p a,
	section.staff .staff_lists .staff_list .content .txts .txt p span,
	section.access .access_main_lists .access_main_list .content .txts .txt p,
	section.access .access_main_lists .access_main_list .content .txts .txt p a,
	section.access .access_main_lists .access_main_list .content .txts .txt p span,
	section.access .access_lists .access_list .content .txts .txt p,
	section.access .access_lists .access_list .content .txts .txt p a,
	section.access .access_lists .access_list .content .txts .txt p span{
		font-size: 3.08vw;
		letter-spacing: calc(3.08vw * 0.05);
	}
	section.service .service_lists .service_list .content .txts .txt p a,
	section.service .service_lists .service_list .content .txts .txt p span{
		padding-left: 3.08vw;
	}
	section.service .service_lists .service_list .content .txts .txt p a:before,
	section.service .service_lists .service_list .content .txts .txt p span:before{
		width: calc(3.08vw * (4/14));
		height: calc(3.08vw * (4/14));
	}
}





/**
 * slick
 * overwrite
 */
section.service .service_lists .slick-prev,
section.service .service_lists .slick-next,
section.staff .staff_lists .slick-prev,
section.staff .staff_lists .slick-next,
section.access .access_lists .slick-prev,
section.access .access_lists .slick-next{
	display: block;
	position: absolute;
	top: calc(100% + 16px);
	width: 40px;
	height: 10px;
}
section.service .service_lists .slick-prev,
section.staff .staff_lists .slick-prev,
section.access .access_lists .slick-prev{
	left: calc(50% - 8px);
	-webkit-transform: translate(-100%, 0);
	-ms-transform: translate(-100%, 0);
	transform: translate(-100%, 0);
}
section.service .service_lists .slick-next,
section.staff .staff_lists .slick-next,
section.access .access_lists .slick-next{
	right: calc(50% - 8px);
	-webkit-transform: translate(100%, 0);
	-ms-transform: translate(100%, 0);
	transform: translate(100%, 0);
}
section.service .service_lists .slick-prev:before,
section.service .service_lists .slick-next:before,
section.staff .staff_lists .slick-prev:before,
section.staff .staff_lists .slick-next:before,
section.access .access_lists .slick-prev:before,
section.access .access_lists .slick-next:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	opacity: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.service .service_lists .slick-prev:before,
section.staff .staff_lists .slick-prev:before,
section.access .access_lists .slick-prev:before{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/slickprev.svg');
}
section.service .service_lists .slick-next:before,
section.staff .staff_lists .slick-next:before,
section.access .access_lists .slick-next:before{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/slicknext.svg');
}
@media screen and (max-width: 768px){
	section.service .service_lists .slick-prev,
	section.service .service_lists .slick-next,
	section.staff .staff_lists .slick-prev,
	section.staff .staff_lists .slick-next,
	section.access .access_lists .slick-prev,
	section.access .access_lists .slick-next{
		top: calc(100% + 6.15vw);
		width: 8.21vw;
		height: calc(8.21vw * (10/40));
	}
	section.service .service_lists .slick-prev,
	section.staff .staff_lists .slick-prev,
	section.access .access_lists .slick-prev{
		left: calc(50% - 2.05vw);
	}
	section.service .service_lists .slick-next,
	section.staff .staff_lists .slick-next,
	section.access .access_lists .slick-next{
		right: calc(50% - 2.05vw);
	}
}





/**
 * header
 */
header.site_header{
	position: fixed;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 100%;
	padding: calc((80px - (200px * (30/200))) / 2) 0;
	z-index: 200;
}
header.site_header .brave{
	width: 200px;
	height: calc(200px * (30/200));
}
header.site_header .brave a,
header.site_header .brave a img{
	display: block;
}
header.site_header .brave a,
header.site_header .brave a img{
	width: 100%;
	height: 100%;
}
header.site_header .nav_btn{
	display: none;
}
@media screen and (max-width: 768px){
	header.site_header{
		padding: calc((16.41vw - (30.77vw * (30/200))) / 2) 0;
	}
	header.site_header .brave{
		width: 30.77vw;
		height: calc(30.77vw * (30/200));
	}
	header.site_header .nav_btn{
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translate(0, -50%);
		width: 7.18vw;
		height: 7.18vw;
	}
	header.site_header .nav_btn span{
		display: block;
		position: absolute;
		left: 50%;
		transform-origin: right center;
		width: 6.15vw;
		height: 1px;
		background-color: #fff;
		border-radius: 1px;
		transition: .4s;
	}
	header.site_header .nav_btn.black span{
		background-color: #1a1a1a;
	}
	header.site_header .nav_btn span:nth-child(1){
		top: calc(50% - 2.05vw);
		transform: translate(-50%, -50%);
	}
	header.site_header .nav_btn span:nth-child(2){
		top: 50%;
		transform: translate(-50%, -50%) scale(.75, 1);
	}
	header.site_header .nav_btn span:nth-child(3){
		top: calc(50% + 2.05vw);
		transform: translate(-50%, -50%) scale(.5, 1);
	}
	header.site_header .nav_btn.act span{
		background-color: #e6194d;
		transform-origin: center;
	}
	header.site_header .nav_btn.act span:nth-child(1){
		top: calc(50% - 0vw);
		transform: translate(-50%, -50%) rotate(45deg);
	}
	header.site_header .nav_btn.act span:nth-child(2){
		transform: translate(-50%, -50%) scale(0, 1);
	}
	header.site_header .nav_btn.act span:nth-child(3){
		top: calc(50% + 0vw);
		transform: translate(-50%, -50%) scale(1, 1) rotate(135deg);
	}
}





/**
 * nav
 */
nav.site_nav{
	position: fixed;
	top: 80px;
	right: 5vw;
	z-index: 100;
	transition: .4s;
}
nav.site_nav ul.site_nav_lists{
	
}
nav.site_nav ul.site_nav_lists li{
	margin-bottom: 8px;
}
nav.site_nav ul.site_nav_lists li:last-child{
	margin-bottom: 0;
}
nav.site_nav ul.site_nav_lists li.flex.onlysp{
	display: none;
}
nav.site_nav ul.site_nav_lists li a{
	display: block;
	font-size: 15px;
	color: #fff;
	letter-spacing: calc(15px * 0.1);
	font-weight: 300;
	transition: .4s;
}
nav.site_nav.black ul.site_nav_lists li a{
	color: #1a1a1a;
}
nav.site_nav svg#LinePaperAirplane{
	display: none;
}
.site_nav__bg{
	display: none;
}
@media screen and (min-width: 1920px){
	nav.site_nav{
		right: calc((100vw - 1728px) / 2);
	}
}
@media screen and (max-width: 768px){
	nav.site_nav{
		top: 0;
		right: auto;
		left: 50%;
		transform: translate(50%, 0);
		width: 100vw;
		height: 100vh;
		padding: 16.41vw 5vw;
		transition: .4s;
		background-color: #fff;
	}
	nav.site_nav.act{
		transform: translate(-50%, 0);
	}
	nav.site_nav ul.site_nav_lists li{
		margin-bottom: calc(4.1vw * (1/2));
	}
	nav.site_nav ul.site_nav_lists li.flex.onlysp{
		display: flex;
	}
	nav.site_nav ul.site_nav_lists li a{
		font-size: 4.1vw;
		letter-spacing: calc(4.1vw * 0.1);
		font-weight: 300;
	}
	nav.site_nav.act ul.site_nav_lists li a{
		color: #1a1a1a;
	}
	nav.site_nav svg#LinePaperAirplane{
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 41.03vw;
		height: calc(41.03vw * (232/294));
	}
	nav.site_nav svg#LinePaperAirplane path{
		fill: none;
		stroke: rgba(230, 25, 77, 0.25);
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1px;
	}
	nav.site_nav svg#LinePaperAirplane path{
		stroke-dasharray: var(--path-length);
		stroke-dashoffset: var(--path-length);
		animation: drawAndErase 8s linear infinite;
	}
	.site_nav__bg{
		position: fixed;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100vw;
		height: 100vh;
		background-color: rgba(26, 26, 26, .8);
		z-index: 50;
	}
}





/**
 * section
 * mv
 */
section.mv{
	padding: 160px 0 280px 0;
	background-color: #e6194d;
	overflow: hidden;
}
section.mv div.mvbg{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1920px;
	height: calc(1920px * (1080/1920));
}
section.mv video#mvbg{
	display: block;
	width: 100%;
	height: 100%;
}
section.mv .msg p{
	font-size: 60px;
	color: #fff;
	letter-spacing: calc(60px * 0.1);
	font-weight: 300;
	line-height: 1.5;
	height: calc((60px + (60px * 0.1)) * 7);
}
section.mv .mv_svgs{
	position: absolute;
	bottom: 0;
	left: 5vw;
	padding-bottom: 120px;
}
section.mv .mv_svgs .LineSlogan{
	padding-bottom: 12px;
}
section.mv .mv_svgs .LineSlogan svg#LineSlogan{
	width: 386px;
	height: calc(386px * (18 / 386));
}
section.mv .mv_svgs svg#LineCity{
	width: 1316px;
	height: calc(1316px * (200 / 1316));
}
section.mv .mv_svgs svg#LineCityItem01,
section.mv .mv_svgs svg#LineCityItem02,
section.mv .mv_svgs svg#LineCityItem03,
section.mv .mv_svgs svg#LineCityItem04,
section.mv .mv_svgs svg#LineCityItem05,
section.mv .mv_svgs svg#LineCityItem06,
section.mv .mv_svgs svg#LineSun{
	position: absolute;
}
section.mv .mv_svgs svg#LineCityItem01{
	bottom: 40px;
	left: calc(40px * (560/40));
	width: calc(40px * (48/40));
	height: calc((40px * (48/40)) * (60/48));
}
section.mv .mv_svgs svg#LineCityItem02{
	bottom: calc(40px * (56/40));
	left: calc(40px * (720/40));
	width: calc(40px * (58/40));
	height: calc((40px * (58/40)) * (74/58));
}
section.mv .mv_svgs svg#LineCityItem03{
	bottom: 40px;
	left: calc(40px * (840/40));
	width: calc(40px * (32/40));
	height: calc((40px * (32/40)) * (48/32));
}
section.mv .mv_svgs svg#LineCityItem04{
	bottom: calc(40px * (48/40));
	left: calc(40px * (880/40));
	width: calc(40px * (24/40));
	height: calc((40px * (24/40)) * (38/24));
}
section.mv .mv_svgs svg#LineCityItem05{
	bottom: 40px;
	left: calc(40px * (960/40));
	width: calc(40px * (60/40));
	height: calc((40px * (60/40)) * (68/60));
}
section.mv .mv_svgs svg#LineCityItem06{
	bottom: 40px;
	left: calc(40px * (1200/40));
	width: calc(40px * (28/40));
	height: calc((40px * (28/40)) * (64/28));
}
section.mv .mv_svgs svg#LineSun{
	top: 0;
	left: calc(40px * (1200/40));
	width: calc(40px * (70/40));
	height: calc(40px * (70/40));
}
section.mv .mv_svgs .LineSlogan svg#LineSlogan path,
section.mv .mv_svgs .LineSlogan svg#LineSlogan circle,
section.mv .mv_svgs svg#LineCity path,
section.mv .mv_svgs svg#LineCityItem01 path,
section.mv .mv_svgs svg#LineCityItem02 path,
section.mv .mv_svgs svg#LineCityItem03 path,
section.mv .mv_svgs svg#LineCityItem04 path,
section.mv .mv_svgs svg#LineCityItem05 path,
section.mv .mv_svgs svg#LineCityItem06 polyline,
section.mv .mv_svgs svg#LineSun path{
	fill: none;
	stroke: #fff;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.mv .cover{
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, calc(0% + 1px));
	width: 200vw;
	background-color: #fff;
	border-radius: 100% 100% 0 0;
}
@media screen and (min-width: 1920px){
	section.mv div.mvbg{
		width: 100vw;
		height: calc(100vw * (1080/1920));
	}
	section.mv .mv_svgs{
		left: calc((100vw - 1728px) / 2);
	}
}
/**
 * section
 * mv
 * animation
 */
section.mv .msg p,
section.mv .mv_svgs .LineSlogan svg#LineSlogan,
section.mv .mv_svgs svg#LineCity{
	opacity: 0;
	transition: 1.6s;
}
section.mv .mv_svgs svg#LineCityItem01,
section.mv .mv_svgs svg#LineCityItem02,
section.mv .mv_svgs svg#LineCityItem03,
section.mv .mv_svgs svg#LineCityItem04,
section.mv .mv_svgs svg#LineCityItem05,
section.mv .mv_svgs svg#LineCityItem06,
section.mv .mv_svgs svg#LineSun{
	opacity: 0;
}
section.mv .msg p.act,
section.mv .mv_svgs .LineSlogan svg#LineSlogan.act,
section.mv .mv_svgs svg#LineCity.act,
section.mv .mv_svgs svg#LineCityItem01.act,
section.mv .mv_svgs svg#LineCityItem02.act,
section.mv .mv_svgs svg#LineCityItem03.act,
section.mv .mv_svgs svg#LineCityItem04.act,
section.mv .mv_svgs svg#LineCityItem05.act,
section.mv .mv_svgs svg#LineCityItem06.act,
section.mv .mv_svgs svg#LineSun.act{
	opacity: 1;
}
section.mv .cover{
	height: var(--height, 0%);
	/*transition: .8s;*/
	transition: 0s;
}
@media screen and (max-width: 768px){
	section.mv{
		padding: 30.77vw 0 calc((98.97vw * (3/4) * (18 / 386)) + ((337.44vw * (3/4) * (200 / 1316)) + (98.97vw * (3/4) * (18 / 386))) + 20.51vw) 0;
	}
	section.mv div.mvbg{
		width: 100vw;
		height: calc(100vw * (1920/1080));
	}
	section.mv .msg p{
		font-size: 10.26vw;
		letter-spacing: calc(10.26vw * 0.1);
		height: calc((10.26vw + (10.26vw * 0.1)) * 7);
	}
	section.mv .mv_svgs{
		width: 90vw;
		left: 5vw;
		padding-bottom: 20.51vw;
	}
	section.mv .mv_svgs .fwn{
		flex-wrap: wrap;
		padding-bottom: calc((337.44vw * (3/4) * (200 / 1316)) + (98.97vw * (3/4) * (18 / 386)));
	}
	section.mv .mv_svgs .LineSlogan{
		padding-left: 4.1vw;
		padding-bottom: 0;
		order: 2;
	}
	section.mv .mv_svgs .LineSlogan svg#LineSlogan{
		width: calc(98.97vw * (3/4));
		height: calc(98.97vw * (3/4) * (18 / 386));
	}
	section.mv .mv_svgs svg#LineCity{
		position: absolute;
		bottom: 0;
		left: -46.15vw;
		width: calc(337.44vw * (3/4));
		height: calc(337.44vw * (3/4) * (200 / 1316));
		order: 1;
	}
	section.mv .mv_svgs svg#LineCityItem01{
		bottom: calc(10.26vw * (3/4));
		left: calc(10.26vw * (8/40) * -1);
		width: calc(10.26vw * (3/4) * (48/40));
		height: calc((10.26vw * (3/4) * (48/40)) * (60/48));
	}
	section.mv .mv_svgs svg#LineCityItem02{
		bottom: calc(10.26vw * (3/4) * (56/40));
		left: calc(10.26vw * (32/40));
		width: calc(10.26vw * (3/4) * (58/40));
		height: calc((10.26vw * (3/4) * (58/40)) * (74/58));
	}
	section.mv .mv_svgs svg#LineCityItem03{
		bottom: calc(10.26vw * (3/4));
		left: calc(10.26vw * (120/40));
		width: calc(10.26vw * (3/4) * (32/40));
		height: calc((10.26vw * (3/4) * (32/40)) * (48/32));
	}
	section.mv .mv_svgs svg#LineCityItem04{
		bottom: calc(10.26vw * (3/4) * (48/40));
		left: calc(10.26vw * (148/40));
		width: calc(10.26vw * (3/4) * (24/40));
		height: calc((10.26vw * (3/4) * (24/40)) * (38/24));
	}
	section.mv .mv_svgs svg#LineCityItem05{
		bottom: calc(10.26vw * (3/4));
		left: calc(10.26vw * (200/40));
		width: calc(10.26vw * (3/4) * (60/40));
		height: calc((10.26vw * (3/4) * (60/40)) * (68/60));
	}
	section.mv .mv_svgs svg#LineCityItem06{
		bottom: calc(10.26vw * (3/4));
		left: calc(10.26vw * (280/40));
		width: calc(10.26vw * (3/4) * (28/40));
		height: calc((10.26vw * (3/4) * (28/40)) * (64/28));
	}
	section.mv .mv_svgs svg#LineSun{
		top: calc((98.97vw * (3/4) * (18 / 386)) * 2);
		left: calc(10.26vw * (200/40));
		width: calc(10.26vw * (3/4) * (70/40));
		height: calc(10.26vw * (3/4) * (70/40));
	}
	section.mv .cover{
		transition: 0s;
	}
}





/**
 * section
 * lowerpage_mv
 */
section.lowerpage_mv{
	padding: 320px 0;
	background-color: #fff;
	overflow: hidden;
}
section.lowerpage_mv .contents_bg{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}
section.lowerpage_mv .contents_bg .photo{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1920px;
	height: calc(1920px * (1114 / 1920));
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.lowerpage_mv.lowerpage_company .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_staff .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_staff_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_news .contents_bg .photo,
section.lowerpage_mv.lowerpage_newsdetail .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_service_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_recruit .contents_bg .photo,
section.lowerpage_mv.lowerpage_recruitdetail .contents_bg .photo,
section.lowerpage_mv.lowerpage_recruitcontact .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_recruit_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_service .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_privacy_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_contact .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_privacy_lowerpage_mv.webp');
}
section.lowerpage_mv.lowerpage_privacy .contents_bg .photo{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_contact_lowerpage_mv.webp');
}
@media screen and (min-width: 1920px){
	section.lowerpage_mv .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1114 / 1920));
	}
}
/**
 * section
 * lowerpage_mv
 * animation
 */
section.lowerpage_mv .contents_bg .photo{
	top: var(--top, 0px);
	/*transition: .8s;*/
	transition: 0s;
}
@media screen and (max-width: 768px){
	section.lowerpage_mv{
		padding: 61.54vw 0;
	}
	section.lowerpage_mv .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1318 / 768));
	}
	section.lowerpage_mv.lowerpage_company .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_staff .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_staff_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_news .contents_bg .photo,
	section.lowerpage_mv.lowerpage_newsdetail .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_service_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_recruit .contents_bg .photo,
	section.lowerpage_mv.lowerpage_recruitdetail .contents_bg .photo,
	section.lowerpage_mv.lowerpage_recruitcontact .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_recruit_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_service .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_privacy_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_contact .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_privacy_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv.lowerpage_privacy .contents_bg .photo{
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_contact_lowerpage_mv__sp.webp');
	}
	section.lowerpage_mv .contents_bg .photo{
		transition: 0s;
	}
}





/**
 * section
 * message
 */
section.message{
	background-color: #fff;
}
section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01{
	position: absolute;
	bottom: 80px;
	left: 0;
	transform: translate(0, 0);
	width: 1904px;
	height: calc(1904px * (160/1904));
}
section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01 path{
	fill: none;
	stroke: #e6194d;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
/**
 * section
 * message
 * animation
 */
section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01 path{
	/*transition: .8s;*/
	transition: 0s;
}
section.message .sticky_contents .sticky_content .contents .txts p span.txt span{
	opacity: .15;
	transition: .8s;
}
section.message .sticky_contents .sticky_content .contents .txts p span.txt span.act{
	opacity: 1;
}
@media screen and (min-width: 1920px){
	section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01{
		left: calc((100vw - 1920px) / 2);
	}
}
@media screen and (max-width: 768px){
	section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01{
		width: 100vw;
		height: calc(100vw * (160/1904));
	}
	section.message .sticky_contents .sticky_content .contents_bg svg#LineHeart01 path{
		transition: 0s;
	}
}





/**
 * section
 * service
 */
section.service{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.service.otherservice{
	background-color: rgba(255, 255, 255, .8);
}
section.service .service_lists .service_list .content .thm svg{
	display: none;
}
section.service .service_lists .service_list.slick-current .content .thm svg{
	display: block;
}
section.service .service_lists .service_list .content .thm svg path{
	fill: none;
	stroke: #1a1a1a;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
	transition: stroke-dashoffset 2.8s ease;
}
section.service .service_lists .service_list.slick-current .content .thm svg path{
	stroke-dashoffset: 0;
}
@media screen and (max-width: 768px){
	section.service{
		padding: 61.54vw 0;
	}
	section.service .service_lists .service_list .content .thm svg path{
		transition: stroke-dashoffset 5.6s ease;
	}
}





/**
 * section
 * company
 */
section.company{
	background-color: #fff;
}
section.company .sticky_contents .sticky_content .contents_bg .photo{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1920px;
	height: calc(1920px * (1440/1920));
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.company .sticky_contents .sticky_content .contents .txts{
	margin-bottom: 40px;
}
@media screen and (min-width: 1920px){
	section.company .sticky_contents .sticky_content .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1440/1920));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company.webp');
	}
}
/**
 * section
 * company
 * animation
 */
section.company .sticky_contents .sticky_content .contents_bg .photo{
	bottom: var(--bottom, 0px);
	/*transition: .8s;*/
	transition: 0s;
}
section.company .sticky_contents .sticky_content .contents .txts p span.txt span,
section.company p.viewmore a{
	opacity: .15;
	transition: .8s;
}
section.company .sticky_contents .sticky_content .contents .txts p span.txt span.act,
section.company p.viewmore a.act{
	opacity: 1;
}
@media screen and (max-width: 768px){
	section.company .sticky_contents .sticky_content .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (2076/768));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company__sp.webp');
	}
	section.company .sticky_contents .sticky_content .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.company .sticky_contents .sticky_content .contents_bg .photo{
		transition: 0s;
	}
}





/**
 * section
 * staff
 */
section.staff{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.staff .staff_lists .staff_list .content .txts .head h3 span{
	margin-right: calc(16px * (1/2));
}
section.staff .staff_lists .staff_list .content .txts .head p.en span{
	margin-right: calc(12px * (1/2));
}
section.staff .staff_lists .staff_list .content .txts .head h3 span:last-child,
section.staff .staff_lists .staff_list .content .txts .head p.en span:last-child{
	margin-right: 0;
}
@media screen and (max-width: 768px){
	section.staff{
		padding: 61.54vw 0;
	}
	section.staff .staff_lists .staff_list .content .txts .head h3 span{
		margin-right: calc(3.59vw * (1/2));
	}
	section.staff .staff_lists .staff_list .content .txts .head p.en span{
		margin-right: calc(3.08vw * (1/2));
	}
}





/**
 * section
 * recruit
 */
section.recruit{
	background-color: #fff;
}
section.recruit .sticky_contents .sticky_content .contents_bg .photo{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1920px;
	height: calc(1920px * (1440/1920));
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_recruit.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.recruit .sticky_contents .sticky_content .contents .txts{
	margin-bottom: 40px;
}
@media screen and (min-width: 1920px){
	section.recruit .sticky_contents .sticky_content .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1440/1920));
	}
}
/**
 * section
 * recruit
 * animation
 */
section.recruit .sticky_contents .sticky_content .contents_bg .photo{
	bottom: var(--bottom, 0px);
	/*transition: .8s;*/
	transition: 0s;
}
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt span,
section.recruit p.viewmore a{
	opacity: .15;
	transition: .8s;
}
section.recruit .sticky_contents .sticky_content .contents .txts p span.txt span.act,
section.recruit p.viewmore a.act{
	opacity: 1;
}
@media screen and (max-width: 768px){
	section.recruit .sticky_contents .sticky_content .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (2076/768));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_recruit__sp.webp');
	}
	section.recruit .sticky_contents .sticky_content .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.recruit .sticky_contents .sticky_content .contents_bg .photo{
		transition: 0s;
	}
}





/**
 * section
 * access
 */
section.access{
	padding: 240px 0 120px 0;
	background-color: #fff;
	overflow: hidden;
}
section.access .access_main_lists .access_main_list .content .txts .txt p a,
section.access .access_main_lists .access_main_list .content .txts .txt p span{
	margin-right: calc(14px * (1/2));
}
section.access .access_main_lists .access_main_list .content .txts .txt p a:last-child,
section.access .access_main_lists .access_main_list .content .txts .txt p span:last-child{
	margin-right: 0;
}
section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex,
section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex{
	display: flex;
	margin-right: calc(14px * 2);
}
section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex:last-child,
section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex:last-child{
	margin-right: 0;
}
section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex:after,
section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex:after{
	position: absolute;
	content: '';
	top: 50%;
	right: calc(14px * -1);
	transform: translate(50%, -50%) rotate(30deg);
	width: 1px;
	height: 14px;
	background-color: #afafaf;
}
section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex:last-child:after,
section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex:last-child:after{
	display: none;
}
section.access .iframe_wrap{
	height: 480px;
	margin: 80px 0;
}
section.access .iframe_wrap iframe{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px){
	section.access{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.access .access_main_lists .access_main_list .content .txts .txt p a,
	section.access .access_main_lists .access_main_list .content .txts .txt p span{
		margin-right: calc(3.08vw * (1/2));
	}
	section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex,
	section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex{
		margin-right: calc(3.08vw * 2);
	}
	section.access .access_main_lists .access_main_list .content .txts .txt p.contact a.flex:after,
	section.access .access_main_lists .access_main_list .content .txts .txt p.contact span.flex:after{
		right: calc(3.08vw * -1);
		height: 3.08vw;
	}
	section.access .iframe_wrap{
		height: 82.05vw;
		margin: 10.26vw 0;
	}
}





/**
 * section
 * news
 */
section.news{
	padding: 120px 0 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.news .news_contents{
	width: calc(100% - 100px/* nav考慮 */);
	margin: 0 auto 40px 0;
}
section.news ul.news_category_lists{
	width: 200px;
	order: 2;
}
section.news ul.news_category_lists li{
	margin-bottom: 8px;
}
section.news ul.news_category_lists li:last-child{
	margin-bottom: 0;
}
section.news ul.news_category_lists li p{
	font-size: 15px;
	color: #3a3a3a;
	letter-spacing: calc(15px * 0.1);
	padding-left: 20px;
	cursor: pointer;
}
section.news ul.news_category_lists li p.act{
	color: #e6194d;
}
section.news ul.news_category_lists li p.act:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 4px;
	height: 4px;
	background-color: #e6194d;
	border-radius: 100%;
}
section.news .news_tabs{
	width: calc(100% - 200px - 80px);
	margin-right: 80px;
	order: 1;
}
section.news .news_tabs .news_tab{
	display: none;
}
section.news .news_tabs .news_tab.act{
	display: block;
}
section.news .news_tabs .news_tab ul.news_lists{
	width: 100%;
}
section.news .news_tabs .news_tab ul.news_lists li{
	width: calc(50% - 20px);
}
section.news .news_tabs .news_tab ul.news_lists li a{
	display: block;
	padding: 20px 0 calc(20px + 1px) 0;
}
section.news .news_tabs .news_tab ul.news_lists li a:before,
section.news .news_tabs .news_tab ul.news_lists li a:after{
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	height: 1px;
}
section.news .news_tabs .news_tab ul.news_lists li a:before{
	width: 100%;
	background-color: #ebebeb;
}
section.news .news_tabs .news_tab ul.news_lists li a:after{
	width: 0;
	background-color: #e6194d;
	transition: .4s;
}
section.news .news_tabs .news_tab ul.news_lists li a:hover:after{
	width: 80px;
}
section.news .news_tabs .news_tab ul.news_lists li a p.date,
section.news .news_tabs .news_tab ul.news_lists li a p.category{
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
}
section.news .news_tabs .news_tab ul.news_lists li a p.date{
	color: #7a7a7a;
	margin-right: 14px;
}
section.news .news_tabs .news_tab ul.news_lists li a p.category{
	color: #1a1a1a;
}
section.news .news_tabs .news_tab ul.news_lists li a p.category.cate_news{
	color: #ff4172;
}
section.news .news_tabs .news_tab ul.news_lists li a p.category.cate_service{
	color: #3981c2;
}
section.news .news_tabs .news_tab ul.news_lists li a p.category.cate_release{
	color: #40bcff;
}
section.news .news_tabs .news_tab ul.news_lists li a p.txt{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
}
section.news .news_tabs .news_tab p.nonews{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
@media screen and (max-width: 1400px){
	section.news ul.news_category_lists{
		width: 100%;
		order: 1;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: 40px;
	}
	section.news ul.news_category_lists li{
		margin-bottom: 0;
		margin-right: 20px;
	}
	section.news ul.news_category_lists li:last-child{
		margin-right: 0;
	}
	section.news .news_tabs{
		width: 100%;
		margin-right: 0;
		order: 2;
	}
}
@media screen and (max-width: 768px){
	section.news{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.news .news_contents{
		width: 100%;
		margin: 0 auto 10.26vw 0;
	}
	section.news ul.news_category_lists{
		margin-bottom: 10.26vw;
	}
	section.news ul.news_category_lists li{
		margin-right: 0;
		width: calc(100% / 3);
	}
	section.news ul.news_category_lists li:first-child{
		width: 100%;
	}
	section.news ul.news_category_lists li:last-child{
		margin-right: 0;
	}
	section.news ul.news_category_lists li p{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		padding-left: 5.13vw;
	}
	section.news ul.news_category_lists li p.act:before{
		width: 1.03vw;
		height: 1.03vw;
	}
	section.news .news_tabs .news_tab ul.news_lists li{
		width: 100%;
	}
	section.news .news_tabs .news_tab ul.news_lists li a{
		padding: 5.13vw 0 calc(5.13vw + 1px) 0;
	}
	section.news .news_tabs .news_tab ul.news_lists li a:hover:after{
		width: 20.51vw;
	}
	section.news .news_tabs .news_tab ul.news_lists li a p.date,
	section.news .news_tabs .news_tab ul.news_lists li a p.category{
		font-size: 3.08vw;
		letter-spacing: calc(3.08vw * 0.1);
		font-weight: 400;
	}
	section.news .news_tabs .news_tab ul.news_lists li a p.date{
		margin-right: 3.08vw;
	}
	section.news .news_tabs .news_tab ul.news_lists li a p.txt{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.news .news_tabs .news_tab p.nonews{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
}





/**
 * pagenation_lists
 */
ul.pagenation_lists li{
	margin-right: calc(16px * (5/2));
}
ul.pagenation_lists li:last-child{
	margin-right: 0;
}
ul.pagenation_lists li a,
ul.pagenation_lists li span{
	display: block;
	width: calc(16px * (5/2));
	font-size: 16px;
	font-weight: 400;
	line-height: 2.5;
}
ul.pagenation_lists li span.dots,
ul.pagenation_lists li a.next{
	height: calc(16px * (5/2));
}
ul.pagenation_lists li a.next{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/slicknext.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: calc(16px * (5/2));
}
@media screen and (max-width: 768px){
	ul.pagenation_lists li{
		margin-right: calc(4.1vw * 2);
	}
	ul.pagenation_lists li a,
	ul.pagenation_lists li span{
		width: calc(4.1vw * 2);
		font-size: 4.1vw;
		line-height: 2;
	}
	ul.pagenation_lists li span.dots,
	ul.pagenation_lists li a.next{
		height: calc(4.1vw * 2);
	}
	ul.pagenation_lists li a.next{
		background-size: calc(4.1vw * 2);
	}
}





/**
 * pagenation
 */
.pagenation ul.page-numbers{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.pagenation ul.page-numbers li{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-right: 40px;
}
.pagenation ul.page-numbers li:last-child{
	margin-right: 0;
}
.pagenation ul.page-numbers li a.page-numbers,
.pagenation ul.page-numbers li span.page-numbers{
	display: block;
	width: calc(16px * (5 / 2));
	height: calc(16px * (5 / 2));
	font-family: "Poppins", sans-serif;
	font-style: normal;
	font-size: 16px;
	font-weight: 400;
	text-align: center;
	line-height: 2.5;
}
.pagenation ul.page-numbers li a.page-numbers span.page-num,
.pagenation ul.page-numbers li span.page-numbers span.page-num{
	display: block;
}
.pagenation ul.page-numbers li a.page-numbers.prev,
.pagenation ul.page-numbers li a.page-numbers.next{
	background-position: center;
	background-repeat: no-repeat;
	background-size: calc(16px * (5 / 2));
}
.pagenation ul.page-numbers li a.page-numbers.prev{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/slickprev.svg');
}
.pagenation ul.page-numbers li a.page-numbers.next{
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/slicknext.svg');
}
@media screen and (max-width: 768px){
	.pagenation ul.page-numbers li{
		margin-right: calc(3.08vw * (1 / 2));
	}
	.pagenation ul.page-numbers li a.page-numbers,
	.pagenation ul.page-numbers li span.page-numbers{
		width: calc(3.08vw * (5 / 2));
		height: calc(3.08vw * (5 / 2));
		font-size: 3.08vw;
	}
	.pagenation ul.page-numbers li a.page-numbers.prev,
	.pagenation ul.page-numbers li a.page-numbers.next{
		background-size: calc(3.08vw * (5 / 2));
	}
}





/**
 * section
 * contact
 */
section.contact{
	padding: 80px 0;
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_contact.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #e6194d;
}
section.contact svg#LinePost01{
	position: absolute;
	top: calc(50% - 16px);
	left: calc(50% + 16px);
	transform: translate(-50%, -50%);
	width: 200px;
	height: calc(200px * (220/306));
}
section.contact svg#LinePost01 path{
	fill: none;
	stroke: #fff;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
/**
 * section
 * contact
 * animation
 */
section.contact svg#LinePost01 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	animation: drawAndErase 12s linear infinite;
}
@keyframes drawAndErase {
	0% {
		stroke-dashoffset: var(--path-length); /* 線が見えない */
	}
	45% {
		stroke-dashoffset: 0; /* 線が全部表示される */
	}
	50% {
		stroke-dashoffset: 0; /* 一時停止（全表示） */
	}
	95% {
		stroke-dashoffset: var(--path-length); /* 線が消える */
	}
	100% {
		stroke-dashoffset: var(--path-length); /* 一時停止（全表示） */
	}
}
@media screen and (max-width: 768px){
	section.contact{
		padding: 20.51vw 0;
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_contact__sp.webp');
	}
	section.contact svg#LinePost01{
		top: calc(50% - 4.1vw);
		left: calc(50% + 4.1vw);
		width: 51.28vw;
		height: calc(51.28vw * (220/306));
	}
}





/**
 * section
 * footer
 */
section.footer{
	padding: 80px 0 40px 0;
	background-color: #fff;
	overflow: hidden;
}
section.footer .txts a.logo,
section.footer .txts a.logo img{
	display: block;
}
section.footer .txts a.logo{
	width: 200px;
	height: calc(200px * (30 / 200));
	margin-bottom: 20px;
}
section.footer .txts a.logo img{
	width: 100%;
	height: 100%;
}
section.footer .txts p.address_txts,
section.footer .txts p.privacypolicy{
	margin-bottom: 20px;
}
section.footer .txts p.address_txts span.address_txt,
section.footer .txts p.privacypolicy a,
section.footer .txts p.profile a{
	display: block;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}
section.footer .txts p.profile a{
	font-weight: 500;
}
section.footer .txts p.address_txts span.address_txt .poppins{
	font-weight: 300;
}
section.footer .txts p.privacypolicy a,
section.footer .txts p.profile a{
	color: #e6194d;
}
section.footer .txts p.profile a span.poppins{
	font-weight: 400;
}
section.footer ul.link_lists li{
	margin-bottom: 28px;
}
section.footer ul.link_lists li:last-child{
	margin-bottom: 0;
}
section.footer ul.link_lists li a,
section.footer ul.link_lists li a img,
section.footer ul.link_lists li span,
section.footer ul.link_lists li span img{
	display: block;
}
section.footer ul.link_lists li a.logo__sfida,
section.footer ul.link_lists li span.logo__sfida{
	width: calc(147px * (6/6));
	height: calc((147px * (6/6)) * (41/147));
}
section.footer ul.link_lists li a.logo__egg,
section.footer ul.link_lists li span.logo__egg{
	width: calc(200px * (6/6));
	height: calc((200px * (6/6)) * (32/200));
}
section.footer ul.link_lists li a.logo__mogumogufarm,
section.footer ul.link_lists li span.logo__mogumogufarm{
	width: calc(162px * (6/6));
	height: calc((162px * (6/6)) * (38/162));
}
section.footer ul.link_lists li a.logo__bistroaoi,
section.footer ul.link_lists li span.logo__bistroaoi{
	width: calc(166px * (5/6));
	height: calc((166px * (5/6)) * (38/166));
}
section.footer ul.link_lists li a.logo__mabataki,
section.footer ul.link_lists li span.logo__mabataki{
	width: calc(180px * (5/6));
	height: calc((180px * (5/6)) * (34/180));
}
section.footer ul.link_lists li a.logo__novae,
section.footer ul.link_lists li span.logo__novae{
	width: calc(186px * (3/6));
	height: calc((186px * (3/6)) * (34/186));
}
section.footer ul.link_lists li a.logo__jimjamie,
section.footer ul.link_lists li span.logo__jimjamie{
	width: calc(84px * (4/6));
	height: calc((84px * (4/6)) * (74/84));
}
section.footer ul.link_lists li a.logo__theflwrs,
section.footer ul.link_lists li span.logo__theflwrs{
	width: calc(184px * (4/6));
	height: calc((184px * (4/6)) * (34/184));
}
section.footer ul.link_lists li a img,
section.footer ul.link_lists li span img{
	width: 100%;
	height: 100%;
}
section.footer p.copyright{
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 40px;
}
@media screen and (max-width: 768px){
	section.footer{
		padding: 20.51vw 0 10.26vw 0;
	}
	section.footer .txts{
		width: 100%;
		order: 2;
	}
	section.footer .txts a.logo{
		width: 41.03vw;
		height: calc(41.03vw * (30 / 200));
		margin: 0 auto 10.26vw auto;
	}
	section.footer .txts p.address_txts,
	section.footer .txts p.privacypolicy{
		text-align: center;
		margin-bottom: 5.13vw;
	}
	section.footer .txts p.privacypolicy,
	section.footer .txts p.profile{
		justify-content: center;
	}
	section.footer .txts p.address_txts span.address_txt,
	section.footer .txts p.privacypolicy a,
	section.footer .txts p.profile a{
		font-size: 3.59vw;
	}
	section.footer ul.link_lists{
		width: 100%;
		margin-bottom: 20.51vw;
		order: 1;
	}
	section.footer ul.link_lists li{
		justify-content: center;
		margin-bottom: 7.18vw;
	}
	section.footer ul.link_lists li a.logo__sfida,
	section.footer ul.link_lists li span.logo__sfida{
		width: calc(30.77vw * (6/6));
		height: calc((30.77vw * (6/6)) * (41/147));
	}
	section.footer ul.link_lists li a.logo__egg,
	section.footer ul.link_lists li span.logo__egg{
		width: calc((30.77vw * (200/147)) * (6/6));
		height: calc(((30.77vw * (200/147)) * (6/6)) * (32/200));
	}
	section.footer ul.link_lists li a.logo__mogumogufarm,
	section.footer ul.link_lists li span.logo__mogumogufarm{
		width: calc((30.77vw * (162/147)) * (6/6));
		height: calc(((30.77vw * (162/147)) * (6/6)) * (38/162));
	}
	section.footer ul.link_lists li a.logo__bistroaoi,
	section.footer ul.link_lists li span.logo__bistroaoi{
		width: calc((30.77vw * (166/147)) * (5/6));
		height: calc(((30.77vw * (166/147)) * (5/6)) * (38/166));
	}
	section.footer ul.link_lists li a.logo__mabataki,
	section.footer ul.link_lists li span.logo__mabataki{
		width: calc((30.77vw * (180/147)) * (5/6));
		height: calc(((30.77vw * (180/147)) * (5/6)) * (34/180));
	}
	section.footer ul.link_lists li a.logo__novae,
	section.footer ul.link_lists li span.logo__novae{
		width: calc((30.77vw * (186/147)) * (3/6));
		height: calc(((30.77vw * (186/147)) * (3/6)) * (34/186));
	}
	section.footer ul.link_lists li a.logo__jimjamie,
	section.footer ul.link_lists li span.logo__jimjamie{
		width: calc((30.77vw * (84/147)) * (4/6));
		height: calc(((30.77vw * (84/147)) * (4/6)) * (74/84));
	}
	section.footer ul.link_lists li a.logo__theflwrs,
	section.footer ul.link_lists li span.logo__theflwrs{
		width: calc((30.77vw * (184/147)) * (4/6));
		height: calc(((30.77vw * (184/147)) * (4/6)) * (34/184));
	}
	section.footer p.copyright{
		font-size: 3.08vw;
		text-align: center;
		margin-top: 10.26vw;
	}
}





/**
 * section
 * company_ap
 */
section.company_ap{
	padding: 240px 0 0 0;
	background-color: #fff;
	overflow: hidden;
}
section.company_ap .contents{
	padding-bottom: 240px;
}
section.company_ap .contents dl{
	margin-bottom: 40px;
}
section.company_ap .contents dl:last-child{
	margin-bottom: 0;
}
section.company_ap .contents dl dt h3 span{
	display: block;
	font-size: 16px;
	color: #e6194d;
	letter-spacing: calc(16px * 0.1);
	font-weight: 500;
}
section.company_ap .contents dl dd p{
	margin-bottom: 20px;
}
section.company_ap .contents dl dd p:last-child{
	margin-bottom: 0;
}
section.company_ap .contents dl dd p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.company_ap .contents dl dd p:first-child span{
	font-size: 40px;
	letter-spacing: calc(40px * 0.1);
	font-weight: 300;
	line-height: 2;
}
section.company_ap .contents_bg{
	height: 640px;
	background-color: #000;
	overflow: hidden;
}
section.company_ap .contents_bg .photo{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1920px;
	height: calc(1920px * (1012/1920));
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (min-width: 1920px){
	section.company_ap .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1012/1920));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc.webp');
	}
}
/**
 * section
 * company_ap
 * animation
 */
section.company_ap .contents_bg .photo{
	bottom: var(--bottom, 0px);
	/*transition: .8s;*/
	transition: 0s;
}
@media screen and (max-width: 768px){
	section.company_ap{
		padding: 61.54vw 0 0 0;
	}
	section.company_ap .contents{
		padding-bottom: 61.54vw;
	}
	section.company_ap .contents dl{
		margin-bottom: 10.26vw;
	}
	section.company_ap .contents dl dt h3 span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.company_ap .contents dl dd p{
		margin-bottom: 5.13vw;
	}
	section.company_ap .contents dl dd p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
	section.company_ap .contents dl dd p:first-child span{
		font-size: calc(3.59vw * 2);
		letter-spacing: calc((3.59vw * 2) * 0.1);
	}
	section.company_ap .contents_bg{
		height: 164.1vw;
	}
	section.company_ap .contents_bg .photo{
		width: 100vw;
		/*height: calc(100vw * (1575/768));*/
		height: calc(100vh * (5/4));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc__sp.webp');
	}
	section.company_ap .contents_bg .photo{
		transition: 0s;
	}
}





/**
 * section
 * company_cc
 */
section.company_cc{
	padding: 120px 0 0 0;
	background-color: #fff;
	overflow: hidden;
}
section.company_cc .contents ul.cc_lists{
	margin-bottom: 40px;
}
section.company_cc .contents ul.cc_lists li.cc_list{
	width: 50%;
}
section.company_cc .contents ul.cc_lists li.cc_list:nth-child(2n-1){
	padding-right: 20px;
}
section.company_cc .contents ul.cc_lists li.cc_list:nth-child(2n){
	padding-left: 20px;
}
section.company_cc .contents ul.cc_lists li.cc_list p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
	padding-left: calc(16px * (20/16));
}
section.company_cc .contents ul.cc_lists li.cc_list p span:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: calc(16px * (1/2));
	height: calc(16px * (1/2));
	border-radius: 100%;
	outline: 1px solid #e6194d;
	outline-offset: -1px;
}
section.company_cc .contents{
	padding-bottom: 240px;
}
section.company_cc .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.company_cc .contents_bg{
	height: 640px;
	background-color: #000;
	overflow: hidden;
}
section.company_cc .contents_bg .photo{
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1920px;
	height: calc(1920px * (1012/1920));
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (min-width: 1920px){
	section.company_cc .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1012/1920));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc.webp');
	}
}
/**
 * section
 * company_cc
 * animation
 */
section.company_cc .contents_bg .photo{
	bottom: var(--bottom, 0px);
	/*transition: .8s;*/
	transition: 0s;
}
@media screen and (max-width: 768px){
	section.company_cc{
		padding: 30.77vw 0 0 0;
	}
	section.company_cc .contents ul.cc_lists{
		margin-bottom: 10.26vw;
	}
	section.company_cc .contents ul.cc_lists li.cc_list{
		width: 100%;
	}
	section.company_cc .contents ul.cc_lists li.cc_list:nth-child(2n-1){
		padding-right: 0;
	}
	section.company_cc .contents ul.cc_lists li.cc_list:nth-child(2n){
		padding-left: 0;
	}
	section.company_cc .contents ul.cc_lists li.cc_list p{
		justify-content: center;
	}
	section.company_cc .contents ul.cc_lists li.cc_list p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		padding-left: calc(3.59vw * (20/16));
	}
	section.company_cc .contents ul.cc_lists li.cc_list p span:before{
		width: calc(3.59vw * (1/2));
		height: calc(3.59vw * (1/2));
	}
	section.company_cc .contents{
		padding-bottom: 61.54vw;
	}
	section.company_cc .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		text-align: center;
		line-height: 2.5;
	}
	section.company_cc .contents_bg{
		height: 164.1vw;
	}
	section.company_cc .contents_bg .photo{
		width: 100vw;
		/*height: calc(100vw * (1575/768));*/
		height: calc(100vh * (5/4));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_cc__sp.webp');
	}
	section.company_cc .contents_bg .photo{
		transition: 0s;
	}
}





/**
 * section
 * company_tm
 */
section.company_tm{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.company_tm .contents .txts{
	margin-bottom: 40px;
}
section.company_tm .contents .txts p span,
section.company_tm .contents .author p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
}
section.company_tm .contents .txts p span{
	line-height: 3;
}
section.company_tm .contents .author p:last-child span{
	font-size: 40px;
	letter-spacing: calc(40px * 0.1);
	font-weight: 300;
	margin-right: calc(40px * (1/2));
}
section.company_tm .contents .author p:last-child span:last-child{
	margin-right: 0;
}
section.company_tm .contents .author .author_contents:after{
	position: absolute;
	content: '';
	bottom: 0;
	right: 0;
	transform: translate(100%, 0);
	width: 160px;
	height: 160px;
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/ShotaNakajima.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (max-width: 768px){
	section.company_tm{
		padding: 61.54vw 0;
	}
	section.company_tm .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.company_tm .contents .txts p span,
	section.company_tm .contents .author p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.company_tm .contents .txts p span{
		line-height: 2.5;
	}
	section.company_tm .contents .author p:last-child span{
		font-size: calc(3.59vw * 2);
		letter-spacing: calc((3.59vw * 2) * 0.1);
		margin-right: calc((3.59vw * 2) * (1/2));
	}
	section.company_tm .contents .author .author_contents:after{
		width: 20.51vw;
		height: 20.51vw;
	}
}





/**
 * section
 * company_cp
 */
section.company_cp{
	background-color: #e6194d;
}
section.company_cp .contents_bg{
	position: sticky;
	top: 0;
	height: 100vh;
	overflow: hidden;
}
section.company_cp .contents_bg .company_cpbg{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100vw;
	height: 100vh;
}
section.company_cp .contents_bg video#company_cpbg{
	display: block;
}
section.company_cp .contents{
	padding-bottom: 240px;
}
section.company_cp .contents .h2_wrap{
	width: 200px;
}
section.company_cp .contents .h2_wrap h2.h2,
section.company_cp .contents .content ul.cp_lists li.cp_list dl dt h3{
	position: sticky;
	top: calc(80px + 120px);/* header height */
}
section.company_cp .contents .content{
	width: calc(100% - 200px);
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl{
	padding: calc(16px * 2) 0;/* h2 fontsize */
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dt{
	width: 240px;
	padding-right: 20px;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd{
	width: calc(100% - 240px);
	padding-left: 20px;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dt h3 span,
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span,
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p a{
	display: block;
	font-size: 16px;
	color: #fff;
	letter-spacing: calc(16px * 0.1);
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dt h3 span{
	font-weight: 400;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span,
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p a{
	font-weight: 300;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span.contact_title{
	width: 64px;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span.contact_content{
	width: calc(100% - 64px);
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd ul.flex li{
	padding-right: calc(16px * 2);
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd ul.flex li:after{
	position: absolute;
	content: '';
	top: 50%;
	right: 16px;
	transform: translate(50%, -50%) rotate(30deg);
	width: 1px;
	height: 16px;
	background-color: #fff;
}
section.company_cp .contents .content ul.cp_lists li.cp_list dl dd ul.flex li:last-child:after{
	display: none;
}
/*@media screen and (min-width: 1920px){
	section.company_cp .contents_bg .company_cpbg{
		width: 100vw;
		height: calc(100vw * (1080/1920));
	}
}*/
@media screen and (max-width: 768px){
	section.company_cp{

	}
	section.company_cp .contents_bg .company_cpbg{
/*		width: var(--width, 100vw);
		height: var(--height, calc(100vw * (1920/1080)));*/
	}
	section.company_cp .contents{
		padding-bottom: 61.54vw;
	}
	section.company_cp .contents .h2_wrap{
		width: 100%;
	}
	section.company_cp .contents .h2_wrap h2.h2{
		position: relative;
		top: auto;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dt h3{
		top: calc(((16.41vw - (30.77vw * (30/200))) / 2) + (30.77vw * (30/200)) + 30.77vw);/* header height */
	}
	section.company_cp .contents .content{
		width: 100%;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl{
		padding: calc(3.08vw * 2) 0;/* h2 fontsize */
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dt{
		width: 28.72vw;
		padding-right: 3.08vw;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd{
		width: calc(100% - 28.72vw);
		padding-left: 3.08vw;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dt h3 span,
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span,
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p a{
		font-size: 3.08vw;
		letter-spacing: calc(3.08vw * 0.1);
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span.contact_title{
		width: 12.31vw;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd p span.contact_content{
		width: calc(100% - 12.31vw);
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd ul.flex li{
		width: 100%;
		padding-right: 0;
	}
	section.company_cp .contents .content ul.cp_lists li.cp_list dl dd ul.flex li:after{
		display: none;
	}
}





/**
 * section
 * company_gc
 */
section.company_gc{
	padding: 240px 0 0 0;
}
section.company_gc ul.gc_lists li.gc_list{
	margin-right: 20px;
}
section.company_gc ul.gc_lists li.gc_list:last-child{
	margin-right: 0;
}
section.company_gc ul.gc_lists li.gc_list a,
section.company_gc ul.gc_lists li.gc_list span,
section.company_gc ul.gc_lists li.gc_list a img,
section.company_gc ul.gc_lists li.gc_list span img{
	display: block;
}
section.company_gc ul.gc_lists li.gc_list a,
section.company_gc ul.gc_lists li.gc_list span{
	width: 200px;
	height: calc(200px * (60/200));
}
section.company_gc ul.gc_lists li.gc_list a img,
section.company_gc ul.gc_lists li.gc_list span img{
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 1440px){
	section.company_gc ul.gc_lists li.gc_list{
		margin-bottom: 20px;
	}
	section.company_gc ul.gc_lists li.gc_list:nth-child(4),
	section.company_gc ul.gc_lists li.gc_list:nth-child(5),
	section.company_gc ul.gc_lists li.gc_list:nth-child(6){
		margin-bottom: 0;
	}
	section.company_gc ul.gc_lists li.gc_list,
	section.company_gc ul.gc_lists li.gc_list:last-child{
		margin-right: 180px;
	}
	section.company_gc ul.gc_lists li.gc_list:nth-child(3n){
		margin-right: 0;
	}
}
@media screen and (max-width: 1120px){
	section.company_gc ul.gc_lists li.gc_list,
	section.company_gc ul.gc_lists li.gc_list:last-child{
		margin-right: 80px;
	}
	section.company_gc ul.gc_lists li.gc_list:nth-child(3n){
		margin-right: 0;
	}
}
@media screen and (max-width: 896px){
	section.company_gc ul.gc_lists li.gc_list,
	section.company_gc ul.gc_lists li.gc_list:last-child{
		margin-right: 20px;
	}
	section.company_gc ul.gc_lists li.gc_list:nth-child(3n){
		margin-right: 0;
	}
}
@media screen and (max-width: 768px){
	section.company_gc{
		padding: 61.54vw 0 0 0;
	}
	section.company_gc ul.gc_lists li.gc_list{
		width: 100%;
		margin-bottom: 5.13vw!important;
		margin-right: 0!important;
	}
	section.company_gc ul.gc_lists li.gc_list:last-child{
		margin-bottom: 0!important;
	}
	section.company_gc ul.gc_lists li.gc_list a,
	section.company_gc ul.gc_lists li.gc_list span{
		width: 41.03vw;
		height: calc(41.03vw * (60/200));
		margin: 0 auto;
	}
}





/**
 * section
 * company_ch
 */
section.company_ch{

}
section.company_ch .contents_bg{
	position: sticky;
	top: 0;
	height: 100vh;
	overflow: hidden;
}
section.company_ch .contents_bg .photo{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1920px;
	height: calc(1920px * (1440/1920));
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_ch.webp');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: 1.6s;
}
section.company_ch .contents_bg .photo.act{
	filter: blur(8px);
}
section.company_ch .contents_bg .photo:after{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0);
	transition: 1.6s;
}
section.company_ch .contents_bg .photo.act:after{
	background-color: rgba(255, 255, 255, 0.8);
}
section.company_ch .contents_bg svg#LineHeart01rotate90deg{
	position: absolute;
	top: 0;
	left: 320px;
	transform: translate(0, 0);
	width: calc(100vh * (78/912));
	height: 100vh;
}
section.company_ch .contents_bg svg#LineHeart01rotate90deg path{
	fill: none;
	stroke: #e6194d;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.company_ch .contents{
	padding-bottom: 240px;
}
section.company_ch .contents .h2_wrap{
	width: 200px;
}
section.company_ch .contents .h2_wrap h2.h2,
section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year,
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month p{
	position: sticky;
	top: calc(80px + 120px);/* header height */
}
section.company_ch .contents .content{
	width: calc(100% - 200px);
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dt{
	width: 240px;
	padding-right: 20px;
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd{
	width: calc(100% - 240px);
	padding-left: 20px;
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year span,
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month p span,
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts p span{
	display: block;
	font-weight: 400;
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year span,
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month p span{
	font-size: 32px;
	letter-spacing: calc(32px * 0.1);
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year span{
	color: #e6194d;
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts p span{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	line-height: calc(32px * 2);
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month{
	width: 80px;
	padding-right: 20px;
}
section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts{
	width: calc(100% - 80px);
	padding-left: 20px;
}
@media screen and (min-width: 1920px){
	section.company_ch .contents_bg .photo{
		width: 100vw;
		height: calc(100vw * (1440/1920));
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_ch.webp');
	}
	section.company_ch .contents_bg svg#LineHeart01rotate90deg{
		left: calc(((100vw - 1920px) / 2) + 320px);
	}
}
/**
 * section
 * company_ch
 * animation
 */
section.company_ch .contents_bg svg#LineHeart01rotate90deg path{
	/*transition: .8s;*/
	transition: 0s;
}
@media screen and (max-width: 768px){
	section.company_ch{

	}
	section.company_ch .contents_bg .photo{
		width: 100vw;
		height: 100vh;
		background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/imagephoto_company_ch__sp.webp');
	}
	section.company_ch .contents_bg .photo.act{
		filter: blur(2.05vw);
	}
	section.company_ch .contents_bg svg#LineHeart01rotate90deg{
		left: 5vw;
	}
	section.company_ch .contents{
		padding-bottom: 61.54vw;
	}
	section.company_ch .contents .h2_wrap{
		width: 100%;
	}
	section.company_ch .contents .h2_wrap h2.h2{
		position: relative;
		top: auto;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month p{
		top: calc(((16.41vw - (30.77vw * (30/200))) / 2) + (30.77vw * (30/200)) + 30.77vw);/* header height */
	}
	section.company_ch .contents .content{
		width: 100%;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dt{
		width: 20.51vw;
		padding-right: 3.08vw;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd{
		width: calc(100% - 20.51vw);
		padding-left: 3.08vw;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dt p.year span,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month p span{
		font-size: 5.13vw;
		letter-spacing: calc(5.13vw * 0.1);
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts p{
		margin-bottom: calc(5.13vw * 2);
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list:last-child,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list:last-child,
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts p:last-child{
		margin-bottom: 0;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: calc(5.13vw * 2);
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.month{
		width: 10.26vw;
		padding-right: 3.08vw;
	}
	section.company_ch .contents .content ul.ch_lists li.ch_list dl dd ul.event_lists li.event_list div.txts{
		width: calc(100% - 10.26vw);
		padding-left: 3.08vw;
	}
	section.company_ch .contents_bg svg#LineHeart01rotate90deg path{
		transition: 0s;
	}
}





/**
 * section
 * staff_up
 */
section.staff_up{
	padding: 240px 0 120px 0;
	background-color: #fff;
	overflow: hidden;
}
section.staff_up .contents svg{
	position: absolute;
	top: 80px;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 298px;
	height: calc(298px * (190/298));
}
section.staff_up .contents svg path{
	fill: none;
	stroke: rgba(230, 25, 77, 0.25);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.staff_up .contents svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	animation: drawAndErase 8s linear infinite;
}
section.staff_up .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
@media screen and (max-width: 768px){
	section.staff_up{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.staff_up .contents svg{
		top: 30.77vw;
		width: 76.41vw;
		height: calc(76.41vw * (190/298));
	}
	section.staff_up .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
}





/**
 * section
 * staff_sl
 */
section.staff_sl{
	padding: 120px 0;
	background-color: #fff;
	overflow: hidden;
}
section.staff_sl .contents ul.staff_lists li.staff_list{
	width: calc(200px + (80px * 2));
	padding: 0 80px 80px 80px;
}
section.staff_sl .contents ul.staff_lists li.staff_list a{
	display: block;
}
section.staff_sl .contents ul.staff_lists li.staff_list a .thm{
	width: 200px;
	height: 200px;
	overflow: hidden;
}
section.staff_sl .contents ul.staff_lists li.staff_list a .thm img{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	transition: .4s;
}
section.staff_sl .contents ul.staff_lists li.staff_list a:hover .thm img{
	transform: translate(-50%, -50%) scale(1.08);
}
section.staff_sl .contents ul.staff_lists li.staff_list a .txts h3 span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	margin-right: calc(16px * (1/2));
}
section.staff_sl .contents ul.staff_lists li.staff_list a .txts h3 span:last-child{
	margin-right: 0;
}
section.staff_sl .contents ul.staff_lists li.staff_list a .txts p.en span{
	display: block;
	font-size: 12px;
	color: #afafaf;
	font-weight: 300;
	margin-right: calc(12px * (1/2));
}
section.staff_sl .contents ul.staff_lists li.staff_list a .txts p.en span:last-child{
	margin-right: 0;
}
@media screen and (max-width: 768px){
	section.staff_sl{
		padding: 30.77vw 0;
	}
	section.staff_sl .contents ul.staff_lists li.staff_list{
		width: calc((45vw - (3.08vw * 2)) + (3.08vw * 2));
		padding: 0 3.08vw 3.08vw 3.08vw;
	}
	section.staff_sl .contents ul.staff_lists li.staff_list a .thm{
		width: calc(45vw - (3.08vw * 2));
		height: calc(45vw - (3.08vw * 2));
	}
	section.staff_sl .contents ul.staff_lists li.staff_list a .txts h3 span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		margin-right: calc(3.59vw * (1/2));
	}
	section.staff_sl .contents ul.staff_lists li.staff_list a .txts p.en span{
		font-size: 3.08vw;
		margin-right: calc(3.08vw * (1/2));
	}
}





/**
 * section
 * staff_sr
 */
section.staff_sr{
	padding: 120px 0 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.staff_sr .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.staff_sr .contents .txts{
	margin-bottom: 40px;
}
@media screen and (max-width: 768px){
	section.staff_sr{
		padding: 30.77vw 0 61.54vw 0;
	}
	section.staff_sr .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		text-align: left;
		line-height: 2.5;
	}
	section.staff_sr .contents .txts{
		margin-bottom: 10.26vw;
	}
}





/**
 * section
 * recruit_wb
 */
section.recruit_wb{
	padding: 240px 0 0 0;
	background-color: #fff;
	overflow: hidden;
}
section.recruit_wb .contents svg{
	position: absolute;
	top: 80px;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 298px;
	height: calc(298px * (190/298));
}
section.recruit_wb .contents svg path{
	fill: none;
	stroke: rgba(230, 25, 77, 0.25);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.recruit_wb .contents svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	animation: drawAndErase 8s linear infinite;
}
section.recruit_wb .contents .txts{
	margin-bottom: 40px;
}
section.recruit_wb .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.recruit_wb .contents .links ul.link_lists li.link_list{
	padding: 0 20px;
}
@media screen and (max-width: 1120px){
	section.recruit_wb .contents .links ul.link_lists li.link_list{
		padding: 0 64px;
		margin-bottom: 32px;
	}
	section.recruit_wb .contents .links ul.link_lists li.link_list:nth-child(3),
	section.recruit_wb .contents .links ul.link_lists li.link_list:nth-child(4){
		margin-bottom: 0;
	}
}
@media screen and (max-width: 768px){
	section.recruit_wb{
		padding: 61.54vw 0 0 0;
	}
	section.recruit_wb .contents svg{
		top: 30.77vw;
		width: 76.41vw;
		height: calc(76.41vw * (190/298));
	}
	section.recruit_wb .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.recruit_wb .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
	section.recruit_wb .contents .links ul.link_lists li.link_list{
		width: 100%;
		padding: 0;
		margin-bottom: 8.21vw;
	}
	section.recruit_wb .contents .links ul.link_lists li.link_list:nth-child(3){
		margin-bottom: 8.21vw;
	}
}





/**
 * section
 * service_sb
 */
section.service_sb,
section.service_wm,
section.service_is,
section.service_we,
section.service_es,
section.service_fb{
	/*background-color: #fff;*/
	background-color: rgba(255, 255, 255, .8);
	overflow: hidden;
}
section.service_sb{
	padding: 240px 0 120px 0;
}
section.service_wm,
section.service_is,
section.service_we,
section.service_es{
	padding: 120px 0;
}
section.service_fb{
	padding: 120px 0 240px 0;
}
section.service_sb .contents .txts,
section.service_wm .contents .txts,
section.service_is .contents .txts,
section.service_we .contents .txts,
section.service_es .contents .txts,
section.service_fb .contents .txts{
	margin-bottom: 40px;
}
section.service_sb .contents .txts p span,
section.service_wm .contents .txts p span,
section.service_is .contents .txts p span,
section.service_we .contents .txts p span,
section.service_es .contents .txts p span,
section.service_fb .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
	padding-right: calc(160px + 40px);
}
section.service_sb .contents .txts svg,
section.service_wm .contents .txts svg,
section.service_is .contents .txts svg,
section.service_we .contents .txts svg,
section.service_es .contents .txts svg,
section.service_fb .contents .txts svg{
	width: 160px;
	height: 160px;
	margin-right: 40px;
}
section.service_sb .contents .txts svg path,
section.service_wm .contents .txts svg path,
section.service_is .contents .txts svg path,
section.service_we .contents .txts svg path,
section.service_es .contents .txts svg path,
section.service_fb .contents .txts svg path{
	fill: none;
	stroke: #1a1a1a;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.service_sb .contents .txts svg path,
section.service_wm .contents .txts svg path,
section.service_is .contents .txts svg path,
section.service_we .contents .txts svg path,
section.service_es .contents .txts svg path,
section.service_fb .contents .txts svg path{
	animation: drawAndErase 8s linear infinite;
}
section.service_sb .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
section.service_wm .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
section.service_is .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
section.service_we .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
section.service_es .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
section.service_fb .contents .txts svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
}
@media screen and (max-width: 1120px){
	section.service_sb .contents .txts p span,
	section.service_wm .contents .txts p span,
	section.service_is .contents .txts p span,
	section.service_we .contents .txts p span,
	section.service_es .contents .txts p span,
	section.service_fb .contents .txts p span{
		padding-right: 0;
	}
	section.service_sb .contents .txts svg,
	section.service_wm .contents .txts svg,
	section.service_is .contents .txts svg,
	section.service_we .contents .txts svg,
	section.service_es .contents .txts svg,
	section.service_fb .contents .txts svg{
		margin-right: 0;
	}
	section.service_sb .contents .txts .txt,
	section.service_wm .contents .txts .txt,
	section.service_is .contents .txts .txt,
	section.service_we .contents .txts .txt,
	section.service_es .contents .txts .txt,
	section.service_fb .contents .txts .txt{
		width: 100%;
	}
}
@media screen and (max-width: 768px){
	section.service_sb{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.service_wm,
	section.service_is,
	section.service_we,
	section.service_es{
		padding: 30.77vw 0;
	}
	section.service_fb{
		padding: 30.77vw 0 61.54vw 0;
	}
	section.service_sb .contents .txts,
	section.service_wm .contents .txts,
	section.service_is .contents .txts,
	section.service_we .contents .txts,
	section.service_es .contents .txts,
	section.service_fb .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.service_sb .contents .txts p span,
	section.service_wm .contents .txts p span,
	section.service_is .contents .txts p span,
	section.service_we .contents .txts p span,
	section.service_es .contents .txts p span,
	section.service_fb .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
		text-align: left;
	}
	section.service_sb .contents .txts svg,
	section.service_wm .contents .txts svg,
	section.service_is .contents .txts svg,
	section.service_we .contents .txts svg,
	section.service_es .contents .txts svg,
	section.service_fb .contents .txts svg{
		width: 41.03vw;
		height: 41.03vw;
	}
}





/**
 * section
 * staffdetail
 */
section.staffdetail{
	padding: 120px 0 0 0;
	background-color: #fff;
}
section.staffdetail .head,
section.staffdetail .contents{
	width: 50%;
}
section.staffdetail .head .block{
	position: sticky;
	top: 120px;
	overflow: hidden;
}
section.staffdetail .head .block .thm{
	width: 240px;
	height: 240px;
}
section.staffdetail .head .block .thm svg{
	position: absolute;
	top: calc(50% - (240px * (24/240)));
	left: calc(50% - (240px * (80/240)));
	transform: translate(-50%, -50%) rotate(-30deg);
	width: calc(240px * (144/240));
	height: calc((240px * (144/240)) * (132/144));
}
section.staffdetail .head .block .thm svg path{
	fill: none;
	stroke: rgba(230, 25, 77, 1);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.staffdetail .head .block .thm svg path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	animation: drawAndErase 8s linear infinite;
}
section.staffdetail .head .block .thm img{
	display: block;
	width: 100%;
	height: 100%;
}
section.staffdetail .head .block .name{
	padding-right: 40px;
}
section.staffdetail .head .block .name h1 span{
	display: block;
	font-size: 48px;
	letter-spacing: calc(48px * 0.1);
	font-weight: 300;
	margin-right: calc(48px * (1/2));
}
section.staffdetail .head .block .name h1 span:last-child{
	margin-right: 0;
}
section.staffdetail .head .block .name p.en span{
	display: block;
	font-size: 16px;
	color: #e6194d;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	margin-right: calc(16px * (1/2));
}
section.staffdetail .head .block .name p.en span:last-child{
	margin-right: 0;
}
section.staffdetail .contents{
	padding-left: 40px;
}
section.staffdetail .contents ul.personal_lists,
section.staffdetail .contents ul.personal_lists li.personal_list,
section.staffdetail .contents ul.message_lists li.message_list{
	margin-bottom: 40px;
}
section.staffdetail .contents ul.personal_lists li.personal_list:last-child,
section.staffdetail .contents ul.message_lists li.message_list:last-child{
	margin-bottom: 0;
}
section.staffdetail .contents ul.personal_lists li.personal_list dl dt,
section.staffdetail .contents ul.message_lists li.message_list dl dt{
	margin-bottom: 12px;
}
section.staffdetail .contents ul.personal_lists li.personal_list dl dt h2 span,
section.staffdetail .contents ul.message_lists li.message_list dl dt h2 span{
	display: block;
	font-size: 16px;
	color: #e6194d;
	letter-spacing: calc(16px * 0.1);
	font-weight: 500;
}
section.staffdetail .contents ul.personal_lists li.personal_list dl dt p.en span,
section.staffdetail .contents ul.message_lists li.message_list dl dt p.en span{
	display: block;
	font-size: 14px;
	color: #afafaf;
	font-weight: 300;
}
section.staffdetail .contents ul.personal_lists li.personal_list dl dd,
section.staffdetail .contents ul.message_lists li.message_list dl dd{
	padding-left: 20px;
}
section.staffdetail .contents ul.personal_lists li.personal_list dl dd p span,
section.staffdetail .contents ul.message_lists li.message_list dl dd p span{
	display: block;
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 500;
}
@media screen and (max-width: 768px){
	section.staffdetail{
		padding: 30.77vw 0 0 0;
	}
	section.staffdetail .head{
		width: 30.77vw;
	}
	section.staffdetail .contents{
		width: calc(100% - 30.77vw);
	}
	section.staffdetail .head .block{
		top: 30.77vw;
	}
	section.staffdetail .head .block .thm{
		width: 30.77vw;
		height: 30.77vw;
	}
	section.staffdetail .head .block .thm svg{
		top: calc(50% - (30.77vw * (36/240)));
		left: calc(50% - (30.77vw * (24/240)));
		width: calc(30.77vw * (144/240));
		height: calc((30.77vw * (144/240)) * (132/144));
	}
	section.staffdetail .head .block .name{
		padding-right: 0;
	}
	section.staffdetail .head .block .name h1,
	section.staffdetail .head .block .name p.en{
		justify-content: center;
	}
	section.staffdetail .head .block .name h1 span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		font-weight: 500;
		margin-right: calc(3.59vw * (1/2));
	}
	section.staffdetail .head .block .name p.en span{
		font-size: 2.56vw;
		letter-spacing: 0;
		margin-right: calc(2.56vw * (1/2));
	}
	section.staffdetail .head .block .name p.en span:last-child{
		margin-right: 0;
	}
	section.staffdetail .contents{
		padding-left: 5.13vw;
	}
	section.staffdetail .contents ul.personal_lists,
	section.staffdetail .contents ul.personal_lists li.personal_list,
	section.staffdetail .contents ul.message_lists li.message_list{
		margin-bottom: 10.26vw;
	}
	section.staffdetail .contents ul.personal_lists li.personal_list dl dt,
	section.staffdetail .contents ul.message_lists li.message_list dl dt{
		margin-bottom: 3.08vw;
	}
	section.staffdetail .contents ul.personal_lists li.personal_list dl dt h2 span,
	section.staffdetail .contents ul.message_lists li.message_list dl dt h2 span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.staffdetail .contents ul.personal_lists li.personal_list dl dt p.en span,
	section.staffdetail .contents ul.message_lists li.message_list dl dt p.en span{
		font-size: 3.08vw;
	}
	section.staffdetail .contents ul.personal_lists li.personal_list dl dd,
	section.staffdetail .contents ul.message_lists li.message_list dl dd{
		padding-left: 0;
	}
	section.staffdetail .contents ul.personal_lists li.personal_list dl dd p span,
	section.staffdetail .contents ul.message_lists li.message_list dl dd p span{
		font-size: 3.08vw;
		letter-spacing: calc(3.08vw * 0.1);
		font-weight: 400;
	}
}





/**
 * section
 * notfound
 */
section.notfound{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.notfound ul.character_lists{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 800px;
	height: 800px;
	border-radius: 100%;
}
section.notfound ul.character_lists li.character_list{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 100%;
}
section.notfound ul.character_lists li.character_list:nth-child(1){
	width: 640px;
	height: 640px;
	animation: 24s linear infinite roll01;
	transform: translate(-50%, -50%) rotate(90deg);
}
section.notfound ul.character_lists li.character_list:nth-child(2){
	width: 480px;
	height: 480px;
	animation: 18s linear infinite roll02;
}
section.notfound ul.character_lists li.character_list:nth-child(3){
	width: 320px;
	height: 320px;
	animation: 12s linear infinite roll03;
}
section.notfound ul.character_lists li.character_list .thm{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 160px;
	height: 160px;
}
section.notfound ul.character_lists li.character_list .thm svg,
section.notfound ul.character_lists li.character_list .thm img{
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}
section.notfound ul.character_lists li.character_list .thm svg{
	width: 100%;
	height: 100%;
}
section.notfound ul.character_lists li.character_list:nth-child(1) .thm svg{
	animation: 48s linear infinite roll04;
}
section.notfound ul.character_lists li.character_list:nth-child(2) .thm svg{
	animation: 36s linear infinite roll04;
}
section.notfound ul.character_lists li.character_list:nth-child(3) .thm svg{
	animation: 24s linear infinite roll04;
}
section.notfound ul.character_lists li.character_list .thm svg path{
	fill: rgba(230, 25, 77, 0.1);
}
section.notfound ul.character_lists li.character_list .thm img{
	width: 90%;
	height: 90%;
}
section.notfound ul.character_lists li.character_list:nth-child(1) .thm img{
	animation: 48s linear infinite roll04;
}
section.notfound ul.character_lists li.character_list:nth-child(2) .thm img{
	animation: 36s linear infinite roll04;
}
section.notfound ul.character_lists li.character_list:nth-child(3) .thm img{
	animation: 24s linear infinite roll04;
}
@keyframes roll01{
	0%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(0deg + 360deg));
	}
}
@keyframes roll02{
	0%{
		transform: translate(-50%, -50%) rotate(120deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(120deg + 360deg));
	}
}
@keyframes roll03{
	0%{
		transform: translate(-50%, -50%) rotate(240deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(240deg + 360deg));
	}
}
@keyframes roll04{
	0%{
		transform: translate(-50%, 0%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, 0%) rotate(calc(0deg + 360deg));
	}
}
section.notfound h1.h1,
section.notfound .contents .txts{
	margin-bottom: 40px;
}
section.notfound .contents .txts p span{
	display: block;
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 400;
	line-height: 3;
}
@media screen and (max-width: 768px){
	section.notfound{
		padding: 61.54vw 0;
	}
	section.notfound ul.character_lists{
		width: calc(20.51vw * 10);
		height: calc(20.51vw * 10);
	}
	section.notfound ul.character_lists li.character_list:nth-child(1){
		width: calc(20.51vw * 8);
		height: calc(20.51vw * 8);
	}
	section.notfound ul.character_lists li.character_list:nth-child(2){
		width: calc(20.51vw * 6);
		height: calc(20.51vw * 6);
	}
	section.notfound ul.character_lists li.character_list:nth-child(3){
		width: calc(20.51vw * 4);
		height: calc(20.51vw * 4);
	}
	section.notfound ul.character_lists li.character_list .thm{
		width: calc(20.51vw * 2);
		height: calc(20.51vw * 2);
	}
	section.notfound h1.h1,
	section.notfound .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.notfound .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
}





/**
 * section
 * contact_tm
 */
section.contact_tm{
	padding: 240px 0 120px 0;
	background-color: #fff;
	overflow: hidden;
}
section.contact_tm .contents .character_yuki,
section.contact_tm .contents .character_heart,
section.contact_tm .contents .character_brave{
	position: absolute;
	width: 120px;
	height: 120px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
section.contact_tm .contents .character_yuki{
	top: calc(50% - 120px);
	left: calc(50% + 64px);
	transform: translate(-50%, -50%) rotate(0deg);
	transform-origin: center bottom;
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/character/yuki_typeB_half.webp');
	animation: 4s linear infinite move01;
}
section.contact_tm .contents .character_heart{
	top: calc(50% + 64px);
	left: calc(50% + 192px);
	transform: translate(-50%, -50%) rotate(15deg);
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/character/heart_typeB_half.webp');
	animation: 4s linear infinite move02;
}
section.contact_tm .contents .character_brave{
	top: calc(50% + 24px);
	left: calc(50% - 288px);
	transform: translate(-50%, -50%) rotate(-15deg);
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/character/brave_typeB_half.webp');
	animation: 4s linear infinite move03;
}
@keyframes move01{
	0%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
	25%{
		transform: translate(-50%, -50%) rotate(15deg);
	}
	50%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
	75%{
		transform: translate(-50%, -50%) rotate(-15deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
}
@keyframes move02{
	0%{
		transform: translate(-50%, -50%) rotate(15deg);
	}
	50%{
		transform: translate(-50%, calc(-50% + 12px)) rotate(30deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(15deg);
	}
}
@keyframes move03{
	0%{
		transform: translate(-50%, -50%) rotate(-15deg);
	}
	50%{
		transform: translate(-50%, calc(-50% - 12px)) rotate(-30deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(-15deg);
	}
}
section.contact_tm .contents .txts p span.txt{
	display: block;
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.contact_tm .contents .txts p span.txt.large{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
}
section.contact_tm .contents .txts p span.txt .must{
	color: #e6194d;
}
@media screen and (max-width: 768px){
	section.contact_tm{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.contact_tm .contents .character_yuki,
	section.contact_tm .contents .character_heart,
	section.contact_tm .contents .character_brave{
		width: 20.51vw;
		height: 20.51vw;
	}
	section.contact_tm .contents .character_yuki{
		top: calc(50% - (30.77vw * (96/120)));
		left: calc(50% + (30.77vw * (80/120)));
	}
	section.contact_tm .contents .character_heart{
		top: calc(50% + (30.77vw * (32/120)));
		left: calc(50% + (30.77vw * (156/120)));
	}
	section.contact_tm .contents .character_brave{
		top: calc(50% + (30.77vw * (24/120)));
		left: calc(50% - (30.77vw * (160/120)));
	}
	@keyframes move02{
		0%{
			transform: translate(-50%, -50%) rotate(15deg);
		}
		50%{
			transform: translate(-50%, calc(-50% + 3.08vw)) rotate(30deg);
		}
		100%{
			transform: translate(-50%, -50%) rotate(15deg);
		}
	}
	@keyframes move03{
		0%{
			transform: translate(-50%, -50%) rotate(-15deg);
		}
		50%{
			transform: translate(-50%, calc(-50% - 3.08vw)) rotate(-30deg);
		}
		100%{
			transform: translate(-50%, -50%) rotate(-15deg);
		}
	}
	section.contact_tm .contents .txts p span.txt{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.contact_tm .contents .txts p span.txt.large{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
}





/**
 * section
 * contact_fi
 */
section.contact_fi{
	padding: 120px 0 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.contact_fi ul.form_lists{
	width: 480px;
	margin: 0 auto 40px auto;
}
section.contact_fi ul.form_lists{
	margin-bottom: 80px;
}
section.contact_fi ul.form_lists li.form_list{
	margin-bottom: 40px;
}
section.contact_fi ul.form_lists li.form_list:nth-child{
	margin-bottom: 0;
}
section.contact_fi ul.form_lists li.form_list dl dt{
	margin-bottom: 20px;
}
section.contact_fi ul.form_lists li.form_list dl dt h2 span,
section.contact_fi ul.form_lists li.form_list dl dt p.must span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 500;
}
section.contact_fi ul.form_lists li.form_list dl dt p.must span{
	color: #e6194d;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem{
	padding-bottom: 1px;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:before,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:after{
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	height: 1px;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:before{
	width: 100%;
	background-color: #ebebeb;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:after{
	width: 40px;
	background-color: #e6194d;
	transition: .8s;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(input[type="text"]:hover):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(input[type="text"]:focus):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(input[type="text"].act):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(select:hover):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(select:focus):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(select.act):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(textarea:hover):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(textarea:focus):after,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem:has(textarea.act):after{
	width: 100%;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem input[type="text"],
section.contact_fi ul.form_lists li.form_list dl dd .inputitem select,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem textarea{
	display: block;
	width: 100%;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	padding: calc(16px * (1/2)) 0;
	outline: none;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem textarea{
	resize: none;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem input[type="text"]::placeholder,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem select,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem textarea::placeholder{
	color: #afafaf;
}
section.contact_fi ul.form_lists li.form_list dl dd .inputitem select:focus,
section.contact_fi ul.form_lists li.form_list dl dd .inputitem select.act{
	color: #1a1a1a;
}
section.contact_fi .form_btn button{
	width: 480px;
}
section.contact_fi .form_btn button span{
	display: block;
	width: 100%;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 500;
	padding: calc(16px * (1/2)) 0 calc((16px * (1/2)) + 1px) 0;
	transition: .8s;
}
section.contact_fi .form_btn button:hover span{
	color: #e6194d;
}
section.contact_fi .form_btn button.peni span{
	color: #ebebeb;
}
section.contact_fi .form_btn button span:before,
section.contact_fi .form_btn button span:after{
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	height: 1px;
}
section.contact_fi .form_btn button span:before{
	width: 100%;
	background-color: #ebebeb;
}
section.contact_fi .form_btn button span:after{
	width: 40px;
	background-color: #e6194d;
	transition: .8s;
}
section.contact_fi .form_btn button:hover span:after{
	width: 100%;
}
section.contact_fi .form_btn button.peni span:after{
	width: 0;
}
@media screen and (max-width: 768px){
	section.contact_fi{
		padding: 30.77vw 0 61.54vw 0;
	}
	section.contact_fi ul.form_lists{
		width: 100%;
		margin: 0 auto 10.26vw auto;
	}
	section.contact_fi ul.form_lists{
		margin-bottom: 20.51vw;
	}
	section.contact_fi ul.form_lists li.form_list{
		margin-bottom: 10.26vw;
	}
	section.contact_fi ul.form_lists li.form_list dl dt{
		margin-bottom: 5.13vw;
	}
	section.contact_fi ul.form_lists li.form_list dl dt h2 span,
	section.contact_fi ul.form_lists li.form_list dl dt p.must span{
		font-size: 4.1vw;
		letter-spacing: calc(4.1vw * 0.1);
	}
	section.contact_fi .form_btn button{
		width: 100%;
	}
}





/**
 * section
 * privacy_cl
 */
section.privacy_cl{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
@media screen and (max-width: 768px){
	section.privacy_cl{
		padding: 61.54vw 0;
	}
}





/**
 * section
 * recruit_cl
 */
section.recruit_cl{
	padding: 240px 0;
	/*background-color: rgba(255, 255, 255, .8);*/
	background-color: rgba(255, 255, 255, 0);
	overflow: hidden;
}
section.recruit_cl ul.txtpage_content_lists{
	margin-bottom: 80px;
}
section.recruit_cl .links p.viewmore{
	margin-bottom: 40px;
}
section.recruit_cl .links p.viewmore:last-child{
	margin-bottom: 0;
}
section.recruit_cl .no_display p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
@media screen and (max-width: 768px){
	section.recruit_cl{
		padding: 61.54vw 0;
		background-color: rgba(255, 255, 255, .8);
	}
	section.recruit_cl ul.txtpage_content_lists{
		margin-bottom: 20.51vw;
	}
	section.recruit_cl .links p.viewmore{
		margin-bottom: 10.26vw;
	}
	section.recruit_cl .no_display p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
}





/**
 * txtpage_content_lists
 */
ul.txtpage_content_lists li.txtpage_content_list{
	margin-bottom: 80px;
}
ul.txtpage_content_lists li.txtpage_content_list:last-child{
	margin-bottom: 0;
}
ul.txtpage_content_lists li.txtpage_content_list h2.h2{
	padding-bottom: 40px;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul.flex li{
	margin-right: 20px;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul.flex li:last-child{
	margin-right: 0;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul li p span{
	padding-left: 20px;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul li p span:before{
	position: absolute;
	content: '';
	top: calc((16px * 3) / 2);
	left: 0;
	transform: translateY(-50%);
	width: calc(16px * (1 / 2));
	height: calc(16px * (1 / 2));
	border-radius: 100%;
	outline: 1px solid #e6194d;
	outline-offset: -1px;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents{
	margin-top: 40px;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company{
	margin-bottom: calc(16px * (1/2));
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company p.jp{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	margin-right: calc(16px * (1/2));
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company p.en{
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 400;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address{
	margin-bottom: calc(14px * (1/2));
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address p{
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 400;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address p span.poppins{
	font-weight: 300;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p{
	margin-right: calc(14px * 2);
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p:after{
	position: absolute;
	content: '';
	top: 50%;
	right: -14px;
	transform: translate(50%, -50%) rotate(30deg);
	width: 1px;
	height: 14px;
	background-color: #afafaf;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p:last-child{
	margin-right: 0;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p:last-child:after{
	display: none;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p span,
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact p.mail{
	font-size: 14px;
	letter-spacing: calc(14px * 0.1);
	font-weight: 400;
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p span{
	color: #e6194d;
	margin-right: calc(14px * (1/2));
}
ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p span:last-child{
	color: #1a1a1a;
	margin-right: 0;
}
@media screen and (max-width: 768px){
	ul.txtpage_content_lists li.txtpage_content_list{
		margin-bottom: 20.51vw;
	}
	ul.txtpage_content_lists li.txtpage_content_list h2.h2{
		padding-bottom: 10.26vw;
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul.flex li{
		margin-right: calc(3.59vw * (20/16));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul li p span{
		padding-left: calc(3.59vw * (20/16));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .txts ul li p span:before{
		top: calc((3.59vw * (5/2)) / 2);
		width: calc(3.59vw * (1 / 2));
		height: calc(3.59vw * (1 / 2));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents{
		margin-top: 10.26vw;
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company{
		margin-bottom: calc(3.59vw * (1/2));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company p.jp{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		margin-right: calc(3.59vw * (1/2));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .company p.en{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address{
		margin-bottom: calc(3.59vw * (1/2));
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address p,
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .address p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p{
		margin-right: calc(3.59vw * 2);
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p:after{
		right: -3.59vw;
		height: 3.59vw;
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p span,
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact p.mail{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	ul.txtpage_content_lists li.txtpage_content_list .contents .contact_contents .contact .number p span{
		margin-right: calc(3.59vw * (1/2));
	}
}





/**
 * section
 * servicedetail
 */
section.servicedetail{
	padding: 240px 0 120px 0;
	background-color: rgba(255, 255, 255, .8);
	overflow: hidden;
}
section.servicedetail svg#LineHeart01{
	position: absolute;
	top: calc(50% + 40px);
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1904px;
	height: calc(1904px * (160/1904));
}
section.servicedetail svg#LineHeart01 path{
	fill: none;
	stroke: #e6194d;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.servicedetail svg#LineHeart01 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	animation: drawAndErase 8s linear infinite;
}
section.servicedetail .head .thm{
	display: block;
	width: 160px;
	height: 160px;
}
section.servicedetail .head .thm svg{
	width: 100%;
	height: 100%;
}
section.servicedetail .head .thm svg path{
	fill: none;
	stroke: #1a1a1a;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
section.servicedetail .head .name h1 span{
	display: block;
	font-size: 48px;
	letter-spacing: calc(48px * 0.1);
	font-weight: 300;
	margin-right: calc(48px * (1/2));
}
section.servicedetail .head .name h1 span:last-child{
	margin-right: 0;
}
section.servicedetail .head .name p.en span{
	display: block;
	font-size: 16px;
	color: #e6194d;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	margin-right: calc(16px * (1/2));
}
section.servicedetail .head .name p.en span:last-child{
	margin-right: 0;
}
@media screen and (max-width: 768px){
	section.servicedetail{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.servicedetail svg#LineHeart01{
		top: calc(50% + 24.62vw);
		width: 100vw;
		height: calc(100vw * (160/1904));
	}
	section.servicedetail .head .thm{
		width: 41.03vw;
		height: 41.03vw;
	}
	section.servicedetail .head .name h1 span{
		font-size: 6.15vw;
		letter-spacing: calc(6.15vw * 0.1);
		font-weight: 400;
		margin-right: calc(6.15vw * (1/2));
	}
	section.servicedetail .head .name p.en span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		margin-right: calc(3.59vw * (1/2));
	}
}





/**
 * section
 * servicedetail_cl
 */
section.servicedetail_cl{
	padding: 40px 0 120px 0;
	background-color: rgba(255, 255, 255, .8);
	overflow: hidden;
}
section.servicedetail_cl .contents .txts{
	margin-bottom: 80px;
}
section.servicedetail_cl .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
}
section.servicedetail_cl .contents ul.content_lists li.content_list{
	margin-bottom: 80px;
}
section.servicedetail_cl .contents ul.content_lists li.content_list:last-child{
	margin-bottom: 0;
}
section.servicedetail_cl .contents ul.content_lists li.content_list h2.h2{
	padding-bottom: 40px;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .txt p span,
section.servicedetail_cl .contents ul.content_lists li.content_list .txt p a{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p span,
section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p a{
	padding-left: 20px;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p span:before,
section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p a:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: calc(16px * (1 / 2));
	height: calc(16px * (1 / 2));
	border-radius: 100%;
	outline: 1px solid #e6194d;
	outline-offset: -1px;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links{
	margin-top: 20px;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo{
	display: block;
	margin: 20px auto 0 auto;
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__mogumogufarm{
	width: calc(162px * 2);
	height: calc((162px * (38/162)) * 2);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__egg{
	width: calc(200px * 2);
	height: calc((200px * (32/200)) * 2);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__novae{
	width: calc(186px * 1);
	height: calc((186px * (34/186)) * 1);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__jimjamie{
	width: calc(84px * 1);
	height: calc((84px * (74/84)) * 1);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__theflwrs{
	width: calc(184px * 1);
	height: calc((184px * (34/184)) * 1);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__bistroaoi{
	width: calc(166px * 1);
	height: calc((166px * (38/166)) * 1);
}
section.servicedetail_cl .contents ul.content_lists li.content_list .logo img{
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px){
	section.servicedetail_cl{
		padding: 10.26vw 0 30.77vw 0;
	}
	section.servicedetail_cl .contents .txts{
		margin-bottom: 20.51vw;
	}
	section.servicedetail_cl .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
		text-align: left;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list{
		margin-bottom: 20.51vw;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list h2.h2{
		padding-bottom: 10.26vw;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt p span,
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt p a{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		text-align: left;
		line-height: 2.5;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p span,
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p a{
		padding-left: 5.13vw;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p span:before,
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links ul li p a:before{
		width: calc(3.59vw * (1 / 2));
		height: calc(3.59vw * (1 / 2));
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .txt .links{
		justify-content: flex-start;
		margin-top: 5.13vw;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo{
		margin: 5.13vw auto 0 auto;
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__mogumogufarm{
		width: calc(41.54vw * 1);
		height: calc((41.54vw * (38/162)) * 1);
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__egg{
		width: calc((41.54vw * (200/162)) * 1);
		height: calc(((41.54vw * (200/162)) * (32/200)) * 1);
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__novae{
		width: calc((41.54vw * (186/162)) * (1/2));
		height: calc(((41.54vw * (186/162)) * (34/186)) * (1/2));
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__jimjamie{
		width: calc((41.54vw * (84/162)) * (1/2));
		height: calc(((41.54vw * (84/162)) * (74/84)) * (1/2));
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__theflwrs{
		width: calc((41.54vw * (184/162)) * (1/2));
		height: calc(((41.54vw * (184/162)) * (34/184)) * (1/2));
	}
	section.servicedetail_cl .contents ul.content_lists li.content_list .logo.logo__bistroaoi{
		width: calc((41.54vw * (166/162)) * (1/2));
		height: calc(((41.54vw * (166/162)) * (38/166)) * (1/2));
	}
}





/**
 * bg_character
 */
.bg_character{
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -150%);
	width: 100vw;
	height: 100vh;
	transition: 1.6s;
	overflow: hidden;
}
.bg_character.act{
	transform: translate(-50%, -50%);
}
.bg_character ul.character_lists{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 800px;
	height: 800px;
	border-radius: 100%;
}
.bg_character ul.character_lists li.character_list{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 100%;
}
.bg_character ul.character_lists li.character_list:nth-child(1){
	width: 640px;
	height: 640px;
	animation: 24s linear infinite roll01;
	transform: translate(-50%, -50%) rotate(90deg);
}
.bg_character ul.character_lists li.character_list:nth-child(2){
	width: 480px;
	height: 480px;
	animation: 18s linear infinite roll02;
}
.bg_character ul.character_lists li.character_list:nth-child(3){
	width: 320px;
	height: 320px;
	animation: 12s linear infinite roll03;
}
.bg_character ul.character_lists li.character_list .thm{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 160px;
	height: 160px;
}
.bg_character ul.character_lists li.character_list .thm svg,
.bg_character ul.character_lists li.character_list .thm img{
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}
.bg_character ul.character_lists li.character_list .thm svg{
	width: 100%;
	height: 100%;
}
.bg_character ul.character_lists li.character_list:nth-child(1) .thm svg{
	animation: 48s linear infinite roll04;
}
.bg_character ul.character_lists li.character_list:nth-child(2) .thm svg{
	animation: 36s linear infinite roll04;
}
.bg_character ul.character_lists li.character_list:nth-child(3) .thm svg{
	animation: 24s linear infinite roll04;
}
.bg_character ul.character_lists li.character_list .thm svg path{
	fill: rgba(230, 25, 77, 0.25);
}
.bg_character ul.character_lists li.character_list .thm img{
	width: 90%;
	height: 90%;
}
.bg_character ul.character_lists li.character_list:nth-child(1) .thm img{
	animation: 48s linear infinite roll04;
}
.bg_character ul.character_lists li.character_list:nth-child(2) .thm img{
	animation: 36s linear infinite roll04;
}
.bg_character ul.character_lists li.character_list:nth-child(3) .thm img{
	animation: 24s linear infinite roll04;
}
@media screen and (max-width: 768px){
	.bg_character ul.character_lists{
		width: calc(20.51vw * 10);
		height: calc(20.51vw * 10);
	}
	.bg_character ul.character_lists li.character_list:nth-child(1){
		width: calc(20.51vw * 8);
		height: calc(20.51vw * 8);
	}
	.bg_character ul.character_lists li.character_list:nth-child(2){
		width: calc(20.51vw * 6);
		height: calc(20.51vw * 6);
	}
	.bg_character ul.character_lists li.character_list:nth-child(3){
		width: calc(20.51vw * 4);
		height: calc(20.51vw * 4);
	}
	.bg_character ul.character_lists li.character_list .thm{
		width: calc(20.51vw * 2);
		height: calc(20.51vw * 2);
	}
	.bg_character h1.h1,
	.bg_character .contents .txts{
		margin-bottom: 10.26vw;
	}
	.bg_character .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
}





.service_contents_bg{
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -150%);
	width: 100vw;
	height: 100vh;
	transition: 1.6s;
	opacity: 0;
	overflow: hidden;
}
.service_contents_bg.act{
	transform: translate(-50%, -50%);
	opacity: 1;
}
.service_contents_bg .orbit{
	position: absolute;
	bottom: 80px;
	left: 50%;
	transform: translate(-50%, 50%);
	width: calc(80px * 9);
	height: calc(80px * 9);
	border-radius: 100%;
	animation: 24s linear infinite rotation01;
}
.service_contents_bg .orbit svg#LineSun{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(80px * (70/80));
	height: calc(80px * (70/80));
	animation: 12s linear infinite rotation02;
}
.service_contents_bg .orbit svg#LineMoon{
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 50%);
	width: calc(80px * (70/80));
	height: calc(80px * (70/80));
	animation: 12s linear infinite rotation03;
}
.service_contents_bg svg#LineCity{
	position: absolute;
	bottom: 80px;
	left: 50%;
	transform: translate(-50%, 0);
	width: calc(80px * (1316/80));
	height: calc((80px * (1316/80)) * (200 / 1316));
}
.service_contents_bg svg#LineCityItem01,
.service_contents_bg svg#LineCityItem02,
.service_contents_bg svg#LineCityItem03,
.service_contents_bg svg#LineCityItem04,
.service_contents_bg svg#LineCityItem05,
.service_contents_bg svg#LineCityItem06{
	position: absolute;
	transform: translate(-50%, 0);
}
.service_contents_bg svg#LineCityItem01{
	bottom: calc(80px * (1/3));
	left: calc(50% - (80px * 3));
	width: calc((80px * (1/2)) * (48/40));
	height: calc(((80px * (1/2)) * (48/40)) * (60/48));
}
.service_contents_bg svg#LineCityItem02{
	bottom: calc(80px * (2/3));
	left: calc(50% - (80px * 2));
	width: calc((80px * (1/2)) * (58/40));
	height: calc(((80px * (1/2)) * (58/40)) * (74/58));
}
.service_contents_bg svg#LineCityItem03{
	bottom: calc(80px * (1/3));
	left: calc(50% - (80px * 1));
	width: calc((80px * (1/2)) * (32/40));
	height: calc(((80px * (1/2)) * (32/40)) * (48/32));
}
.service_contents_bg svg#LineCityItem04{
	bottom: calc(80px * (2/3));
	left: calc(50% - (80px * (2/3)));
	width: calc((80px * (1/2)) * (24/40));
	height: calc(((80px * (1/2)) * (24/40)) * (38/24));
}
.service_contents_bg svg#LineCityItem05{
	bottom: calc(80px * (1/3));
	left: calc(50% + (80px * 2));
	width: calc((80px * (1/2)) * (60/40));
	height: calc(((80px * (1/2)) * (60/40)) * (68/60));
}
.service_contents_bg svg#LineCityItem06{
	bottom: calc(80px * (1/4));
	left: calc(50% + (80px * 3));
	width: calc((80px * (1/2)) * (28/40));
	height: calc(((80px * (1/2)) * (28/40)) * (64/28));
}
.service_contents_bg svg#LineCity path,
.service_contents_bg svg#LineSun path,
.service_contents_bg svg#LineMoon path{
	fill: none;
	stroke: #e6194d;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
.service_contents_bg svg#LineCityItem01 path,
.service_contents_bg svg#LineCityItem02 path,
.service_contents_bg svg#LineCityItem03 path,
.service_contents_bg svg#LineCityItem04 path,
.service_contents_bg svg#LineCityItem05 path,
.service_contents_bg svg#LineCityItem06 polyline{
	fill: none;
	stroke: #e6194d;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1px;
}
.service_contents_bg.act svg#LineCityItem01 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 8s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem02 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 11s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem03 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 5s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem04 path{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 4s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem05 path.st01{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 6s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem05 path.st02{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 6s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem05 path.st03{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 6s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem06 polyline.st01{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 8s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
.service_contents_bg.act svg#LineCityItem06 polyline.st02{
	stroke-dasharray: var(--path-length);
	stroke-dashoffset: var(--path-length);
	/*animation: drawAndErase 8s linear infinite;*/
	animation: drawAndErase 12s linear infinite;
}
@keyframes rotation01{
	0%{
		transform: translate(-50%, 50%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, 50%) rotate(calc(0deg - 360deg));
	}
}
@keyframes rotation02{
	0%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(0deg + 360deg));
	}
}
@keyframes rotation03{
	0%{
		transform: translate(-50%, 50%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, 50%) rotate(calc(0deg + 360deg));
	}
}
@media screen and (max-width: 768px){
	.service_contents_bg .orbit{
		bottom: 10.26vw;
		width: calc(10.26vw * 9);
		height: calc(10.26vw * 9);
	}
	.service_contents_bg .orbit svg#LineSun{
		width: calc(10.26vw * (70/80));
		height: calc(10.26vw * (70/80));
	}
	.service_contents_bg .orbit svg#LineMoon{
		width: calc(10.26vw * (70/80));
		height: calc(10.26vw * (70/80));
	}
	.service_contents_bg svg#LineCity{
		bottom: 10.26vw;
		width: calc(10.26vw * (1316/80));
		height: calc((10.26vw * (1316/80)) * (200 / 1316));
	}
	.service_contents_bg svg#LineCityItem01{
		bottom: calc(10.26vw * (1/3));
		left: calc(50% - (10.26vw * 3));
		width: calc((10.26vw * (1/2)) * (48/40));
		height: calc(((10.26vw * (1/2)) * (48/40)) * (60/48));
	}
	.service_contents_bg svg#LineCityItem02{
		bottom: calc(10.26vw * (2/3));
		left: calc(50% - (10.26vw * 2));
		width: calc((10.26vw * (1/2)) * (58/40));
		height: calc(((10.26vw * (1/2)) * (58/40)) * (74/58));
	}
	.service_contents_bg svg#LineCityItem03{
		bottom: calc(10.26vw * (1/3));
		left: calc(50% - (10.26vw * 1));
		width: calc((10.26vw * (1/2)) * (32/40));
		height: calc(((10.26vw * (1/2)) * (32/40)) * (48/32));
	}
	.service_contents_bg svg#LineCityItem04{
		bottom: calc(10.26vw * (2/3));
		left: calc(50% - (10.26vw * (2/3)));
		width: calc((10.26vw * (1/2)) * (24/40));
		height: calc(((10.26vw * (1/2)) * (24/40)) * (38/24));
	}
	.service_contents_bg svg#LineCityItem05{
		bottom: calc(10.26vw * (1/3));
		left: calc(50% + (10.26vw * 2));
		width: calc((10.26vw * (1/2)) * (60/40));
		height: calc(((10.26vw * (1/2)) * (60/40)) * (68/60));
	}
	.service_contents_bg svg#LineCityItem06{
		bottom: calc(10.26vw * (1/4));
		left: calc(50% + (10.26vw * 3));
		width: calc((10.26vw * (1/2)) * (28/40));
		height: calc(((10.26vw * (1/2)) * (28/40)) * (64/28));
	}
}





/**
 * bg_illustration
 */
.bg_illustration{
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -150%);
	width: 100vw;
	height: 100vh;
	transition: 1.6s;
	opacity: 0;
	overflow: hidden;
}
.bg_illustration.act{
	transform: translate(-50%, -50%);
	opacity: 1;
}
.bg_illustration ul{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}
.bg_illustration ul li{
	position: absolute;
	top: 50%;
	left: 50%;
	border-radius: 100%;
}
.bg_illustration ul li:nth-child(1){
	transform: translate(-50%, -50%) rotate(240deg);
	width: calc(160px * 6);
	height: calc(160px * 6);
	animation: 24s linear infinite rotate01;
}
.bg_illustration ul li:nth-child(2){
	transform: translate(-50%, -50%) rotate(90deg);
	width: calc(160px * 5);
	height: calc(160px * 5);
	animation: 21s linear infinite rotate02;
}
.bg_illustration ul li:nth-child(3){
	transform: translate(-50%, -50%) rotate(300deg);
	width: calc(160px * 4);
	height: calc(160px * 4);
	animation: 18s linear infinite rotate03;
}
.bg_illustration ul li:nth-child(4){
	transform: translate(-50%, -50%) rotate(150deg);
	width: calc(160px * 3);
	height: calc(160px * 3);
	animation: 15s linear infinite rotate04;
}
.bg_illustration ul li:nth-child(5){
	transform: translate(-50%, -50%);
	width: calc(160px * 2);
	height: calc(160px * 2);
	animation: 12s linear infinite rotate05;
}
.bg_illustration ul li .thm{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 160px;
	height: 160px;
}
.bg_illustration ul li:nth-child(1) .thm{
	transform: translate(-50%, -50%) rotate(240deg);
	animation: 21s linear infinite rotate01;
}
.bg_illustration ul li:nth-child(2) .thm{
	transform: translate(-50%, -50%) rotate(90deg);
	animation: 18s linear infinite rotate02;
}
.bg_illustration ul li:nth-child(3) .thm{
	transform: translate(-50%, -50%) rotate(300deg);
	animation: 15s linear infinite rotate03;
}
.bg_illustration ul li:nth-child(4) .thm{
	transform: translate(-50%, -50%) rotate(150deg);
	animation: 12s linear infinite rotate04;
}
.bg_illustration ul li:nth-child(5) .thm{
	transform: translate(-50%, -50%);
	animation: 9s linear infinite rotate05;
}
.bg_illustration ul li .thm .illustration{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.bg_illustration ul li .thm .illustration{
	opacity: 0;
	animation: opacity 9s linear 0s infinite;
}
.bg_illustration ul li .thm .illustration:nth-child(1){
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}
.bg_illustration ul li .thm .illustration:nth-child(2){
	-webkit-animation-delay: 3s;
	animation-delay: 3s;
}
.bg_illustration ul li .thm .illustration:nth-child(3){
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
}
.bg_illustration ul li:nth-child(1) .thm .illustration{
	transform: translate(-50%, -50%) rotate(240deg);
}
.bg_illustration ul li:nth-child(2) .thm .illustration{
	transform: translate(-50%, -50%) rotate(90deg);
}
.bg_illustration ul li:nth-child(3) .thm .illustration{
	transform: translate(-50%, -50%) rotate(300deg);
}
.bg_illustration ul li:nth-child(4) .thm .illustration{
	transform: translate(-50%, -50%) rotate(150deg);
}
.bg_illustration ul li:nth-child(5) .thm .illustration{
	transform: translate(-50%, -50%);
}
.bg_illustration ul li:nth-child(1) .thm .illustration:nth-child(1){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KouheiYamasaki_320.webp');
}
.bg_illustration ul li:nth-child(1) .thm .illustration:nth-child(2){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KoyukiTsunoda_320.webp');
}
.bg_illustration ul li:nth-child(1) .thm .illustration:nth-child(3){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/RyoHirukawa_320.webp');
}
.bg_illustration ul li:nth-child(2) .thm .illustration:nth-child(1){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/RyoShimoyama_320.webp');
}
.bg_illustration ul li:nth-child(2) .thm .illustration:nth-child(2){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KotokoOmura_320.webp');
}
.bg_illustration ul li:nth-child(2) .thm .illustration:nth-child(3){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/AtsushiNohara_320.webp');
}
.bg_illustration ul li:nth-child(3) .thm .illustration:nth-child(1){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/YukiKomaki_320.webp');
}
.bg_illustration ul li:nth-child(3) .thm .illustration:nth-child(2){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KoukiMoriyama_320.webp');
}
.bg_illustration ul li:nth-child(3) .thm .illustration:nth-child(3){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/RikuKato_320.webp');
}
.bg_illustration ul li:nth-child(4) .thm .illustration:nth-child(1){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/NatsumiKawajiri_320.webp');
}
.bg_illustration ul li:nth-child(4) .thm .illustration:nth-child(2){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/TomokoKawase_320.webp');
}
.bg_illustration ul li:nth-child(4) .thm .illustration:nth-child(3){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/NatsukoKomori_320.webp');
}
.bg_illustration ul li:nth-child(5) .thm .illustration:nth-child(1){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KirariMatsuyama_320.webp');
}
.bg_illustration ul li:nth-child(5) .thm .illustration:nth-child(2){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/KeisukeShinohara_320.webp');
}
.bg_illustration ul li:nth-child(5) .thm .illustration:nth-child(3){
	background-image: url('https://bra-ve.co.jp/dev/wp-content/themes/twentytwentyone/images/staff/MokaKamikura_320.webp');
}
@keyframes opacity{
	0%{
		opacity: 0;
	}
	10%{
		opacity: 1;
	}
	40%{
		opacity: 1;
	}
	50%{
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}
@keyframes rotate01{
	0%{
		transform: translate(-50%, -50%) rotate(240deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(240deg + 360deg));
	}
}
@keyframes rotate02{
	0%{
		transform: translate(-50%, -50%) rotate(90deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(90deg + 360deg));
	}
}
@keyframes rotate03{
	0%{
		transform: translate(-50%, -50%) rotate(300deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(300deg + 360deg));
	}
}
@keyframes rotate04{
	0%{
		transform: translate(-50%, -50%) rotate(150deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(150deg + 360deg));
	}
}
@keyframes rotate05{
	0%{
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100%{
		transform: translate(-50%, -50%) rotate(calc(0deg + 360deg));
	}
}
@media screen and (max-width: 768px){
	.bg_illustration ul li:nth-child(1){
		width: calc(20.51vw * 6);
		height: calc(20.51vw * 6);
	}
	.bg_illustration ul li:nth-child(2){
		width: calc(20.51vw * 5);
		height: calc(20.51vw * 5);
	}
	.bg_illustration ul li:nth-child(3){
		width: calc(20.51vw * 4);
		height: calc(20.51vw * 4);
	}
	.bg_illustration ul li:nth-child(4){
		width: calc(20.51vw * 3);
		height: calc(20.51vw * 3);
	}
	.bg_illustration ul li:nth-child(5){
		width: calc(20.51vw * 2);
		height: calc(20.51vw * 2);
	}
	.bg_illustration ul li .thm{
		width: 20.51vw;
		height: 20.51vw;
	}
}





/**
 * section
 * news_dt
 */
section.news_dt{
	padding: 240px 0;
	background-color: #fff;
	overflow: hidden;
}
section.news_dt .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.news_dt .contents .txts p a{
	color: #00C2FF;
}
@media screen and (max-width: 768px){
	section.news_dt{
		padding: 61.54vw 0;
	}
	section.news_dt .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
}





/**
 * section
 * renewal
 */
section.renewal{
	padding: 240px 0 120px 0;
	background-color: #fff;
	overflow: hidden;
}
section.renewal .contents .txts{
	margin-bottom: 40px;
}
section.renewal .contents .txts h1{
	margin-bottom: 20px;
}
section.renewal .contents .txts h1 span{
	display: block;
	font-size: 40px;
	color: #e6194d;
	letter-spacing: calc(40px * 0.1);
	font-weight: 300;
	line-height: 2;
}
section.renewal .contents .txts p span{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
	line-height: 3;
}
section.renewal .contents .contact p span.contact_tel{
	display: block;
	font-size: 24px;
	font-weight: 400;
}
section.renewal .contents .contact p span.contact_txt{
	display: block;
	font-size: 12px;
	letter-spacing: calc(12px * 0.1);
	font-weight: 400;
}
section.renewal .contents .contact p span.contact_txt span.poppins{
	letter-spacing: 0;
	font-weight: 400;
}
@media screen and (max-width: 768px){
	section.renewal{
		padding: 61.54vw 0 30.77vw 0;
	}
	section.renewal .contents .txts{
		margin-bottom: 10.26vw;
	}
	section.renewal .contents .txts h1{
		margin-bottom: 5.13vw;
	}
	section.renewal .contents .txts h1 span{
		font-size: 7.18vw;
		letter-spacing: calc(7.18vw * 0.1);
	}
	section.renewal .contents .txts p span{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
		line-height: 2.5;
	}
	section.renewal .contents .contact p span.contact_tel{
		font-size: 6.15vw;
	}
	section.renewal .contents .contact p span.contact_txt{
		font-size: 3.08vw;
		letter-spacing: calc(3.08vw * 0.1);
	}
}





/**
 * section
 * confirm_fi
 */
section.contact_fi.confirm_fi ul.form_lists li.form_list dl dd .inputitem{
	display: block;
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 400;
}
section.contact_fi.confirm_fi .formback{
	margin-top: 40px;
}
section.contact_fi.confirm_fi .formback button.formbackbtn,
section.contact_fi.confirm_fi .formback button.formbackbtn span{
	display: block;
}
section.contact_fi.confirm_fi .formback button.formbackbtn span{
	font-size: 16px;
	letter-spacing: calc(16px * 0.1);
	font-weight: 500;
}
@media screen and (max-width: 768px){
	section.contact_fi.confirm_fi ul.form_lists li.form_list dl dd .inputitem{
		font-size: 3.59vw;
		letter-spacing: calc(3.59vw * 0.1);
	}
	section.contact_fi.confirm_fi .formback{
		margin-top: 10.26vw;
	}
	section.contact_fi.confirm_fi .formback button.formbackbtn span{

	}
}





/**
 * section
 * confirm_fi
 */
section.contact_tm.contact_thanks{
	padding: 240px 0;
}
section.contact_tm.contact_thanks .contents{
	margin-bottom: 40px;
}
@media screen and (max-width: 768px){
	section.contact_tm.contact_thanks{
		padding: 61.54vw 0;
	}
	section.contact_tm.contact_thanks .contents{
		margin-bottom: 10.26vw;
	}
}