@charset "UTF-8";


:root {
    /*--bg: #f0ede8;*/
    --bg: #edf2f1;
    --bg2: #080808;
    --bg3: #8a857c;
    /*
	--color01: #1f5c9d;
    --color02: #e37833;
	--color03: #219751;
	*/
	--color01: #4a6b82;
    --color02: #e5a93b;
	

    
    --color03: #c48b9f;
    --color04: #01B580;
    --color05: #E30307;
    --color06: #1b1464;
    --fg2: #8a857c;
    --fg3: #4a4740;
    --accent: #7ab8b0;
    --accent2: rgba(122, 184, 176, .12);
    --gold: #c8a86e;
    --jp: "Zen Old Mincho", "游明朝", "YuMincho", serif;
    --en: "Cormorant Garamond", "Times New Roman", serif;
    --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ease: cubic-bezier(.23, 1, .32, 1);
    --fast: cubic-bezier(.4, 0, .2, 1);
}



/***** index *****/





.mv {
	position: relative;
	overflow: hidden;
	/*padding-top: 60px;*/
	
}
@media screen and (min-width: 749px){
	#index .mv {
		height: 80vh;
	min-height: 800px;
	}
}
.mv .wrap {padding: 0;}
/*
.mv .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 40px);
	z-index: 5;
}
.mv .logo {text-align: center}
.mv .logo img {
	max-width: 500px;
	width: 100%;
}
*/

.mArea {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 748px){
	.mArea {
		position: static;
		transform: translateY(0%);
		margin-top: 30px;
	}
}

#slider {height: 100%;}
.mArea .swiper-slide {}
.mArea .swiper-slide .box {width: 100%; height: 100%;}
/*.mArea .swiper-slide .box .imgArea {width: 100%; height: 100%;}*/
.mArea .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}



.swiper {width: 100%; height: 100%;}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}
@keyframes zoomUp {
  0% {
    transform: scale(1.06);
  }
  100% {
    transform:  scale(1.0);
  }
}
.swiper-slide, .swiper-img {width: 100%; height: 100%;}
.swiper-slide img {
  height: 100%;
  width: 100%;
	object-fit: cover;
	object-position: center;
}













.mvImg.target {
	top: 0;
	/*opacity: 1;*/
	margin-bottom: 70px;
	-webkit-clip-path: inset(50%);
clip-path: inset(50%);
	transition: all 0.8s ease 0.3s;
}




.mvImg.target.is-animate {
	webkit-clip-path: inset(0);
clip-path: inset(0);
}

.mvImg img {
	width: 100%;
	transition: all 1.2s ease 0.3s;
	transform: scale(1.1);
}
.mvImg.is-animate img {transform: scale(1);}




/*
#index .mv .inner {
	opacity: 0;
	animation: popup 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
}
@keyframes popup {
  0% {
    top: 55%;
    opacity: 0;
  }
  100% {
    top: 50%;
  }
  80%, 100% {
    opacity: 1;
  }
}
*/
.mv.target {top: 0px;}
.mv .inner {margin-bottom: 40px;}
.mv .inner {
	position: absolute;
	top: 100px;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: border-box;
	padding: 50px;
	background: rgba(255,255,255,0.75);
	backdrop-filter: blur(10px);
	z-index: 1;
	box-shadow: 0 0px 30px rgba(0, 0, 0, 0.05);
}
.mv h1 {
	font-size: 4.0em;
	text-align: center;
	font-weight: 700;
	/*margin-top: 80px;*/
	line-height: 1.2;
	color: var(--color06)
}
.mv h1 span {display: block; position: relative;}
.mv h1 span:first-child {margin-bottom: 25px; letter-spacing: 0.15em;}
/*
.mv h1 span small {
	position: absolute;
	top: calc(100% + 5px);
	font-size: 0.52em;
	left: 50%;
	transform: translateX(-50%);
	letter-spacing: 0.2em;
}
*/
.mv h1 span small {
	display: block;
	font-size: 0.7em;
	margin-bottom: 20px;
	letter-spacing: 0.10em;
}



@media screen and (min-width: 749px) and (max-width: 1300px){
	.mv .inner {top: 60px; padding: 4.8vw;}
	.mv h1 {font-size: 5.0vw; }
	.mv h1 span:first-child {margin-bottom: 2.5vw;}
}
@media screen and (max-width: 748px){
	.mv .inner {
		position: static;
		transform: translateX(0)!important;
		padding: 0;
		background: none;
		box-shadow: 0 0px 30px rgba(0, 0, 0, 0.00);
		margin-top: 40px;
		margin-bottom: 0;
	}
	.mv h1 {font-size: 9.2vw; }
	.mv h1 span:first-child {margin-bottom: 4.5vw;}
	.mv h1 span small {margin-bottom: 4.5vw;}
}
/*
@media screen and (max-width: 560px){
	.mv h1 {font-size: 10.2vw; }
	.mv h1 span:first-child {margin-bottom: 10vw;}
}
*/


/*
.mv.target h1 {
	
	transition: all 0.5s ease;
	transform: scale(0.95)
}
.mv.target.is-animate h1 {
	opacity: 1;
	transform: scale(1)
}
*/
.mv .inner.target {
	transform: translateX(-50%) scale(1.1);
	transition: all 0.5s ease 0.5s;
}
@media screen and (max-width: 748px){
	.mv .inner.target {transition: all 0.5s ease 0.0s;}
}
.mv .inner.target.is-animate {
	transform: translateX(-50%) scale(1)
}

.in_ePage h1 {padding-top: 60px; padding-bottom: 30px;}
@media screen and (max-width: 560px){
	.in_ePage h1 {padding-bottom: 0;}
}


#login h1 {padding-top: 60px; padding-bottom: 30px;}
@media screen and (max-width: 560px){
	#login h1 {padding-bottom: 0;}
}

/*.partners {margin-bottom: 30px}*/

/*
.partners .txt {
	font-size: 2.2em;
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
	letter-spacing: 0.05em
}
.partners .txt span {
	display: block;
	margin-bottom: 10px;
}
.partners .logos {
	display: flex;
	justify-content: center;
	align-items: center
}
.partners .logos > div {
	position: relative;
	padding: 0 20px;
}
.partners .logos > div > span {
	position: absolute;
	left: 10px;
	top: calc(100% + 2px);
	font-size: 12px;
}
.partners .logos > div img {
	mix-blend-mode: multiply;
}
.partners .logos > div:first-child::after {
	content: '';
	position: absolute;
	top: -5px;
	right: -1px;
	width: 2px;
	height: calc(100% + 10px);
	background: #aaa;
}
.partners .logos + p {text-align: center; margin-top: 30px; font-weight: 500;}

@media screen and (max-width: 400px){
	.partners .txt {font-size:6.4vw;}
	.partners .logos > div {padding: 0 15px;}
}
*/



.logos {
	background: #fff;
	padding: 20px 20px 10px;
}
.logos div img {margin: auto; max-width: 900px; width: 100%;}
@media screen and (max-width: 500px){
	.logos {
	padding: 20px 5px 10px;
}
}


/*** slider ***/
/*
.mArea {
	height: 60vh;
	min-height: 560px;
	position: relative;
}
.mArea::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(ellipse at center,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
	mix-blend-mode: multiply;
	z-index: 3;
}
.mArea::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(ellipse at center,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
	mix-blend-mode: multiply;
	z-index: 2;
}

#slider {height: 100%;}
.mArea .swiper-slide {}
.mArea .swiper-slide .box {width: 100%; height: 100%;}

.mArea .swiper-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}



.swiper {width: 100%; height: 100%;}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}
@keyframes zoomUp {
  0% {
    transform: translateX(-2%) scale(1.04);
  }
  100% {
    transform: translateX(2%)  scale(1.04);
  }
}
.swiper-slide, .swiper-img {width: 100%; height: 100%;}
.swiper-slide img {
  height: 100%;
  width: 100%;
	object-fit: cover;
	object-position: center;
}




.in_ePage .mArea {
	height: 30vh;
	min-height: 300px;
}
.in_ePage .mv .logo img {width: 180px;}
*/

/*** slider ***/




/*** overflow ***/

#overflow {
	max-width: 960px;
	width: 100%;
	margin: auto;
	padding-top: 30px;
}
/*#overflow .container {max-width: 960px;}*/

.orderArea01 {}
ul.orderArea01 {}
ul.orderArea01 > li {
	box-sizing: border-box;
	padding: 20px;
	/*border: 2px solid #333;*/
	border-radius: 6px;
	position: relative;
	background: #fff;
	/*background: var(--bg);*/
	display: flex;
	justify-content: space-between;
	align-items: center;
}
ul.orderArea01 > li:not(:last-child){
	margin-bottom: 50px;
}
/*
ul.orderArea01 > li.order {border: 2px solid #e60012;}
ul.orderArea01 > li.reply {border: 2px solid #0068b7;}
ul.orderArea01 > li:last-child {border: 6px solid #c96088;}
*/

ul.orderArea01 > li:not(:last-child)::before {
	content: '';
	position: absolute;
	/*left: 50%;*/
	left: 11%;
	top: 100%;
	transform: translateX(-50%);
	width: 30px;
	height: 53px;
	background: var(--color02);
	z-index: -1;
}
ul.orderArea01 > li.arrow01::before {
	height: 33px;
}


ul.orderArea01 > li.arrow01::after {
	content: '';
	width: 60px;
	height: 20px;
	position: absolute;
	/*left: 50%;*/
	left: 11%;
	transform: translateX(-50%);
	top: calc(100% + 29px);
	background: url("../images/order_arrow.svg") no-repeat center bottom;
	/*background: url("../images/arrow01.gif") no-repeat center bottom;*/
	background-size: 100% auto;
}




ul.orderArea01 > li > .imgArea {width: 160px;}
ul.orderArea01 > li > dl {
	/*text-align: center;*/
	width: calc(100% - 200px);
}
ul.orderArea01 > li > dl > dt {
	font-size: 1.5em;
	font-weight: 600;
	color: #666;
}
ul.orderArea01 > li.order > dl > dt  {
	color: #e60012;
	color: var(--color02);
}
ul.orderArea01 > li.reply > dl > dt  {
	color: #0068b7;
	color: var(--color01);
}
ul.orderArea01 > li:last-child > dl > dt  {color: var(--color03);}


ul.orderArea01 > li > dl > dd {}
ul.orderArea01 > li > dl > dd .cap {margin-top: 10px; color: #e60012;}

ul.orderArea01 > li > dl > dt + dd {margin-top: 10px;}
ul.orderArea01 > li > dl > dt + dd strong {font-weight: 600; font-size: 1.1em; color: #D40F13}

/*ul.orderArea01 > li figure {width: 90px; margin: auto;}*/
ul.orderArea01 > li.reply figure {width: 100px; margin: auto;}

@media screen and (max-width: 920px){
	ul.orderArea01 > li:not(:last-child)::before {left: 50%;}
	ul.orderArea01 > li.arrow01::after {left: 50%}
}

@media screen and (max-width: 748px){
	ul.orderArea01 > li > .imgArea {width: 100px;}
	ul.orderArea01 > li > dl {width: calc(100% - 140px);}
	ul.orderArea01 > li.reply figure {width: 70px;}
	ul.orderArea01 > li > dl > dt {font-size: 1.3em;}

}

@media screen and (max-width: 560px){
	ul.orderArea01 > li {display: block;}
	ul.orderArea01 > li > dl {width: calc(100%); margin-top: 10px; text-align: center;}
	ul.orderArea01 > li > .imgArea {margin: auto;}
}


@media screen and (max-width: 480px){
	ul.orderArea01 > li > dl > dd br.sp {display: inline-block;}
}
@media screen and (max-width: 420px){
	ul.orderArea01 > li {padding: 20px 10px;}
	ul.orderArea01 > li > dl figure {width: 70px;}
	ul.orderArea01 > li.reply > dl figure {width: 40px;}
	
	
	ul.orderArea01 > li:not(:last-child){margin-bottom: 40px;}

ul.orderArea01 > li:not(:last-child)::before {
	width: 20px;
	height: 42px;
}

ul.orderArea01 > li.arrow01::after {
	width: 50px;
	height: 16px;
}
	ul.orderArea01 > li.arrow01::before {height: 28px;}
	ul.orderArea01 > li.arrow01::after {
    top: calc(100% + 24px);
	}
	ul.orderArea01 > li > dl > dt {font-size: 5.2vw;}
	
	ul.orderArea01 > li > .imgArea {width: 70px;}
	ul.orderArea01 > li.reply figure {width: 50px;}
	
	ul.orderArea01 > li > dl  dd p {text-align: left;}
	ul.orderArea01 > li > dl  dd p br {display: none;}
	
}
@media screen and (max-width: 350px){
	ul.orderArea01 > li > dl > dd br.sp02 {display: inline-block;}
}


#overflow .addCnt {
	box-sizing: border-box;
	padding: 30px;
	/*background: #f1f3f4;*/
	background: #f8f4e7;
	margin-top: 50px;
	/*margin-bottom: 60px;*/
	border-radius: 10px;
	border: 10px solid #fff;
}
#overflow .addCnt em {display: block; font-size: 1.4em; font-weight: 600; text-align: center; margin-bottom: 25px; color: #a19361; line-height: 1.4;}

#overflow .addCnt > ul {}
#overflow .addCnt > ul > li {}
#overflow .addCnt > ul > li:not(:last-child) {margin-bottom: 15px; padding-bottom: 15px; border-bottom: 2px dotted rgba(0,0,0,0.3);}
#overflow .addCnt > ul > li > dl {}
#overflow .addCnt > ul > li > dl > dt {font-size: 1.0em; font-weight: 500; margin-bottom: 10px;}
#overflow .addCnt > ul > li > dl > dd {}

@media screen and (max-width: 460px){
	#overflow .addCnt em {font-size: 1.3em;}
}
@media screen and (max-width: 400px){
	#overflow .addCnt {padding: 15px;}
	/*#overflow .addCnt em {font-size: 5vw;}*/
	#overflow .addCnt em  .sp {display: inline;}
}








.sign {width: calc(100% - 400px)}
.sign ul {margin-top: 20px; border-top: 1px solid #333; padding-top: 20px}
.sign ul li {display: flex; align-items: center; justify-content: space-between;}
.sign ul li:not(:last-child) {margin-bottom: 20px;}

.sign ul li:first-child {justify-content: flex-end}
.sign ul li:first-child > span {display: inline-block;}
.sign ul li:first-child > span input {margin-right: 5px;}
.sign ul li:first-child > span:not(:first-child) {margin-left: 10px;}

.sign ul li > div {}
.sign ul li > div:first-child { width: 50px}
.sign ul li > div:first-child::after {content: '：';}
.sign ul li > div:last-child {width: calc(100% - 50px)}


@media screen and (max-width: 748px){
	#index .btmArea .fbox01 {display: block;}
	.contact {margin: auto;}
	.sign {width: 100%; margin-top: 40px;}
}


@media screen and (max-width: 360px){}

/***** index *****/




/*** permission ***/
#permission {}
.permissionArea {
	position: relative;
	/*border: 1px solid #333;*/
	box-sizing: border-box;
	padding: 50px;
	/*
	background: var(--bg2);
	border: 1px solid rgba(255,255,255,0.06);
	*/
	background: #fff;
	border-radius: 5px;
}
.permissionArea::before {
	 content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196, 154, 60, 0.5), transparent);
opacity: 0.5;
}

.permissionArea h3 {
	margin-bottom: 20px;
	font-size: 1.4em;
	font-weight: 500;
	text-align: center;
}
.permissionArea > ul {
	
}
.permissionArea > ul > li {margin-left: 20px;}
.permissionArea > ul > li:not(:last-child) {margin-bottom: 25px;}
.permissionArea > ul > li > dl {}
.permissionArea > ul > li > dl > dt {position: relative; font-weight: 500; margin-bottom: 5px; color: var(--fg3);}
.permissionArea > ul > li > dl > dt::before {
	content: '■';
	position: absolute;
	right: calc(100% + 5px);
	top: 0;
	
}
.permissionArea > ul > li > dl > dd {
	color: var(--fg3);
}

@media screen and (max-width: 520px){
	#permission main {margin-bottom: 30px;}
}

@media screen and (max-width: 500px){
	#permission .wrap {padding: 0 15px;}
}
@media screen and (max-width: 680px){
	.permissionArea {padding: 15px;}
	.permissionArea h3 {padding-top: 30px; margin-bottom: 40px;}
	.permissionArea h3 br.sp {display: inline-block;}
}

/*** permission ***/






ul.shtArea { /*border: 3px solid #333;*/ box-sizing: border-box; }
ul.shtArea > li {
	box-sizing: border-box;
	
	background: rgba(255,255,255,1);
	
	/*background: var(--bg3);*/
	border-radius: 5px;
	padding: 10px;
	/*padding: 30px;*/
	/*border: 1px solid rgba(255,255,255,0.06);*/
	position: relative;
	background: #fff;
}

/*
ul.shtArea > li::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196, 154, 60, 0.5), transparent);
opacity: 0.5
}
*/

ul.shtArea > li:not(:last-child) {
	
	margin-bottom: 10px;
}
ul.shtArea > li > dl {display: flex; justify-content: space-between;}

ul.shtArea > li > dl > dt, ul.shtArea > li > dl > dd {
	box-sizing: border-box;
	padding: 20px 10px;
}
@media screen and (max-width: 940px){
	ul.shtArea > li > dl > dt, ul.shtArea > li > dl > dd {padding: 30px 15px}
}

ul.shtArea > li > dl > dt {
	/*width: 150px;*/
	width: 220px;
	font-weight: 600;
	/*border-right: 1px solid rgba(0,104,182, 0.7);*/
	/*border-right: 1px solid var(--accent);*/
	text-align: center;
	/*color: #0068b6;*/
	color: var(--color06);
	/*color: var(--fg);*/
	/*font-size: 1.1em;*/
	letter-spacing: 0.1em;
}

ul.shtArea > li > dl > dt small {font-size: 11px; width: 100%; display: inline-block; letter-spacing: 0;}



ul.shtArea > li > dl > dd {
	/*width: calc(100% - 160px);*/
	width: calc(100% - 220px);
	color: var(--fg);
}

@media screen and (max-width: 748px){
	ul.shtArea > li > dl {display: block;}
	ul.shtArea > li > dl > dt, ul.shtArea > li > dl > dd {width: 100%;}
	ul.shtArea > li > dl > dt {
		text-align: left;
		/*padding: 10px 20px 6px;*/
		/*padding: 10px 0px;*/
		padding: 5px 0px 0;
		/*margin-bottom: 15px;*/
		border-right: none;
		font-size: 1.1em;
		/*border-bottom: 1px solid rgba(122, 184, 176, 0.4);*/
		border-bottom: 2px solid var(--color01);
	}
	#entry ul.shtArea > li > dl > dt {margin-bottom: 5px; }
	ul.shtArea > li > dl > dd {
		/*padding: 0px 20px 20px;*/
		padding: 10px 0px;
	}
	ul.shtArea > li > dl > dt > span {}
	ul.shtArea > li > dl > dt > span br {display: none;}
	ul.shtArea > li > dl > dt small {position: static; width: auto; margin-left: 5px;}
}
@media screen and (max-width: 420px){
	/*
	ul.shtArea > li > dl > dt {
		padding: 10px 10px 6px;
	}
	ul.shtArea > li > dl > dd {padding: 0px 10px 20px;}
	*/
	/*ul.shtArea > li > dl > dt, ul.shtArea > li > dl > dd  {padding: 5px 0px;}*/
}



ul.shtArea > li > dl > dd div {}
ul.shtArea > li > dl > dd div input, ul.shtArea > li > dl > dd div select {margin-right: 7px;}
ul.shtArea > li > dl > dd div font {display: inline-block; margin-right: 5px;}
ul.shtArea > li > dl > dd div p.cap {margin-top: 5px;}

@media screen and (max-width: 350px){
	ul.shtArea > li > dl > dd div span { margin-right: 5px}
}


ul.shtArea > li.error {
	/*background:#eaa3a4;*/
}
ul.shtArea > li.error > dl > dt {color: var(--color05);}

.errorTxt01 {color: var(--color05); margin-top: 5px;}

.error input[type="text"]:not(:focus), .error input[type="search"]:not(:focus), .error select:not(:focus) {
	border: 1px solid var(--color05);
}




.inList01 {}
.inList01 > li {}
.inList01 > li:not(:last-child) {margin-bottom: 20px; border-bottom: 2px dotted rgba(0,0,0, 0.2); padding-bottom: 15px;}
.inList01 > li:not(.noFlex) > dl {display: flex;}
.inList01 > li:not(.noFlex) > dl > dt {
	/*width: 80px;*/
	width: 100px;
}
.inList01 > li:not(.noFlex) > dl > dt, .fbTxt01 {font-weight: 500; color: var(--fg); }

.inList01 > li:not(.noFlex) > dl > dd {
	/*width: calc(100% - 80px);*/
	width: calc(100% - 100px);
}

.inList01 > li.noFlex > dl {}
.inList01 > li.noFlex > dl dt {margin-bottom: 10px; }


@media screen and (max-width: 540px){
	.inList01 > li:not(.noFlex) > dl > dt { width: 75px;}
	.inList01 > li:not(.noFlex) > dl > dd {width: calc(100% - 75px);}
}

@media screen and (max-width: 370px){
	.egContact ul.inList01 ul.inList01 > li:not(.noFlex) > dl {display: block;}
	.egContact ul.inList01 ul.inList01 > li:not(.noFlex) > dl > dt {margin-bottom: 5px;}
	.egContact ul.inList01 ul.inList01 > li:not(.noFlex) > dl > dd {width: 100%;}
}

.inList02 {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
.inList02 li {margin: 0px 15px 15px 0;}


.inList03 li:not(:last-child) {margin-bottom: 15px;}


.inList04 {}
.inList04 > li {}
.inList04 > li:not(:last-child) {margin-bottom: 15px;}
.inList04 > li > dl {}
.inList04 > li > dl > dt {
	font-weight: 500;
	margin-bottom: 5px;
	/*border-bottom: 1px solid rgba(0, 0, 0, 0.2);*/
	border-bottom: 2px dotted rgba(0, 0, 0, 0.3);
	/*color: #0068b6;*/
	color: #4C7683;
	color: var(--fg);
}
.inList04 > li > dl > dt::before {
	content: '■';
	display: inline-block;
	margin-right: 5px;
	color: var(--fg3);
}

.inList04 > li > dl > dd {}





ul.shtArea > li.listArea01 dl dd   {
	/*margin-bottom: 0;*/
	/*padding-bottom: 15px;*/
}
/*
li.listArea01 > dl > dd {padding-bottom: 15px!important; position: relative;}
*/
.leftBrd dt {position: relative;}


.leftBrd dt::before {
	content: '';
	width: 1px;
	height: calc(100% - 15px);
	background: #333;
	position: absolute;
	top: 0;
	right: 0;
}
li.listArea01 > dl > dd ul.inList02 {border-left: none;}


.schBtn {display: inline-block; margin-left: 10px; margin-right: 0;}
.schBtn a {
	background: #2a9c0b;
	display: block;
	border-radius: 5px;
	padding: 10px 10px;
	color: #fff;
	font-size: 0.9em;
	letter-spacing: 0.1em;
	transition: all 0.3s ease;
	line-height: 1.2;
	box-sizing: border-box;
}

.schBtn a:hover{opacity: 0.6;}
@media screen and (max-width: 420px){
	.postCodeArea {
		display: flex;
		align-items:flex-start;
	}
	.schBtn {margin-left: 0px; margin-top: -3px; }
	.schBtn a {padding: 4px; font-size: 0.84em; border-radius: 3px;}
	.schBtn a span {margin-right: 0!important;}
	.schBtn a .sp {display: inline;}
	
}



.access {}
ul.shtArea > li.access > dl > dd > div:not(:first-child) {margin-top: 15px; padding-top: 20px; border-top:1px solid #333;}

.access .part01 {}
.access .part01 span {position: relative;}
.access .part01 span small {position: absolute; font-size: 11px; bottom: 100%; left: 0;}

.access .part03 {}
ul.shtArea > li > dl > dd div  div {display: inline-block;}


@media screen and (max-width: 580px){
.access .part01 span {display: block; }
.access .part01 span:not(:first-child) {margin-top: 20px;}
}
@media screen and (max-width: 420px){
	.access .part03 > div > span {display: block; margin-right: 0;}
	.access .part03 > div:first-child > span {margin-bottom: 10px;}
	.access .part03 > div:first-child > span input {width: 60px!important;}
}




.payee {}
ul.shtArea > li.payee > dl > dd div > p:not(.cap) {margin-bottom: 20px;}
.payee p.cap {margin-top: 20px!important;}
@media screen and (max-width: 1140px){
	.payee .part02 {display: block; margin-top: 20px;}
}

@media screen and (max-width: 420px){
	
}



ul.resume {}
ul.resume > li {}
ul.resume > li:not(:first-child) {margin-top: 30px;}
ul.resume > li > ul {display: flex; flex-wrap: wrap;}
ul.resume > li > ul > li {position: relative;}



ul.resume > li > ul > li:not(:last-child) {margin-right: 10px;}
ul.resume > li > ul > li small {
	position: absolute;
	bottom: calc(100% + 3px);
	left: 0;
	font-size: 12px;
}

ul.resume > li > ul > li:nth-child(1) {width: calc(25% - 40px);}
ul.resume > li > ul > li:nth-child(2) {width: calc(16% - 40px);}
ul.resume > li > ul > li:nth-child(3) {width: calc(25% - 40px);}
ul.resume > li > ul > li:nth-child(4) {width: calc(25% - 40px);}
ul.resume > li > ul > li:nth-child(5) {width: 120px;}
ul.resume > li > ul > li:nth-child(6) {
	/*width: 10%;*/
	width: 40px;
	text-align: center;
}
ul.resume > li > ul > li:nth-child(6) input {margin-right: 0!important;}

@media screen and (max-width : 733px ){
	ul.resume > li > ul {justify-content: space-between;}
	ul.resume > li > ul > li {width: calc(50% - 5px)!important; margin-top: 20px; display: flex; text-align: left!important;}
	ul.resume > li > ul > li:not(:last-child) {margin-right: 0;}
	ul.resume > li > ul > li small {position: static; display: inline-block; margin-right: 5px; width: 60px;}
	ul.resume > li > ul > li small + input {width: calc(100% - 60px)}
}
@media screen and (max-width: 400px){
	ul.resume > li > ul > li {width: 100%!important;}
	ul.resume > li > ul > li:nth-child(5), ul.resume > li > ul > li:nth-child(6) {width: 100%!important;}
}


.period {}
.period font {font-size: 0.8em;}
.period input {margin-right: 0px!important}



.reason {}
.reason .leftBrd dd {padding-bottom: 0!important;}


.upPic > dl > dd > div {/*box-sizing: border-box; padding: 30px;*/ display: flex; /*justify-content: space-between;*/}

.upPic > dl > dd > div > .leftArea {}
.upPic > dl > dd > div > .leftArea dl {}
.upPic > dl > dd > div > .leftArea dl > dt {}
.upPic > dl > dd > div > .leftArea dl > dt span {margin-right: 0}
.upPic > dl > dd > div > .rightArea { /*width: calc(100% - 300px)*/}
.upPic > dl > dd > div > .rightArea div.imgArea {
	width: 120px;
	box-sizing: border-box;
	
	height: 100%;
	min-height: 150px;
	/*min-height: 180px;*/
	/*margin: auto;*/
	text-align: center;
	margin-left: 50px;

	
}

.upPic > dl > dd > div > .rightArea div.imgArea::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 2px solid #333;
	box-sizing: border-box;
}

.upPic > dl > dd > div dl {/*display: flex; align-items: center;*/}
.upPic > dl > dd > div dl > dt {/*font-weight: 500;*/ /*margin-right: 30px; width: 300px;*/ margin-bottom: 15px;}

.upPic > dl > dd > div dl > dd {background: #eee; box-sizing: border-box; padding: 10px; /*width: calc(100% - 300px);*/}


#app {/*display: flex; align-items: center;*/ display: block;}

#app label {
    padding: 10px 10px;
    color: #ffffff;
    background-color: #384878;
    cursor: pointer;
	
	width: 100%;
	display: block;
	box-sizing: border-box;
	text-align: center;
	
}

#app input[type="file"] {
    display: none;
}

#app p {
    margin: 10px 0 0 0px;
	font-size: 12px;
}


@media screen and (max-width: 440px){
	.upPic > dl > dd > div {display: block;}
	.upPic > dl > dd > div > .leftArea {width: 100%; margin-bottom: 20px;}
	.upPic > dl > dd > div > .rightArea {width: 100%; display: block;}
	.upPic > dl > dd > div > .rightArea div.imgArea {margin: auto; display: block; }
}




#agree { max-width: 520px; width: 100%; margin: auto; margin-bottom: 50px; padding: 0 35px; box-sizing: border-box; display: flex; justify-content: center;}

#agree label div {display: flex; justify-content: space-between;  position: relative; }
#agree label span {display: inline-block; margin-left: 10px;}


.nextBtn {}
.nextBtn a {}
.nextBtn a.noncheck, .nextBtn button.noncheck  {
	pointer-events: none;
	opacity: 0.3;
}


.allNeed {
	text-align: center;
	margin-bottom: 25px;
	font-size: 1.1em;
	color: var(--color05);
}


.aviInfo01 {}
ul.shtArea > li.aviInfo01 > dl > dd div div {display: block; margin-top: 5px;}

.skill {}
.skill .other {margin-top: 20px; width: 100%;}
.skill .other label {display: flex;}
/*.skill .other input {width: calc(100% - 170px)}*/
.skill .other label > div {width: calc(100% - 170px)}
@media screen and (max-width: 620px){
	.skill .inList02 {display: block;}
	.skill ul li span {}
/*.skill ul li:nth-child(2) span::after {content: '　';}*/
}
@media screen and (max-width: 420px){
	.skill .other label {display: block;}
	.skill .other label > div {display: block; width: 100%; margin-top: 5px;}
}






/*
.awareness {}
.awareness .other {
	margin-left: 10px;
	display: none;
}
.awareness .other.chose {display: inline-block; }
*/
.awareness {}
.awareness .other {
	/*margin-left: 10px;*/
	display: none;
	width:30%;
}
.awareness .other input {margin-right: 0!important; }
.awareness .other.chose {display: inline-block; }

@media screen and (max-width: 1080px){
	.awareness .other { margin-top: 10px; width: 100%; max-width: 300px;}
}
@media screen and (max-width: 480px){
	.awareness select {width: 100%;}
}








/* confirm */
.cfmList01 {}
.cfmList01 > li:not(:last-child) {
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom: 2px dotted rgba(0, 0, 0, 0.2);
}

#confirm .skill .other > div {display: block!important;}


span.inlName + span {display: inline-block;}
span.inlName {margin-right: 5px;}



/* complete */

#complete {min-height: 100vh;}
.finish {}
.finish div {
	text-align: center;
	font-size: 2em;
	letter-spacing: 0.1em;
	font-weight: 500;
	margin-bottom: 20px;
}
.finish p {text-align: center; color: var(--fg3);}

@media screen and (max-width: 360px){
	.finish p {text-align: left;}
	.finish p br {display: none;}
}



.contact {}
.contact .inWrap  {
	position: relative;
	max-width: 800px;
	width: calc(100% - 40px);
	margin: 40px auto 40px;
	box-sizing: border-box;
	padding: 50px 30px;
	/*background: var(--bg3);*/
	background: #fff;

	/*border: 1px solid rgba(255,255,255,0.06);*/
	text-align: center;
	border-radius: 5px;
}


/*
.contact .inWrap::after {
	content: '';
   background: linear-gradient(90deg, transparent, var(--fg2), transparent);
    height: 1px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translate(-50%);
    width: 280px;
}
*/



/*
.contact .inWrap {
	box-sizing: border-box;
	border: 1px solid #000;
	padding: 30px 10px;
	position: relative;
	text-align: center;
}
*/
.contact .inWrap .cTitle {

	font-size: 1.8em;
	font-weight: 500;


	box-sizing: border-box;
	padding: 0 10px;
	margin-bottom: 20px;

}
.contact .inWrap .cEmail {margin-top: 20px;}
@media screen and (max-width: 480px){
	.contact .inWrap  {
		padding: 30px 20px;
	}
	.contact .inWrap .cTitle {font-size: 1.5em;}
}





.pSite { margin-top: 5px; display: block!important;}
.pSite a {font-size: 0.8em;  position: relative; color: var(--fg);}
.pSite a::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 1px;
	top: 100%;
	left: 0;
	background: var(--fg);
	transition: all 0.3s ease;
}
.pSite a:hover::after{
	width: 0;
}

.pSite a span {font-weight: 400; letter-spacing: 0.05em; display: inline-block;}
.pSite a span::before {
	content: '';
	width: 14px;
	height: 14px;
	display: inline-block;
	background: url("../images/newWindow.svg") no-repeat center center;
	margin-right: 5px;
	position: relative;
	top: 2px;
}






/**** テスト用 ****/
#testIndex {min-height: 100vh}
.testtopTxt {font-size: 2em; font-weight: bold; text-align: center; margin-bottom: 50px; color: #666 /*rgba(230,0,18,1)*/;}

ul.producers {
	display: flex;
	justify-content: space-between;
	max-width: 780px;
	width: 100%;
	margin: auto;
}
ul.producers > li {
	width: calc(33.33% - 10px);
	max-width: 240px;
	box-sizing: border-box;
	padding: 10px;
	border-radius: 5px;
	background: #f1f3f4;
}
ul.producers > li div {display: block;}
ul.producers > li div.tArea {margin-top: 5px;}
ul.producers > li div.tArea span {display: block; text-align: center; margin-right: 0; font-weight: 500;}

ul.producers > li a {transition: all 0.3s ease;}
ul.producers > li a:hover {opacity: 0.5;}

ul.producers > li a div.tArea span.pName {font-size: 0.8em; color: #181818;}
ul.producers > li a div.tArea span.pTitle {color: #0068b6;}



@media screen and (max-width: 730px){
	ul.producers {display: block;}
	ul.producers > li {width: 100%; margin-bottom: 15px; max-width: none;}
	ul.producers > li a {display: flex; align-items: center;}
	ul.producers > li a .tArea {text-align: center; box-sizing: border-box; padding: 0 0px 0 20px;}
	ul.producers > li div.tArea span {text-align: left;}
}
@media screen and (max-width: 600px){
	ul.producers > li a .imgArea {width: 30vw;}
	ul.producers > li a .tArea { padding: 0 0px 0 10px;}
}




/*****************/





.eLogo {text-align: center; margin-top: 50px;}

.eLogo .imgArea {opacity: 1; transition: all 0.5s ease;}
.eLogo.active .imgArea {opacity: 1;}


.imgArea video {width: 100%;}







#player2 {}
#player2 {width: 100%}

.movieArea {
	box-sizing: border-box;
	padding: 20px;
	/*border: 1px solid #666;*/
	border-radius: 20px;
	background: rgba(0,0,0,0.05);
	box-shadow: 0px 3px 5px 1px rgba(0, 0, 0, 0.2);
	margin-bottom: 60px;
}

.movieArea .video {
	border-radius: 16px;
	overflow: hidden;
}

.movieArea .tArea {margin-top: 15px;}
.movieArea .tArea dl{}
.movieArea .tArea dl dt{margin-bottom: 10px;}
.movieArea .tArea dl dt em{display: block; font-style: normal; font-size: 1.6em; font-weight: 500; color: #18277C;}
.movieArea .tArea dl dt em small {font-size: 0.6em;}
.movieArea .tArea dl dt span {display: block; font-size: 0.9em;}
.movieArea .tArea dl dd{}
@media screen and (max-width: 640px){
	.movieArea {padding: 10px;}
}



.tests {background: #ffffff0d;}


.closebtn {
	max-width: 300px;
	width: 90%;
	margin: auto;
	text-align: center;
	font-size: 1.4em;
	background: rgba(255,255,255,0.3);
	/*background: var(--fg);*/
	box-sizing: border-box;
	padding: 20px 10px;
	color: #fff;
	opacity: 0.7;
}

.close_txt {
	/*
	background: rgba(255,255,255,0.75);
	color: #181818;
	*/
	border: 1px solid #fff;
	color: #fff;
	
	box-sizing: border-box;
	padding: 20px 10px;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	max-width: 520px;
	width: 100%;
	margin: auto;
	margin-bottom: 60px;
}
@media screen and (max-width: 420px){
	.close_txt {font-size: 4.6vw;}
	/*.close_txt br.sp {display: inline; }*/
}

















#login {}
#login .mArea {max-height: 600px;}
.loginArea {}
ul.loginArea {
	max-width: 600px;
	margin: auto;
	/*border: 1px solid #333;*/
	box-sizing: border-box;
	padding: 60px 30px;
	/*background: var(--bg3);*/
	background: #fff;
}
ul.loginArea > li:not(:last-child) {margin-bottom: 40px;}
ul.loginArea > li > dl {display: flex; justify-content: space-between; align-items:flex-start;}
ul.loginArea > li > dl > dt {
	width: 120px;
	position: relative;
	font-size: 1.1em;
	text-align: right;
	padding-right: 20px;
}
ul.loginArea > li > dl > dt::after {
	content: '：';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
ul.loginArea > li > dl > dd {
	width: calc(100% - 130px);
}
ul.loginArea > li > dl > dd p.cap {margin-top: 5px}
/*
#login.password {}
#login.password .container > ul > li > dl > dt {width: 170px;}
#login.password .container > ul > li > dl > dd {width: calc(100% - 180px);}
*/

@media screen and (max-width: 900px){
	ul.loginArea > li > dl > dt {width: 100px;}
	ul.loginArea > li > dl > dd {width: calc(100% - 110px);}
}


@media screen and (max-width: 930px){
	ul.loginArear {padding: 50px 30px;}
}
@media screen and (max-width: 520px){
	ul.loginArea {padding: 30px 15px; margin-bottom: 40px;}
	ul.loginArea > li:not(:last-child) {margin-bottom: 20px;}
	ul.loginArea > li > dl {display: block;}
	ul.loginArea > li > dl > dt {width: 120px; text-align: left; margin-bottom: 5px;}
	ul.loginArea > li > dl > dd {width: calc(100%);}
	ul.loginArea > li > dl > dt::after {
	position: static;
	transform: translateY(0%);
}
}


#useName {margin-bottom: 30px;}
#useName > div {text-align: center; font-weight: 500; font-size: 1.2em;}

.fgt_pw {text-align: center; margin-top: 30px;}
.fgt_pw a:hover {text-decoration: underline;}






/*****************/
.addBtn {margin-top: 20px; text-align: center; width: 100%;}
.addBtn .addTxt {
	display: inline-block;
	background: #2a9c0b;
	color: #fff;
	box-sizing: border-box;
	padding: 2px 20px 2px 40px;
	/*border-radius: 20px;*/
	position: relative;
	cursor: pointer;
	transition: all 0.3s ease;
	letter-spacing: 0.15em;

}

.addBtn .addTxt:hover {
	opacity: 0.6;
}

.addBtn .addTxt::before {
	content: '+';
	position: absolute;
	top: 4px;

	left: 18px;
	font-size: 1.3em;
	line-height: 1
}

.workHistory {}
.workHistory > li:not(:last-child) {margin-bottom: 10px;}


.finish {}
@media screen and (max-width: 480px){
	.finish p.cap {text-align: left;}
}




.aBack {display: flex; flex-wrap: wrap;}
.aBack > li {}
.aBack > li:not(:last-child) {margin-right: 5px;}
.aBack > li:nth-child(1) {width: 90px;}
.aBack > li:nth-child(2) {width: 50px;}
.aBack > li:nth-child(3) {width: calc(100% - 200px)}


@media screen and (max-width: 540px){
	.aBack > li:nth-child(1) {width: 70px;}
	.aBack > li:nth-child(2) {width: 40px;}
	.aBack > li:nth-child(3) {width: calc(100% - 170px)}
}
.workHistory {}
.workHistory > li:not(:last-child) {margin-bottom: 10px;}


.workHistory > li > ul {display: flex; flex-wrap: wrap;}
.workHistory > li > ul > li {}
.workHistory > li > ul > li:nth-child(1) {width: 90px;}
.workHistory > li > ul > li:nth-child(2) {width: 50px;}
.workHistory > li > ul > li:nth-child(3) {width: calc(100% - 200px)}
.workHistory > li > ul > li:nth-child(4) {
	width: 40px;
	color: #fff;
	position: relative;
	top: -3px;
}

@media screen and (max-width: 540px){
	.workHistory > li > ul > li:nth-child(1) {width: 70px;}
	.workHistory > li > ul > li:nth-child(2) {width: 40px;}
	.workHistory > li > ul > li:nth-child(3) {width: calc(100% - 150px)}
	.workHistory > li > ul > li:nth-child(4) {
		width: 20px;
		color: #fff;
		position: relative;
		top: -3px;
}
}


.workHistory > li > ul > li.removeBtn {}
.workHistory > li > ul > li.removeBtn::before, .certifiedList > li > ul > li.removeBtn::before {
	content: '';
	width: 30px;
	height: 30px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	/*background:#999;*/
	background: #00000068;
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.3s ease;
	box-sizing: border-box;
	border: 1px solid rgba(255,255,255,0.1);
}
.workHistory > li > ul > li.removeBtn:hover::before, .certifiedList > li > ul > li.removeBtn:hover::before {
	background: #000;
}
.workHistory > li > ul > li.removeBtn span, .certifiedList > li > ul > li.removeBtn span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	pointer-events: none;
}


@media screen and (max-width: 540px){
	.workHistory > li > ul > li.removeBtn::before, .certifiedList > li > ul > li.removeBtn::before {
	width: 20px;
	height: 20px;
}
}



.workHistory > li > ul > li:not(:last-child) {margin-right: 5px;}







/*** mail ***/


/*
a.js-contact-btn {
	color: #0B1EB4;
	text-decoration: underline;
	cursor: pointer;
}
a.js-contact-btn:hover {
	text-decoration: none;
}
*/

a.js-contact-btn {cursor: pointer;}

dialog {
  border: none;
  border-radius: 8px;
  padding: 0;
  width: 90%;
  max-width: 500px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	transition: 0.3s;
	margin: auto;
	
}
dialog::backdrop {
  background: rgba(0, 0, 0, 0.6); /* 背景を暗くする */
	backdrop-filter: blur(4px);
	transition: 0.3s;
}

/* 開いた時のスタイル */
dialog[open] {
  opacity: 1; transform: scale(1);
}
dialog[open]::backdrop {opacity: 1;}
/* エントリアニメーションの開始点 */
@starting-style {
  dialog[open] { opacity: 0; transform: scale(0.9); }
	dialog[open]::backdrop {opacity: 0;}
}


.modal-inner {
  padding: 24px;
}

dialog h2 {text-align: center; margin-bottom: 10px; font-size: 1.3em; color: #1f5c9d;}

.form-group {
  margin-bottom: 16px;
}
.form-group label {
  display: block;
  font-weight: 500;
  margin-bottom: 8px;
	text-align: left;
}
.required {
  color: #E30307;
  font-size: 0.8rem;
  margin-left: 4px;
}
.form-group input,
.form-group textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
	transition: all 0.3s ease;
}
.form-group input:focus,
.form-group textarea:focus {
	border: 1px solid #000;
	outline: none!important;
}

.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 24px;
}
.btn-primary { background: #2a9c0b; color: #fff; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; transition: all 0.3s ease;}
.btn-secondary { background: #ccc; color: #333; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; transition: all 0.3s ease;}
.btn-primary:hover, .btn-secondary:hover {opacity: 0.5}

@media screen and (max-width: 620px) {
}


.hoshi {display: none}








/*** mail ***/


/*
a.js-contact-btn {
	color: #0B1EB4;
	text-decoration: underline;
	cursor: pointer;
}
a.js-contact-btn:hover {
	text-decoration: none;
}
*/

a.js-contact-btn {cursor: pointer;}

dialog {
  border: none;
  border-radius: 8px;
  padding: 0;
  width: 90%;
  max-width: 500px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	transition: 0.3s;
	margin: auto;
	
}
dialog::backdrop {
  background: rgba(0, 0, 0, 0.6); /* 背景を暗くする */
	backdrop-filter: blur(4px);
	transition: 0.3s;
}

/* 開いた時のスタイル */
dialog[open] {
  opacity: 1; transform: scale(1);
}
dialog[open]::backdrop {opacity: 1;}
/* エントリアニメーションの開始点 */
@starting-style {
  dialog[open] { opacity: 0; transform: scale(0.9); }
	dialog[open]::backdrop {opacity: 0;}
}


.modal-inner {
  padding: 24px;
}

dialog h2 {text-align: center; margin-bottom: 10px; font-size: 1.3em; color: #1f5c9d;}

.form-group {
  margin-bottom: 16px;
}
.form-group label {
  display: block;
  font-weight: 500;
  margin-bottom: 8px;
	text-align: left;
}
.required {
  color: #E30307;
  font-size: 0.8rem;
  margin-left: 4px;
}
.form-group input,
.form-group textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
	transition: all 0.3s ease;
}
.form-group input:focus,
.form-group textarea:focus {
	border: 1px solid #000;
	outline: none!important;
}

.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 24px;
}
.btn-primary { background: #2a9c0b; color: #fff; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; transition: all 0.3s ease;}
.btn-secondary { background: #ccc; color: #333; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; transition: all 0.3s ease;}
.btn-primary:hover, .btn-secondary:hover {opacity: 0.5}

@media screen and (max-width: 620px) {
}





