.section {
	padding: 12rem 0;
}
.section h2 span {
	font-size: 1.4rem;
}
.secContent {
	margin-top: 6rem;
}
.title {
	display: block;
	text-align: center;
}
.title h2 {
  	font-family: "Poppins";
	line-height: 1.5;
}
/*.title p {
	margin-top: 0.2rem;
}*/
.title.left {
	text-align: left;
}
.icons {
	display: inline-block;
	text-align: center;
}
.icons span {
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 0.3rem;
    display: block;
    float: left;
}
.icons span:nth-child(1) {
	background: #e40d7c;
}
.icons span:nth-child(2) {
	background: #231815;
	margin: 0 1.5rem;
}
.icons span:nth-child(3) {
	background: #be9124;
}
.fv,
.subFv {
	position: relative;
    overflow: hidden;
}
.fvBg,
.subFvBg {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}
.fvLogoBg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.fvLogoBg img {
	object-fit: contain;
}
.fvContent .container {
	width: 100vmin;
	margin: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	height: 100vh;
    position: relative;
    -webkit-overflow-scrolling: touch;
}
.fvTop {
	width: 67vmin;
	margin-left: auto;
	margin-right: auto;
}
.fvMid {
	display: flex;
	justify-content: center;
	align-items: center;
}
.fvMid h2 {
	/*font-size: 3.6vmin;*/
	font-size: 3vmin;
	font-weight: 600;
	line-height: 1.6;
	margin-right: 4rem;
}
.fvMid p {
	/*font-size: 1.6vmin;*/
	font-size: 2vmin;
}
.fvBottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.fvBottom1 {
	width: 30vmin;
}
.fvBottom2 {
	margin-right: -10vmin;
	width: 70vmin;
}
.fv .btn_scroll {
	display: flex;
	position: absolute;
    left: 4rem;
	bottom: 0;
	transform: rotate(-90deg);
	transform-origin: 0.8rem 0.8rem;
    z-index: 20;
}
.serviceList {
	display: flex;
}
.serviceItem {
	background: white;
	width: 50%;
	padding: 6rem;
	margin: 1px;
}
.serviceItemLogo {
	width: 20rem;
	margin: auto;
}
.serviceItem h3 {
	margin-top: 6rem;
	text-align: center;
}
.serviceItem p {
	margin-top: 4rem;
	font-size: 1.4rem;
	text-align: justify;
    text-justify: inter-ideograph;
    min-height: 17.5rem;
}
.serviceAct,
.profileAct  {
	margin-top: 4rem;
}
.serviceAct>.btn:not(:first-child),
.profileAct>.btn:not(:first-child) {
	margin-top: 2rem;
}
.novoice .profileAct {
    margin-top: calc(108px + 8rem);
}
.news .content,
.career .content {
	position: relative;
	padding-right: calc(50% + 6rem);
	padding-left: 6rem;
}
.contentRight {
	width: 50%;
	position: absolute;
	right: 0;
	top: 0;
}
.contentLeft {
	padding: 0 6rem;
}
.contentLeftDesc {
	margin-top: 6rem;
    font-size: 1.4rem;
}
.contentLeftAct {
	margin-top: 4rem;
}
.career,
.service,
.cost,
.companyInfo,
.commercial {
	background: #f6f6f4;
}
section.news.section {
	padding: 0;
	margin: 12rem 0;
	overflow: hidden;
}
.news .content {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
}
.contentRight iframe,
.news .content {
	height: 50rem;
}
.careerRecruit {
	top: 0;
	bottom: 0;	
	padding: 0 6rem;
	background: white;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
}
.careerRecruitInfo h3 {
	font-size: 1.8rem;
}
.careerRecruitInfo {
	margin-top: 4rem;
	line-height: 3rem;
}
.careerRecruitInfo p {
	font-size: 1.4rem;
}
.careerRecruitInfo .small {
	font-size: 1.2rem;
}
.careerRecruitInfo .address {
	margin-top: 4rem;
}
.careerRecruitInfo .address a:hover {
	opacity: 0.6;
}
.career .contentRight h3  {
	font-size: 1.8rem;
}
.subFvAct {
	position: absolute;
	top: -2.9rem;
	left: 0;
	right: 0;
	width: 100%;
	max-width: 104rem;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	z-index: 30;
}
.subFvAct .btn {
	margin: 1px;
	width: calc(50% - 2px);
}
.subFvContent {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	padding: 12rem 0;
	flex-grow: 1;
}
.subFvContainer {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100vh;
}
.subFvContent h1 {
	margin-top: 2.2rem;
}
.subFvContent p {
	margin-top: 6rem;
	max-width: 70rem;
	text-align: justify;
}
.flowItem {
	display: block;
	width: 30rem;
}
.flowItem h3 {
	font-size: 1.8rem;
	margin-top: -5rem;
}
.flowItem p {
	margin-top: 4rem;
	font-size: 1.4rem;
}
.flowItem p strong {
    box-shadow: inset 0 -6px #e5d8b5;
    display: inline;
    font-size: inherit;
}
.flowItem p a {
    color: #be9124;
}
.flowItem p a:hover {
    text-decoration: underline;
}
.flowList {
	display: flex;
	justify-content: space-between;
	margin-top: 4rem;
}
#flow {
    padding-top: 12rem;
}
.flow {
	position: relative;
	margin-top: -2.8rem;
    padding-top: 2.8rem;
	padding-bottom: 0;
}
.flow, .profile {
	background: #f6f6f4;
}
.profileList {
	margin: -2rem;
	width: calc(100% + 4rem);
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.profileItem {
	width: calc(50% - 4rem);
	margin: 2rem;
	padding: 4rem;
	background: white;
}
.profileItem audio {
	width: 100%;
	display: block;
	margin-top: 2rem;
    outline: none;
}
.profileName {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.profileName h3 {
	font-size: 
}
.profileTanto {
	margin-top: 4rem;
}
.profileTanto span {
	background: #b0b0af;
	font-size: 1.4rem;
	line-height: 3.3rem;
	height: 3.3rem;
	padding: 0 2rem;
	color: white;
	display: inline-block;
	border-radius: 1.7rem;
}
#narrator .profileTanto span {
	letter-spacing: .1rem;
}
.profileDesc {
	margin-top: 2rem;
}
.profileNameInfo,
.profileNameImg {
	width: 50%;
}
.profileNameInfo {
	display: flex;
	justify-content: center;
	flex-direction: column;
    padding-left: 3rem;
}
.profileNameInfo p {
  	font-family: "Poppins";
	font-size: 1.4rem;
	margin-top: 1.2rem;
	color: #b0b0af;
}
.profileNameInfo h3 {
	font-size: 2.2rem;
	line-height: 1;
}
.profileDesc span {
	background: #e40d7c;
	line-height: 2rem;
	padding: 0 1rem;
	color: white;
	display: inline-block;
	border-radius: 1rem;
	font-size: 1.2rem;
	margin-left: 0.5rem;
}
.narrator .profileDesc span {
	background: #be9124;
}
.profileDesc {
	font-size: 1.4rem;
	min-height: 23rem;
}
.narrator .profileDesc {
	min-height: 22rem;
}
.profileIframe {
	width: 100%;
	margin-top: 4rem;
	position: relative;
	overflow: hidden;
}
.profileIframe img {
	width: 100%;
	-webkit-transition: 0.3s all;
    -o-transition: 0.3s all;
    transition: 0.3s all;
}
.profileIframe:hover img {
	transform:scale(1.1,1.1);
	-webkit-transition: 0.3s all;
	-o-transition: 0.3s all;
	transition: 0.3s all;
}
.profileIframeMask {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top:0;
	bottom: 0;
	/*background: rgba(255,255,255,0.1);*/
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
}
.profileIframeMask span {
	position: absolute;
    bottom: 2rem;
    right: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 6rem;
    height: 6rem;
    border-radius: 3rem;
    border: 1px solid #e40d7c;
    border-radius: 3rem;
    /*background: #e4e4e4;*/
    font-size: 3rem;
    color: #e40d7c;
    padding-left: 0.5rem;
    text-align: center;
}
.profileIframe iframe {
	width: 100%;
	height: 100%;
	border: none;
}
.profileIframe,
.profileIframe:hover {
    cursor: pointer;
}
.subFv .btn_follow,
.fv .btn_follow {
    position: absolute;
    right: 3rem;
    top: calc(50% - 4rem);
    font-size: 1.2rem !important;
    line-height: 1;
    color: #231815;
    transform: rotate(90deg);
    transform-origin: calc(100% - 0.6rem) 0.6rem;
    z-index: 10;
}
.subFv .btn_follow a ,
.fv .btn_follow  a  {
	width: initial;
	height: initial;
	line-height: initial;
	display: inline-block;
	border: none;
	border-radius: 0;
	color: #231815;
	font-size: 1.2rem;
	line-height: 1;
}
.costMainDesc {
	font-size: 1.4rem;
}
.costSubDesc {
	font-size: 1.2rem;
	color: #605b5a;
}
.costSubDesc li {
	position: relative;
	list-style-type: none;
	font-size: 1.2rem;
	color: #605b5a;
	padding-left: 1.2em;
}
.costSubDesc li:before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
	font-size: inherit;
	line-height: inherit;
}
.cost .costTbl,
.costSubDesc,
.cost .optionTbl,
.companySubSign,
.secCompanyAct {
	margin-top: 4rem;
}
.costContent h3,
.costMainDesc {
	margin-top: 6rem;
}
.costContent h3 {
	font-size: 1.8rem;
}
.companySubFv {
	padding-top: 16rem;
}
.companySubFv .subFvContent {
	padding-top: 6rem;
	max-width: 68rem;
	margin: auto;
}
.companySubSign {
	width: 12.4rem;
	margin-left: auto;
	margin-right: 0;
}
.companySubFv h1 {
	text-align: left;
}
.secCompanyAct .btn {
	width: 33%;
	margin: 1px;
}
.secCompanyAct {
	display: flex;
	justify-content: center;
}
.companyInfo {
	padding-bottom: 0;
}
.picanteFlow .flowItem p strong {
    box-shadow: inset 0 -6px #f2d6df;
}
.careerRecruitInfoSubDesc {
	position: relative;
	padding-left: 1.2em;
}
.careerRecruitInfoSubDesc:before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
	font-size: inherit;
	line-height: inherit;
}
/*-------------animation setting--------------*/
#fbWrapper {
	height: 500px;
	max-width: 500px;
    margin: 0 auto;
}
#fbWrapper > .fb-page {
    width: 100%;
    display: block;
}
#fbWrapper .fb-page > span {
    width: 100% !important;
}
#fbWrapper iframe {
    width: 100% !important;
}
/*-------------animation setting--------------*/
#fvTopImg,
#fvMidHead,
#fvMidDesc,
#fvBottom1Img,
#fvBottom2Img,
#fvMidHead span,
#fvMidDesc span,
#subFvLogo,
#subFvHead,
#subFvDesc,
#subFvHead span,
#subFvDesc span/*,
#subFvAct*/ {
	opacity: 0;
	position: relative;
}
#fvTopImg,
#subFvLogo {
	top: -5rem;
}
#fvBottom1Img,
#fvBottom2Img/*,
#subFvAct*/ {
	bottom: -5rem;
}
/*#fvTopImg,
#fvBottom1Img,
#fvBottom2Img {
	transform: scale(0);
	transition: all 2s linear; 
}
#fvTopImg {
	transform-origin: 50% 0;
}
#fvBottom1Img {
	transform-origin: 50% 50%;
}
#fvBottom2Img {
	transform-origin: 50% 100%;
}*/
/*-------------page-------------*/
.cost {
	padding-bottom: 0 !important;
}

@media screen and (max-width: 1200px) {
	.fvContent {
    	max-width: 100%;
		overflow: hidden;
	}
	.fvBottom {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.section {
	    padding: 16rem 0;
	}
	.fvTop,
	.fvBottom,
	.serviceList,
	.news .content,
	.contentRight,
	.news .content, .career .content,
	.subFvAct,
	.flowList,
	.flowItem {
		display: block;
		width: 100%;
	}
	.news .content, .career .content {
		padding: 0;
	}
	.companySubFv h1,
	.commercial  h2 {
		text-align: center;
		font-size: 4.8rem;
	}
	.profileNameInfo h3 {
		font-size: 3.6rem;
	}
	.profileNameInfo p {
		font-size: 2.4rem;
		line-height: 1;
		margin-top: 3rem;
	}
	.career .contentRight h3,
	.costContent h3 {
		font-size: 3rem;
	}
	.serviceItem p,
	.careerRecruitInfo,
	.profileDesc,
	.flowItem p strong,
	.costMainDesc,
	.careerRecruitInfo p,
	.contentLeftDesc,
	.flowItem p {
		font-size: 2.8rem;
	}
	.careerRecruitInfo .small,
	.footerMenu li a,
	.fvMid p,
	.costSubDesc li {
		font-size: 2.4rem;
	}
	.fvTopImg {
		content: url(../img/fv1_sp.png);
	}
	.fvBottom1Img {
		display: none;
	}
	.fvBottom2 {
    	/*margin-left: 16rem;
	    width: 56rem;
	    margin-left: 12vw;
		width: 56vh;*/
		margin-left: 22vw;
		width: 40vh;
	}
	.btn_scroll .txt {
	    font-size: 1.8rem;
	}
	.btn_scroll .line {
	    width: 20rem;
	    height: 0.2rem;
	}
	.btn_scroll .line:before {
	    content: "";
	    width: 0.8rem;
	    height: 0.8rem;
	    border-radius: 0.4rem;
    	top: calc(50% - 0.4rem);
	}
	.fv .btn_follow {
		display: none;
	}
	.title p {
	    /*margin-top: 2rem;*/
	    font-size: 2.4rem;
	} 
	.icons span {
	    width: 1rem;
	    height: 1rem;
	    border-radius: 0.5rem;
	}
	.icons span:nth-child(2) {
	    margin: 0 1.6rem;
	}
	.serviceItem {
	    width: 100%;
	    padding: 9rem 5rem; 
	}
	.serviceItem h3 {
	    margin-top: 8rem;
	}
	.serviceAct>.btn:not(:first-child), 
	.profileAct>.btn:not(:first-child) {
	    margin-top: 3rem;
	}
	.novoice .profileAct {
    	margin-top: 4rem;
	}
	.serviceList>.serviceItem:not(:first-child) {
		margin-top: 5rem;
	}
	.contentRight {
		position: relative;
	}
	.news .content {
		padding: 0;
	}
	.title.left {
		text-align: center;
	}
	.contentRight,
	.contentLeftAct {
		margin-top: 6rem;
	}
	.news .content {
		height: initial;
	}
	.contentLeftAct  {
		text-align: center;
	}
	.careerRecruit {
		padding: 5rem;
	}
	.careerRecruitInfo { 
		line-height: 5rem;
	}
	.careerRecruitInfoSub {
		margin-top: 4rem;
	}
	.title .icons {
		margin-top: 2rem;
	}
	.fvMid h2 {
	    font-size: 3.5rem;
	    margin-right: 0;
	}
	.fvMid {
		display: block;
		text-align: center;
	}
	.fvMid p {
		margin-top: 4rem;
	}
	.subFvContent {
	    padding: 0;
	    margin: 13rem 0 16.2rem;
	}
	.subFvContent h1,
	.flowItem p,
	.cost .costTbl, 
	.costSubDesc, 
	.cost .optionTbl, 
	.companySubSign, 
	.secCompanyAct {
		margin-top: 6rem;
	}
	.subFvContent p {
		margin-top: 2rem;
	}
	.subFv .btn_follow  {
		display: none;
	}
	.subFvAct {
		width: calc(100% - 10rem);
		top: -4.3rem;
	}
	.subFvAct .btn {
		width: 100%;
	}
	.subFvAct>.btn:not(:first-child) {
		width: 100%;
	}
	.picanteFlow1 {
		content: url(../img/ttl_picante_flow1_sp.png);
	}
	.picanteFlow2 {
		content: url(../img/ttl_picante_flow2_sp.png);
	}
	.picanteFlow3 {
		content: url(../img/ttl_picante_flow3_sp.png);
	}
	.koyellFlow1 {
		content: url(../img/ttl_koyell_flow1_sp.png);
	}
	.koyellFlow2 {
		content: url(../img/ttl_koyell_flow2_sp.png);
	}
	.koyellFlow3 {
		content: url(../img/ttl_koyell_flow3_sp.png);
	}
	.flowList>.flowItem:not(:first-child) {
		margin-top: 6rem;
	}
	.flowItem h3 {
	    font-size: 3.2rem;
	    margin-top: 0;
	    line-height: 1;
	}
	.profileItem {
	    margin: 0;
	    padding: 5rem;
	    width: 100%;
	}
	.profileList>.profileItem {
		margin-top: 5rem;
	}
	.profileList {
		margin: 0;
		width: 100%;
		display: block;
	}
	.profileTanto span {
	    background: #b0b0af;
	    font-size: 2.4rem;
	    line-height: 4.3rem;
	    height: 4.3rem;
	    padding: 0 3rem;
	    border-radius: 2.15rem;
	}
	.profileDesc span {
	    line-height: 3rem;
	    padding: 0 2rem;
	    border-radius: 1.5rem;
	    font-size: 2rem;
	    margin-left: 1rem;
	}
	.companySubFv {
	    /*padding-top: 20rem;*/
	}
	#picante .subFvLogo {
		width: 26rem;
		/*margin: auto;*/
		margin: 0 auto;
	}
	#koyell .subFvLogo {
		width: 30rem;
		/*margin: auto;*/
		margin: 0 auto;
	}
	#company .subFvLogo {
		width: 26rem;
		/*margin: auto;*/
		margin: 0 auto 4rem;
	}
	.secCompanyAct {
		display: block;
	}
	.secCompanyAct .btn {
		width: 100%;
	}
	.serviceItem p {
		min-height: initial;
	}
	#flow {
	    margin-top: -10rem;
		padding-top: 18rem;
	}
	.flow {
	    margin-top: -12rem;
	    padding-top: 22rem;
	    padding-bottom: 0;
	}
	.flow,
	.companyInfo {
		padding-bottom: 0;
	}
	.fvContent .container {
		width: 100%;
	}
	.serviceItemLogo {
    	width: 30rem;
	}
	.costContent h3 {
		margin-top: 10rem;
	}
	.companySubSign {
	    width: 20rem;
	    margin-bottom: 6rem;
	}
	.profileIframeMask span {
	    width: 10rem;
	    height: 10rem;
	    border-radius: 5rem;
	    font-size: 5rem;
	}
	#announcer,	#narrator, #cost, #commercial {
		padding: 18rem 0;
	}
}