@charset "utf-8";
/*固定ページ共通指定*/
.fvContent .inner{
	padding: 160px 0 60px;
}
#consulting .fvContent .inner{
	padding: 160px 0 100px;
}
.fvContent h2{
	font-size: 28px;
	text-align: left;
}
.fvContent p{
	font-size: 10px;
}
@media screen and (max-width: 420px) {
	#consulting .fvContent .inner{ padding: 160px 0 70px;}
}
/*==================================================================================================*/
/*company*/
#company .wrap01 .inner{
	max-width: 700px;
}
#company .wrap01 h2{
	font-size: 21px;
	text-align: left;
	padding: 10px 0;
	border-bottom: solid 1px #E6E6E6;
	margin: 0 0 20px;
}
/*-----------------------------------------------*/
#company .wrap02{
	padding: 40px 0;
}
#company .wrap02 .inner{
	max-width: 800px;
	background: #FFF;
	padding: 30px 40px;
	align-items: flex-start;
}
#company .wrap02 h2{
	width: 20%;
	font-size: 28px;
	text-align: left;
	line-height: 0.8;
    position: relative;
    top: 13px;
}
#company .wrap02 h2 span{
	font-size: 10px;
}
#company .wrap02 p{
	width: 75%;
	font-size: 12px;
}
/*-----------------------------------------------*/
#company .wrap03 .inner{
	max-width: 700px;
}
#company .wrap03 dl{
	align-items: flex-start;
	border-bottom: solid 1px #E6E6E6;
	padding: 20px 0;
}
#company .wrap03 dt{
	width: 20%;
	font-size: 11px;
	letter-spacing: 0.3em;
	color: #999999;
}
#company .wrap03 dd{
	width: 80%;
	font-size: 14px;
	letter-spacing: 0.3em;
}
@media screen and (max-width: 1000px) {
	#company .wrap02 h2{ width: 25%;}
	#company .wrap02 p{ width: 70%; }
}
@media screen and (max-width: 768px) {
	#company .wrap02 .inner{ padding: 40px;}
	#company .wrap02 h2{ 
		width: 100%;
		top: 0;
		margin: 0 0 15px;
	}
	#company .wrap02 p{ width: 100%; }
}
@media screen and (max-width: 420px) {
	#company .wrap02 h2{ margin: 0 0 30px;}
	#company .wrap03 dd{ width: 78%;}
}
/*会社概要の所のずれ*/
/*==================================================================================================*/
/*news*/
#news .news ul{
	max-width: 670px;
	padding: 0;
}
#news .news ul li a{
	padding: 25px 0;
}
.news ul li a::before,.news ul li a::after{
	height: 35px;
}
.pager{
	justify-content: center;
	margin: 0 auto 100px;
}
.pager li{
	width: fit-content;
	margin: 0 5px 0 0;
}
.pager li:last-child{
	margin: 0;
}
.pager li a{
	width: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: var(--main-color);
	background: #FFF;
	border: solid 1px var(--main-color);
	padding: 8px;
}
.pager li.check a{
	color: #FFF;
	background: var(--main-color);
}
.pager li.kara a{
	width: 18px;
	padding: 0;
	border: none;
}
/*==================================================================================================*/
/*consulting*/
#consulting .bggray:nth-child(4),#consulting .bggray:nth-child(6){
	width: calc( 100% - 40px);
	margin: 0 auto;
}
#consulting .wrap h2{
	width: fit-content;
	font-size: 20px;
	position: relative;
	margin: 0 auto;
	z-index: 0;
}
#consulting .wrap h2::before{
	display: block;
	content: "";
	width: 65px;
	height: 65px;
	background: center / contain no-repeat url("../img/n01.svg");	
	position: absolute;
	top: 50%;
    left: -45px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	z-index: -1;
}
#consulting .wrap02 h2::before{ background: center / contain no-repeat url("../img/n02.svg");}
#consulting .wrap03 h2::before{ background: center / contain no-repeat url("../img/n03.svg");}
#consulting .wrap04 h2::before{ background: center / contain no-repeat url("../img/n04.svg");}
#consulting .wrap05 h2::before{ background: center / contain no-repeat url("../img/n05.svg");}
#consulting .wrap06 h2::before{ background: center / contain no-repeat url("../img/n06.svg");}

#consulting .wrap p.text{
	text-align: center;
	line-height: 1.5;
	margin: 0 0 40px;
}
@media screen and (max-width: 420px) {
	#consulting .wrap h2{ margin: 0 auto 10px;}
}
/*-----------------------------------------------wrap00*/
#consulting .wrap00{
	display: block;
	content: "";
	width: calc( 100% - 60px );
	height: 360px;
	background: center / cover no-repeat url("../img/consulting-bg.jpg");
	position: relative;
	margin: 0 auto -90px;
}
@media screen and (max-width: 768px) {
	#consulting .wrap00{ height: 270px;}
}
@media screen and (max-width: 420px) {
	#consulting .wrap00{ width: 100%; height: 160px; margin: 0 auto;}
}
/*-----------------------------------------------wrap01*/
#consulting .wrap01{
	width: calc( 100% - 60px );
	background: #FFF;
	margin: 0 0 0 auto;
}
#consulting .wrap01 .inner{
	max-width: 750px;
	position: relative;
	right: 30px;
}
#consulting .wrap01 h2{
	margin: 0 auto 50px
}
#consulting .wrap01 dl{
	width: 42%;
	border: solid 1px #E6E6E6;
	border-radius: 7px;
	position: relative;
}
/*yajirushi*/
#consulting .wrap01 span{
	display: block;
	width: 10%;
}
/*原因/結果*//*
#consulting .wrap01 dl div{
	width: auto;
	padding: 13px;
	background: center / contain no-repeat url("../img/bg-blue.svg");
	position: absolute;
	top: -25px;
	right: -10px;
}
#consulting .wrap01 dl:last-child div{
	background: center / contain no-repeat url("../img/bg-orange.svg");
}
#consulting .wrap01 dl div p{
	font-size: 14px;
	color: #FFF;
}
/*事業分析/財務分析*/
#consulting .wrap01 dt,#consulting .wrap04 dt{
	width: 100%;
	font-size: 16px;
	letter-spacing: 0.15em;
	text-align: center;
	color: #FFF;
	border-radius: 7px 7px 0 0;
	background: var(--sub-color);
	padding: 5px;
}
#consulting .wrap01 dd{
	height: 176px;
	padding: 10px 30px;
}
#consulting .wrap01 dl dd p{
	font-size: 16px;
	border-bottom: solid 1px #E6E6E6;
	padding: 0 0 0 10px;
}
#consulting .wrap01 dl dd p::before{
	display: inline-block;
	content: "";
	width: 30px;
	height: 30px;
	background: center / contain no-repeat url("../img/con01-icon01.svg");	
	position: relative;
    top: 8px;
    left: -10px;
}
#consulting .wrap01 dl:last-child dd p::before{
	background: center / contain no-repeat url("../img/con01-icon02.svg");	
}
/*リストの記述*/
#consulting .wrap01 ul.listDot{
	padding: 15px 0;
}
ul.listDot li{
	font-size: 15px;
	letter-spacing: 0.15em;
	display: grid;
	grid-template-columns: 4px 1fr;
	grid-gap: 5px;
	align-items: flex-start;
}
ul.listDot li::before{
	display: block;
	content: "";
	width: 4px;
	height: 4px;
	background: var(--sub-color);
	margin: 0.8em 5px 0 0;
	
}
#consulting .wrap01 ul.listDot li{ width: 50%;}
#consulting .wrap01 dl:first-child ul.listDot li:nth-child(even){ width: 60%;}
#consulting .wrap01 dl:first-child ul.listDot li:nth-child(odd){ width: 40%;}

#consulting .wrap01 div:nth-child(2){
	margin: 0 0 30px;
}
ul.listLine{
	max-width: 600px;
	margin: 0 auto;
}
ul.listLine li{
	font-size: 16px;
	letter-spacing: 0.15em;
	position: relative;
	display: flex;
}
ul.listLine li p{
	font-size: 16px;
	letter-spacing: 0.15em;
	line-height: 1.5;
}
ul.listLine li::before{
	display: block;
	content: "";
	width: 7px;
	height: 1px;
	background: var(--sub-color);
	margin: 0 5px 0 0;
	position: relative;
    top: 13px;
}
@media screen and (max-width: 830px) {
	#consulting .wrap01 dl{ width: 45%;}
	#consulting .wrap01 dd{ 
		height: 175px;
		padding: 10px 25px;
	}
	ul.listDot li{ width: 100%;}
	#consulting .wrap01 span{ width: 9%;}
}
@media screen and (max-width: 767px) {
	#consulting .wrap01 div:nth-child(2){
		display: block;
	}
	#consulting .wrap01 dl{ 
		max-width: 350px;
		width: 100%;
		margin: 0 auto;
	}
	#consulting .wrap01 dl:first-child{ margin: 0 auto 50px;}
	#consulting .wrap01 dd{ height: auto;}
	ul.listDot li{ width: 50%; font-size: 12px;}
	#consulting .wrap01 span{ 
		width: 15%;
		transform: rotate(90deg);
		margin: 0 auto;
		position: relative;
		top: -25px;
		padding: 0 10px;
	}
	#consulting .wrap01 ul.listDot{ padding: 15px 30px;}
	ul.listLine li{ font-size: 15px;}
	ul.listLine li::before{ width: 10px;}
}
@media screen and (max-width: 420px) {
	#consulting .wrap01{ width: 100%;}
	#consulting .wrap01 .inner{ right: 0;}
	#consulting .wrap01 ul.listDot{ padding: 15px 0;}
	ul.listDot li{ width: 50%; font-size: 15px;}
	#consulting .wrap01 span{  width: 20%;}
}
/*-----------------------------------------------wrap02*/
#consulting .wrap02 .inner-in{
	max-width: 430px;
	margin: 0 auto;
}
.box{
	padding: 20px 30px;
	border-radius: 7px;
	background: #FFF;
	margin: 0 0 20px;
}
.box img{
	display: block;
	width: 70px;
	height: 70px;
}
.box01 img{
	margin: 0 20px 0 0;
}
.box01 div{
	width: calc( 100% - 90px);
}
.box h3{
	font-size: 16px;
	color: var(--sub-color);
}
.box ul li{
	width: 100%;
}
.box02{
	padding: 20px 25px;
}
#consulting .wrap02 span{
	display: block;
	width: 110px;
	font-size: 11px;
	text-align: center;
	text-decoration: underline;
	color: #FFF;
	border-radius: 10px;
	background: var(--sub02-color);
	padding: 5px;
	margin: 0 auto 20px;
	position: relative;
	z-index: 1;
}
.width70{
	width: 70%;
	position: relative;
}
.box02 h3{
	text-align: center;
	margin: 0 0 10px;
}
.box02 img{
	margin: 0 auto 10px;
}

/*
.box02 ul.listDot li:nth-child(2)::before{
	position: relative;
	top: -13px;
}
*/
/*yajirushi*/
.width70::before,.width70::after{
	display: block;
	content: "";
	width: 15px;
	height: 90px;
	background: center / contain no-repeat url("../img/con02-yajirushi-small.svg");	
	position: absolute;
	top: -30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.width70::after{
	top: auto;
	bottom: -12px;
}
#consulting .wrap02 .inner-in{
	position: relative;
}
#consulting .wrap02 .inner-in::before{
	display: block;
	content: "";
	width: 17px;
	height: 430px;
	background: center / contain no-repeat url("../img/con02-yajirushi-long.svg");	
	position: absolute;
    right: 12.5%;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
@media screen and (max-width: 420px) {
	.box{ padding: 20px 15px;}
	.box01 img{ margin: 0;}
	.box01 div{ width: calc( 100% - 80px);}
	#consulting .wrap02 span{
		width: 100px;
		font-size: 13px;
	}
}
/*-----------------------------------------------wrap03*/
#consulting .wrap03 ul{
	max-width: 800px;
	align-items: flex-start;
	margin: 0 auto;
}
#consulting .wrap03 ul li.stepLi{
	width: 20%;
	text-align: center;
	position: relative;
}
#consulting .wrap03 ul li.stepLi::after{
	display: block;
	content: "";
	width: 20px;
	height: 20px;
	background: center / contain no-repeat url("../img/triangle.svg");
	position: absolute;
	top: 40px;
    right: -10px;
}
#consulting .wrap03 ul li.stepLi:last-child::after{
	display: none;
}
#consulting .wrap03 ul li.stepLi img{
	display: block;
	width: 90px;
	margin: 0 auto 10px;
	position: relative;
}
#consulting .wrap03 ul li.stepLi p{
	font-size: 14px;
	line-height: 1.3;
	color: var(--sub-color);
	margin: 0 auto 10px;
}
#consulting .wrap03 ul li.stepLi span{
	font-size: 13px;
}
.dropdown-content {
	display: none;
	width: 140px;
	padding: 10px 15px;
	border-radius: 5px;
	background: #F5F5F5;
	margin: 5px auto 0;
}
.stepLi:nth-child(4) .dropdown-content {
	padding: 10px;
}
.dropdown-content ul.listDot li,
.dropdown-content ul.listCheck li{
	font-size: 12px;
}
ul.listCheck li{
	display: flex;
	align-items: center;
	font-size: 16px;
	letter-spacing: 0.15em;
	position: relative;
}
ul.listCheck li::before{
	display: inline-block;
	content: "";
	width: 9px;
	height: 9px;
	background: center / cover no-repeat url("../img/icon-check.svg");	
	margin: 0 5px 0 0;
}
#consulting .wrap03 .dropdown-content ul.listDot span{
	display: inline-block;
	width: 40px;
	font-size: 10px;
	color: #FFF;
	border-radius: 20px;
	background: var(--sub02-color);
	margin: 0 0 0 3px;
}
#consulting .wrap03 .dropdown-content ul.listDot li:last-child span{
	background: var(--accent-color);
}
.btnmore{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 140px;
	font-size: 12px;
	letter-spacing: 0.15em;
	line-height: 1;
	color: var(--sub02-color);
	padding: 5px 0;
	border-radius: 5px;
	border: solid 1px var(--sub02-color);
	margin: 0 auto;
	position: relative;
	transition-duration: 0.3s;
}
.btnmore.selected{
	color: #FFF;
	background: var(--sub02-color);
}
/*+*/
.btnmore::before,.btnmore::after{
	display: block;
	content: "";
	width: 8px;
	height: 1px;
	background: var(--sub02-color);
	position: absolute;
	top: 50%;
    right: 15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.btnmore::after{
	transform: rotate(90deg);
}
.btnmore.selected::after{
	transform: rotate(0deg);
	transition-duration: 0.3s;
	background: #FFF;
}
@media screen and (max-width: 768px) {
	#consulting .wrap03 ul.listDot li{ width: 100%;}
}
@media screen and (max-width: 420px) {
	#consulting .wrap03 ul li.stepLi{
		width: 100%;
		margin: 0 0 50px;
	}
	#consulting .wrap03 ul li.stepLi::after{
		position: absolute;
		top: auto;
		bottom: -25px;
		left: calc( 50% - 10px);
    	transform: translateX(-50%);
    	-webkit-transform: translateX(-50%);
    	-ms-transform: translateX(-50%);
		transform: rotate(90deg);
	}
	#consulting .wrap03 ul li.stepLi:nth-child(2)::after,
	#consulting .wrap03 ul li.stepLi:nth-child(4)::after{
		bottom: -35px;
	}
	#consulting .wrap03 ul li{
		width: 100%;
		height: auto;
	}
	#consulting .wrap03 ul li p{
		margin: 0 auto 10px;
	}
	.btnmore{
		position: sticky;
	}
	.dropdown-content ul.listDot li,
	.dropdown-content ul.listCheck li{
		font-size: 15px;
		margin: 0 auto 5px;
		padding: 0 20px;
	}
	.dropdown-content{
		width: 250px;
	}
	ul.listCheck li::before{
		width: 12px; height: 12px;
	}
}
/*-----------------------------------------------wrap04*/
#consulting .wrap04 .inner-in{
	max-width: 850px;
	margin: 0 auto 40px;
}/*
#consulting .wrap04 .inner-in{
	max-width: 350px;
	margin: 0 auto;
}*/
#consulting .wrap04 .box01 div{
	width: 50%;
}
#consulting .wrap04 .box01 img{
	object-fit: contain;
    margin: 0 auto -2px;
    display: block;
    height: 50px;
}
#consulting .wrap04 .box01 div:last-child img{
   padding: 0 0 5px;
}
#consulting .wrap04 .box01 p{
	width: 105px;
	font-size: 13px;
	text-align: center;
	color: #fff;
	border-radius: 20px;
	background: var(--main-color);
	margin: 0 auto;
}
/*triangle*/
.triangle02{
	margin: 0 auto 50px;
	position: relative;
}
.triangle02::after{
	display: block;
	content: "";
	width: 35px;
	height: 20px;
	background: center / contain no-repeat url("../img/triangle02.svg");
	position: absolute;
	bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
#consulting .wrap04 dl{
	border-radius: 7px;
	position: relative;
}
#consulting .wrap04 div dl:first-child,#consulting .wrap04 dl:nth-child(3){
	margin: 0 0 20px;
}
#consulting .wrap04 dd {
	padding: 20px 30px;
	border-radius: 0 0 7px 7px;
	background: #FFF;
}
#consulting .no{
	display: inline-block;
    position: relative;
    margin: 0 5px 0 0;
}
#consulting .inner-in .no{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 47%;
	height: 80px;
	font-size: 14px;
	border: solid 1px var(--main-color);
	border-radius: 8px;
	margin: 0;
}
#consulting .inner-in .no01{
	color: #FFF;
	background: var(--main-color);
}
#consulting .inner-in .no03{
	width: 100%;
}
#consulting .inner-in .no04{
	width: 100%;
	margin: 0 0 20px;
}
#consulting .inner-in .no05{
	width: 32%;
}
#consulting .inner-in .no06{
	width: 62%;
}
#consulting .inner-in .no03 p,#consulting .inner-in .no06 p{
	text-align: center;
	line-height: 1.5;
}
#consulting .inner-in .no span{
	width: 100%;
	text-align: center;
	font-size: 12px;
}
#consulting .no::before{
	display: flex;
	content: "1";
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0;
	color: #FFF;
	padding: 2px;
	border-radius: 50%;
	background: var(--sub02-color);
}
#consulting .inner-in .no::before{
	position: absolute;
	top: -8px;
	left: -6px;
	z-index: 1;
}
#consulting .wrap04 .no02::before{ content: "2";}
#consulting .wrap04 .no03::before{ content: "3";}
#consulting .wrap04 .no04::before{ content: "4";}
#consulting .wrap04 .no05::before{ content: "5";}
#consulting .wrap04 .no06::before{ content: "6";}

#consulting .wrap04 ul{
	max-width: 530px;
	padding: 20px 40px;
	border: solid 1px var(--sub02-color);
	border-radius: 10px;
	margin: 0 auto 20px;
	position: relative;
}
#consulting .wrap04 ul::after{
	display: block;
	content: "";
	width: 30px;
	height: 30px;
	background: center / contain no-repeat url("../img/con04-yajirushi.svg");
	position: absolute;
	bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
#consulting .wrap04 ul li{
	align-items: flex-start;
}
#consulting .wrap04 ul div{
	width: 60px;
	position: relative;
	top: -5px;
}
#consulting .wrap04 ul p{
	display: inline-block;
	width: calc( 100% - 65px);
}
#consulting .wrap04 ul .no{
	margin: 0 2px 0 0;
}
#consulting .wrap04 ul .no::before{
	width: 17px;
	height: 17px;
	padding: 0;
}
p.last{
	font-size: 20px;
	text-align: center;
	line-height: 1.8;
	color: var(--main-color);
}
#consulting .wrap04 p.last{
	font-size: 22px;
}
@media screen and (max-width: 420px) {
	p.last{ font-size: 18px;}
	#consulting .wrap04 p.last{ font-size: 18px;}
}
/*-----------------------------------------------wrap05*/
#consulting .wrap05 .inner{
	max-width: 770px;
}
#consulting .wrap05 .box03{
	padding: 65px 30px 55px;
	border: solid 1px #E6E6E6;
	border-radius: 10px;
	position: relative;
	margin: 0 0 50px;
}
#consulting .wrap05 .box03:nth-child(3){
	margin: 0 0 50px;
}
#consulting .wrap05 h3{
	width: 250px;
	font-size: 14px;
	text-align: center;
	color: #FFF;
	padding: 10px 0;
	background: var(--main-color);
	border-radius: 30px;
	position: absolute;
	top: -10px;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
#consulting .wrap05 .box03 img{
	width: 48%;
	padding: 0 10px;
}
#consulting .wrap05 .box03 ul{
	width: 48%;
}
#consulting .wrap05 .box03 ul li{
	font-size: 15px;
}
#consulting .wrap05 .box03 ul li:last-child{
	color: var(--main-color);
}
@media screen and (max-width: 420px) {
	#consulting .wrap05 .box03{
		padding: 65px 30px 35px;
	}
	#consulting .wrap05 .box03 img{
		width: 100%;
		padding: 0;
		margin: 0 0 20px;
	}
	#consulting .wrap05 .box03 ul{
		width: 100%;
	}
}
/*-----------------------------------------------wrap06*/
#consulting .wrap06 .box{
	align-items: flex-start;
	justify-content: center;
	padding: 40px 50px 20px 50px;
}
#consulting .wrap06 dl{
	width: 28%;
}
#consulting .wrap06 dl dt{
	font-size: 14px;
	text-align: center;
	color: var(--main-color);
	margin: 0 0 10px;
}
#consulting .wrap06 dl dd img{
	object-fit: contain;
	width: 100%;
	height: 200px;
}
#consulting .wrap06 dl:last-child dd img{
	height: 230px;
}
#consulting .wrap06 .box span{
	display: block;
	width: 10%;
	height: 100%;
	padding: 20px;
	position: relative;
	top: 80px;
}
#consulting .wrap06 span img{
	width: 100%;
	height: auto;
	object-fit: contain;
}
ul.listLine{
	margin: 0 auto 40px;
}
@media screen and (max-width: 420px) {
	#consulting .wrap06 dl{
		width: 100%;
		margin: 0 0 40px;
	}
	#consulting .wrap06 dl:nth-child(2){
		margin: 0 0 60px;
	}
	#consulting .wrap06 .box span{
		width: 100%;
		padding: 0 100px;
		top: -27px;
		transform: rotate(90deg);
	}
}
/*==================================================================================================*/
/* これが無いとモーダルウィンドウ表示の際に余白が出る */
*{ margin: 0; padding: 0;}
/* モーダル全体(背景＋本体) */
.modal{
  display: none;
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
}
body.fixed .modal{
	-webkit-transform: translate3d(0, 0, 1px);
	transform: translate3d(0, 0, 1px);
	z-index: 1000;
}
/* モーダル背景 */
.modal-bg{
	position: absolute;
	height: 100vh;
	width: 300%;
	background: rgba(26,48,101,0.9);
	left: -150%;
}
/* ★モーダル閉じ */
.js-modal-close{
	width: 100%;
	height: 100%;
}
.js-modal-close span{
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: var(--sub-color);
	transform: rotate(-45deg);
	position: absolute;
	top: -15px;
	right: -20px;
}
.js-modal-close span::before,.js-modal-close span::after{
	display: block;
	content: "";
	width: 25px;
	height: 3px;
	border-radius: 2px;
	background: #FFF;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.js-modal-close span::after{
	width: 3px;
	height: 25px;
}
/* モーダルウィンドウ表示中に記事本体を固定 */
body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}
/* ★モーダル本体 */
.modal-content{
	width: fit-content;
	position: absolute;
	top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.modal-content .modal-inner{
	width: fit-content;
	padding: 40px 60px;
	border-radius: 20px;
	background: #FFF;
}
/* ポップアップ中身の記述 */
.modal-content p{
	width: fit-content;
	font-size: 16px;
	text-align: center;
	color: var(--sub-color);
	border-bottom: solid 1px #EEEEEE;
	margin: 0 auto 10px;
}
.modal-content li{
	font-size: 15px;
}
/*==================================================================================================*/
/*contact*/
#contact .inner{
	max-width: 680px;
}
#contact .inner01{
	padding: 0 0 60px;
}
#contact span.red{
	font-size: 14px;
}
#contact .bggray{
	padding: 100px 0;
}
#contact .bggray .inner{
	padding: 50px 100px;
	background: #fff;
	border-radius: 10px;
}
#contact dl{
	justify-content: flex-start;
	margin: 0 0 20px;
}
#contact dt{
	width: 30%;
	font-size: 13px;
}
#contact dd{
	width: 70%;
	height: 49px;
	font-size: 12px;
	color: #DBDBDB;
	padding: 13px 20px;
	border: solid 1px #BDBDBD;
	border-radius: 5px;
}
#contact .select dd{
	width: 50%;
	color: #000;
	position: relative;
}
#contact .select dd::after{
	display: block;
	content: "";
	width: 5px;
	height: 5px;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
	position: absolute;
	top: 44%; right: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transform: rotate(45deg);
}
#contact .select02 dd{
	width: 20%;
	color: #000;
}
#contact .select02::after{
	display: block;
	content: "人";
	font-size: 12px;
	margin: 0 0 0 10px;
}
#contact .bggray h2{
	font-size: 14px;
	text-align: left;
	margin: 50px 0 10px 0;
}
#contact .bggray h2::before{
	display: inline-block;
	content: "";
	width: 3px;
	height: 14px;
	background: var(--sub02-color);
	margin: 0 10px 0 0;
}
.required{
	width: fit-content;
	display: block;
	position: relative;
}
.required::after{
	display: block;
	content: "*";
	color: red;
	position: absolute;
	top: -5px;
	right: -10px;	
}
#contact .bggray p{
	width: 100%;
	height: 250px;
	font-size: 12px;
	color: #DBDBDB;
	padding: 13px 20px;
	border: solid 1px #BDBDBD;
	border-radius: 5px;
	margin: 0 0 30px;
}
#contact .btn{
	max-width: 260px;
}
#contact .btn::after{
	max-width: 35px;
}
@media screen and (max-width: 768px) {
	#contact .bggray .inner{ padding: 50px 8%;}
}
@media screen and (max-width: 420px) {
	#contact .bggray .inner{ padding: 50px 5%;}
	#contact dl:nth-child(3) dt{ width: 100%; margin: 0 0 10px;}
	#contact dl:nth-child(3) dd{ width: 100%;}
	#contact .btn{ max-width: 100%;}
}
/*==================================================================================================*/
/*投稿ページ共通指定*/
#single .inner{
	max-width: 700px;
	padding: 0 0 40px;
}
#single .fvContent .inner{
	padding: 160px 0 0;
}
#single h1,
#single h2,
#single h3,
#single h4,
#single h5,
#single p,
#single a{
	display: block;
	margin: 0 0 30px;
}
#single h1{
	font-size: 21px;
}
#single h1.title{
	padding: 0 0 5px;
	border-bottom: solid 1px #E6E6E6;
	margin: 0;
}
#single p.day{
	font-size: 14px;
	text-align: right;
	color: #E6E6E6;
}
#single h2{
	font-size: 19px;
	text-align: left;
}
#single h2::before{
	display: inline-block;
	content: "";
	width: 5px;
	height: 19px;
	background: var(--sub02-color);
	margin: 0 10px 0 0;
}
#single h3{
	font-size: 17px;
	border-bottom: solid 1px #E6E6E6;
}
#single h4{
	font-size: 16px;
	border-bottom: double 4px #E6E6E6;
}
#single h5{
	font-size: 15px;
	width: fit-content;
	font-size: 16px;
	background: #E6E6E6;
	padding: 3px 8px;
}
#single p{
	font-size: 15px;
}
#single a{
	font-size: 15px;
	letter-spacing: 0.15em;
	color: var(--sub02-color);
}
#single a.btn{
	width: 94%;
	max-width: 400px;
	color: #FFF;margin: 0 auto;
	margin: 0 auto 100px;
}
#single .btn02::after{
	right: auto;
	left: 0;
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 420px) {
}