/*site extension*/
:root {
	--footer-bg-color: #d1cfc9;
	--cl-background: #FFFFFF;
	--cl-pageink: #000;
	--cl-pageink-link: #000;
	--cl-pageink-hover: #4a4a4a;
	--cl-pageink-active: #747474;
	--cl-apply: #00c9ff;
	--share-space: 2.4rem;
	--share-padding: 1.4em;
	--share-smp-space: 1.6rem;
	--share-smp-padding: 1.8rem;
	--bindwrap-width: 1060px;
	--contents-width: 800px;
	--share-padding-l: 1.4em;
	--share-padding-c:　2em;
	--cl-tag: #f1f1f1;
	--cl-section-bg: #e9e7e7;
	--cl-text: #999999;
	--cl-menu-a: #7d7d7d;
	--cl-text-s: #7d7d7d;
	--cl-dl: #808080;
	--cl-hover: #aca89b;
}

/**/
.flex {
	display: flex;
}
.space-between {
	justify-content: space-between;
}
.font_caco {
	font-family: var(--font-caco);
}
.font_num {
    font-family: var(--font-num);
}
.lgm, 
.font_logo {
	font-family: var(--font-logo);
	line-height: 1;
	letter-spacing: 0.1em;
}
.lgm {
	font-size: 3.9375em;
}
p {
	letter-spacing: 0.1em;
}
@media screen and (max-width: 640px) {
	.lgm {
		font-size: 1.56em;
	}
	h2 {
		margin-bottom: 0.95em;
	}
	p {
		font-size: 12px;
	}
	.bt {
		font-size: 12px;
	}
}
@media screen and (max-width: 320px) {
	h2 {
		font-size: 5.65vw;
	}
	p {
		font-size: 3.15vw;
	}
	.lgm {
		font-size: 6.25vw;
	}
	.bt {
		font-size: 3.52vw;
		padding: 1.8em 2.25em;
	}
}

/*------------------------*/
body > main {
	margin-top: 12.25em;
	margin-bottom: 18em;
}
@media screen and (max-width: 640px) {
	body > main {
		margin-top: 6.75em;
		margin-bottom: 10.75em;
	}
}

/*Main img------------------------*/
.vis-face:nth-of-type(1) {
	background-color: #FFFFFF;
}
.vis-face .bindwrap {
	overflow: initial;
}
.vis-face .cover {
	display: flex;
	height: auto;
	top: initial;
	bottom: 0;
	font-size: 1em;	
	align-items: center;
	text-align: left;
	background-color: #FFFFFF;
}
	.vis-face .cover > div {
		display: inline-block;
		text-align: left;
		background-color: #FFFFFF;
		transition: opacity 1s ease-in-out 1s;
	}
		.vis-face .cover > div > * {
			width: 100%;
			color: #000;
			text-shadow: none;
			margin-bottom: 0;
		}
.vis-face .canvas .bgi {
	width: 100%;
}
@media screen and (min-width: 641px) {
	.vis-face .cover {
		width: 40.6%;
		min-width: 28.4em;
		bottom: -5.25em;
	}
		.vis-face .cover > div {
			padding: 5em 8em;
		}
			.vis-face.for_page .cover .font-m1 {
				margin-bottom: 1.3em;
				font-size: 1.25em;
			}
	.vis-face.for_page .canvas {
		height: 547px;
	}
}
@media screen and (min-width: 1281px) {
	.vis-face.for_page .cover {
		justify-content: center;
	}
}
@media screen and (max-width: 1280px) {
	.vis-face .cover > div {
		padding: 5em 8em;
	}
}
@media screen and (max-width: 640px) {
	#vis0.for_page {
		margin-bottom: 1.5em;
	}
	.vis-face .cover {
		width: 78.125%;
		bottom: -1.5em;
	}
		.vis-face .cover > div {
			padding: 1.65em 2em;
		}
			.vis-face.for_page .cover .font-m1 {
				margin-bottom: 0.45em;
			}
	.vis-face.for_page .canvas {
		height: 315px;
	}
}
@media screen and (max-width: 320px) {
	.vis-face.for_page .cover .font-m1 {
		font-size: 5.6vw;
	}
	.vis-face.for_page .cover .font-g1 {
		font-size: 4.75vw;
	}
}

/*Text with img------------------------*/
.text_im picture img {
	object-fit: cover;
}
.text_im_wrapper {
	width: 100%;
}
@media screen and (min-width: 641px) {
	.text_im_wrapper {
		background-color: var(--cl-section-bg);
		margin-bottom: 4.5em;
		padding-bottom: 20px;
	}
	.text_im_wrapper > div {
		position: relative;
		width: 100%;
		justify-content: space-between;
	}
		.text_im picture {
			position: relative;
			right: 0;
		}
			.text_im picture img {
				height: 100%;
			}
	.text_box {
		width: 50%;
	}
		.text_box > div {
			padding-right: 6.25em;
		}	
}
@media screen and (max-width: 950px) {
	.text_box > div {
		padding-right: 5em;
	}	
}
@media screen and (max-width: 640px) {
	.text_box > div {
		padding-right: 0;
	}	
	.text_im_wrapper > div {
		flex-wrap: wrap;
	}
		.text_im_wrapper > div > * {
			width: 100%;
		}
}

/*Online Store------------------------*/
#online_store {
	text-align: center;
	margin-bottom: 8em;
}
#online_store .bt {
    padding: 1.875em 2.5em 1.875em 2.5em;
}
@media screen and (max-width: 640px) {
	#online_store {
		margin-bottom: 8.5em;
	}
}

/*Hgroup------------------------*/
.recp-parent .hgroup,
main #indexhgroup {
	margin-bottom: 2.25em;
	margin-top: 0;
}
#content .csection-cells .cell[data-type="hgroup"] {
    margin-bottom: 4em;
}
.hgroup h2 {
	margin-bottom: 0;
}
#content .csection-cells [data-type="hgroup"] .ti-primary,
.hgroup h2.font-m1,
main #indexhgroup .labelcell:nth-child(1).font-en {
    font-size: 1.25em;
    font-weight: 400;
	font-family: var(--font-m1);
	line-height: 1;
}
#content .csection-cells [data-type="hgroup"] .ti-secondary,
.hgroup h2.font-g1,
main #indexhgroup .labelcell:nth-child(2) {
    font-size: 1.2em;
    opacity: 1;
    font-weight: 500;
    padding-top: 1.2em;
    padding-bottom: 0;
	margin-top: 0;
	line-height: 1;
}
#content .csection-cells [data-type="hgroup"] .ti-primary {
	transform: translateY(0);
}
@media screen and (max-width: 640px) {
	.recp-parent .hgroup {
		margin-bottom: 2.75em;
	}
	main #indexhgroup {
		margin-top: 6.75em;
	}
}
@media screen and (max-width: 320px) {
	#content .csection-cells [data-type="hgroup"] .ti-primary,
	.hgroup h2.font-m1,
	main #indexhgroup .labelcell:nth-child(1).font-en {
		font-size: 5.65vw;
	}
	#content .csection-cells [data-type="hgroup"] .ti-secondary,
	.hgroup h2.font-g1,
	main #indexhgroup .labelcell:nth-child(2){
		font-size: 4.75vw;
	}
}

/*Form settings------------------------*/
.reception  .recp-parent.wide-bind {
	max-width: var(--bindwrap-width);
	margin-top: 12.25em;
}
#stepGuide {
    display: none;
}
form {
    max-width: 582px;
    margin-left: auto;
    margin-right: auto;
}
form .fieldcell > * {
    font-family: var(--font-g1);
}
form .fieldcell dt label.input-assist {
    font-size: 13px;
	color: var(--cl-dl);
}
.reception .recp-parent input[type="tel"] {
    background-image: none;
	padding-left: 0;
}
.reception .recp-parent input[type="text"], 
.reception .recp-parent input[type="date"], 
.reception .recp-parent input[type="datetime-local"], 
.reception .recp-parent input[type="email"], 
.reception .recp-parent input[type="month"], 
.reception .recp-parent input[type="number"], 
.reception .recp-parent input[type="password"], 
.reception .recp-parent input[type="search"], 
.reception .recp-parent input[type="time"], 
.reception .recp-parent input[type="datetime"], 
.reception .recp-parent input[type="tel"], 
.reception .recp-parent input[type="url"], 
.reception .recp-parent input[type="week"], 
.reception .recp-parent textarea,
.reception select.custom-ui {
    border: 0.79px solid var(--cl-dl);
	line-height: 1;
}
.reception .recp-parent input[type="text"], 
.reception .recp-parent input[type="date"], 
.reception .recp-parent input[type="datetime-local"], 
.reception .recp-parent input[type="email"], 
.reception .recp-parent input[type="month"], 
.reception .recp-parent input[type="number"], 
.reception .recp-parent input[type="password"], 
.reception .recp-parent input[type="search"], 
.reception .recp-parent input[type="time"], 
.reception .recp-parent input[type="datetime"], 
.reception .recp-parent input[type="tel"], 
.reception .recp-parent input[type="url"], 
.reception .recp-parent input[type="week"], 
.reception .recp-parent input[type="file"], 
.reception .recp-parent textarea,
.reception select.custom-ui {
    box-shadow: none;
    text-shadow: none;
    border-radius: 7.9px;
	padding: 1.85em 1.85em 1.7em 1.85em;
	background-color: #FFFFFF;
}
.navstep.flexbox,
dl[data-require="1"] dt label.input-assist::after,
dl[data-require=""] dt label.input-assist::after, 
.fieldcell fieldset .unit {
    display: none;
}
body .recp-parent input, 
body .recp-parent select, 
body .recp-parent textarea,
.fieldcell .error-display {
	font-size: 13px;
	font-weight: 500;
}
.reception .recp-parent input.short {
    min-width: 100%;
}
dl[data-error="true"] input[type="text"], 
dl[data-error="true"] input[type="date"], 
dl[data-error="true"] input[type="datetime-local"], 
dl[data-error="true"] input[type="email"], 
dl[data-error="true"] input[type="month"], 
dl[data-error="true"] input[type="number"], 
dl[data-error="true"] input[type="password"], 
dl[data-error="true"] input[type="search"], 
dl[data-error="true"] input[type="time"], 
dl[data-error="true"] input[type="datetime"], 
dl[data-error="true"] input[type="tel"], 
dl[data-error="true"] input[type="url"], 
dl[data-error="true"] input[type="week"], 
dl[data-error="true"] input[type="file"], 
dl[data-error="true"] textarea {
	background-color: #FFFFFF;
	border-color: var(--recp-inp-alert-bordercolor);
	color: #000000;
	border-width: 0.15em;
}
#fieldaccess_job {
    width: 100%;
	color: #000;
	font-size: 1em;
	padding: 1.7em;
}
.reception select.custom-ui {
	font-family: var(--font-g1);
	font-weight: 400;
	background-image: url(/share/im_clast/ui/nv_sankaku-down.svg);
	background-size: auto 1.375em;
	background-position: right 3.7em center;
}
/**/
.bot.last-section {
    margin-bottom: 2.75em;
    margin-top: 9em;
}
.reception .recp-parent .controls .bt.activation,
.reception .recp-parent .controls .bt.return {
    display: inline-block;
    font-size: 16px;
    padding: 1.37em 0;
    width: 12.5em;
	margin-left: auto;
	margin-right: auto;
	font-family: var(--font-g1);
	border: none;
	background-color: var(--ui-bt-base-bgcolor);
}
.reception .recp-parent .controls .bt.activation,
.reception .recp-parent .controls .bt.return {
	background-image: none;
}
.reception .recp-parent .controls .bt.return {
	color: #FFFFFF;
}
.reception .recp-parent .controls > li:last-child {
    text-align: center;
}
.steps .field-group {
	padding-top: 0;
	margin-top: 3em;
}
.recp-parent .steps .step-parent[data-iscurrent="true"] {
    padding-top: 0;
}
@media screen and (max-width: 640px) {
	.recp-parent.custom-forms.wide-bind {
		margin-top: 6.75em;
	}
	.reception select.custom-ui {
		background-size: auto 1em;
		background-position: right 1.25em center;
	}
	body .recp-parent .controls {
		margin: 0;
	}
	.reception .recp-parent .controls .bt.activation, 
	.reception .recp-parent .controls .bt.return {
		padding: 1.25em 0;
		font-size: 12px;
	}
	.reception .recp-parent input[type="text"], 
	.reception .recp-parent input[type="date"], 
	.reception .recp-parent input[type="datetime-local"], 
	.reception .recp-parent input[type="email"], 
	.reception .recp-parent input[type="month"], 
	.reception .recp-parent input[type="number"], 
	.reception .recp-parent input[type="password"], 
	.reception .recp-parent input[type="search"], 
	.reception .recp-parent input[type="time"], 
	.reception .recp-parent input[type="datetime"], 
	.reception .recp-parent input[type="tel"], 
	.reception .recp-parent input[type="url"], 
	.reception .recp-parent input[type="week"], 
	.reception .recp-parent input[type="file"], 
	.reception .recp-parent textarea,
	.reception select.custom-ui {
		padding: 1em;
	}
	#fieldaccess_job {
		padding: 2em;
	}
}
@media screen and (max-width: 320px) {
	form .fieldcell dt label.input-assist,
	body .recp-parent input, 
	body .recp-parent select, 
	body .recp-parent textarea,
	.fieldcell .error-display {
    	font-size: 3.15vw;
	}
	#fieldaccess_job {
		font-size: 2.2vw;
	}
	.reception .recp-parent .controls .bt.activation, 
	.reception .recp-parent .controls .bt.return {
		font-size: 3.15vw;
	}
}
/*confirm*/
.begin-text {
    line-height: 1.9em;
    letter-spacing: 0.1em;
    font-weight: 400;
}
.recp-parent .step-parent > .hgroup .step-title {
    font-weight: 500;
    font-size: 1em;
    margin-bottom: 1.425em;
    letter-spacing: 0.1em;
}
#stepNotice {
    margin-top: 2em;
}
.recp-parent .controls > li {
    text-align: center;
}
#confirmSummary .groups .group-cell h3 {
    color: var(--cl-dl);
    font-weight: 500
}
.begin-text,
.recp-parent #confirmSummary .fieldset dt, 
.recp-parent #confirmSummary .fieldset dd,
.recp-parent #confirmSummary .groups .group-cell h3,
ul.notice li {
    font-size: 13px;
}
.steps .fieldcell {
	margin-bottom: 3.25em;
}
::placeholder {
	color: #999999;
}
@media screen and (max-width: 640px) {
	.recp-parent #confirmSummary .fieldset {
		display: flex;
		flex-wrap: wrap;
	}
	.recp-parent #confirmSummary .fieldset dt,
	.recp-parent #confirmSummary .fieldset dd {
		width: 100%;
		text-align: left;
	}
	body .recp-parent .controls > li {
		padding: 0;
	}
	.reception .recp-parent .controls .bt.activation, 
	.reception .recp-parent .controls .bt.return {
		width: 37vw;
	}
	.steps .fieldcell {
		margin-bottom: 1.75em;
	}
}
@media screen and (max-width: 320px) {
	.begin-text,
	.recp-parent #confirmSummary .fieldset dt, 
	.recp-parent #confirmSummary .fieldset dd,
	.recp-parent #confirmSummary .groups .group-cell h3,
	ul.notice li,
	.recp-parent #confirmSummary .fieldset[data-type="textarea"] dd {
		font-size: 3.15vw;
	}
	.reception .recp-parent .controls .bt.activation, 
	.reception .recp-parent .controls .bt.return {
		width: 35vw;
		font-size: 3.75vw;
	}
	.recp-parent .step-parent > .hgroup .step-title {
		font-size: 4.5vw;
	}
}
