@charset "utf-8";

@import "/shared/css/normalize.css";
@import "/shared/css/base.css";
@import "/shared/css/preset.css";

/* CONTACT TOP
------------------------------------------------------------------*/
#contact{
	width: 100%;
	min-width: 1170px;
	background: #FFF;
}

#footer{
	margin-top: 0;
}


/* CONTACT お問い合わせ
------------------------------------------------------------------*/
#contactTitle{
	width: 100%;
	min-width: 1170px;
	background: #F7F4F0;
	padding: 45px 0;
	/*
	margin-bottom: 60px;
	*/
}





/* お問い合わせフォーム
------------------------------------------------------------------*/
#contactForm{
	width: 100%;
	min-width: 1170px;
	background: #FFF;
	padding: 45px 0 105px;
}

#contactForm .contentWrapper > div {
	width: 710px;
}

#contactForm .elq-form .sc-view + .sc-view {
	border-top: solid 1px #E9E9E9;
	padding: 10px 5px 10px 9px;
	margin: 0;
}

#contactForm .elq-form .sc-view.sc-view-pt {
	padding-top: 40px;
}

#contactForm .elq-form #formElement0 {
	padding: 10px 0 10px 0;
	margin: 0;
}

#contactForm .elq-form #formElement0 .twoColumnLeft {
	width: 48%;
}

#contactForm .elq-form #formElement0 .field-size-left-large {
	width: 70%;
}


#contactForm .elq-form .label-position.left {
	width: 160px;
}

#contactForm .elq-form select,
#contactForm .elq-form input[type=text] {
	border: solid 1px #CCC;
	padding: 5px 10px;
	box-sizing: content-box;
}

#contactForm .elq-form textarea {
	height: 152px;
	border: solid 1px #CCC;
	padding: 5px 10px;
}

#contactForm .elq-form input[type=submit] {
	/*width: 400px;*/
	/*height: 63px;*/
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	background-color: #222;
	background-image: url('../images/btn_icon_bg.png');
	background-repeat: no-repeat;
	background-position: 25px 0px;
	font-size: 18px !important;
	font-weight: bold;
	padding: 0 20px 0 30px;
	color: #fff;
	border: 0;
}
#contactForm .elq-form input[type=submit]:hover {
	background-color: #F9D811;
	background-position: 25px -63px;
	color: #000;
}

#contactForm .elq-form .LV_validation_message {
	display: block;
	margin: 0;
	padding-left: 174px;
}





/* RESET */ .elq-form * {
				margin: 0;
				padding: 0;
			}
.elq-form input, textarea {
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
}
.elq-form button,input[type=reset],input[type=button],input[type=submit],input[type=checkbox],input[type=radio],select {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
/* GENERIC */.elq-form input {
				 height: 16px;
				 line-height: 16px;
			 }
.elq-form .item-padding {
	padding:6px 5px 9px 9px;
}
.elq-form .pp-group {
	padding:0px 5px 0px 9px;
}
.elq-form .pp-field {
	padding:6px 0px 9px 0px;
}
.elq-form .field-wrapper.individual {
	/*float: left;*/
	width: 100%;
	/*clear: both;*/
}
.elq-form .field-p {
	position: relative;
	margin: 0;
	padding: 0;
}
.elq-form .field-a {
	color: #666;
	font-weight: normal;
	text-decoration: underline;
}
.elq-form .zIndex-fix {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.elq-form .field-design {
	position:absolute;
	z-index:2;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:0;
	padding:0;
}
.elq-form .no-fields-prompt {
	float: left;
	width: 100%;
	height: 150px;
	padding-top: 50px;
	clear: both;
}
/* SECTION BREAKS */.elq-form .section-break {
						float:left;
						width: 97%;
						margin-right:2%;
						margin-left:1%;
						padding-bottom:6px;
					}
.elq-form .section-break .heading {
	width:100%;
	font-weight: bold;
	margin:0;
	padding:0;
}
/* LABEL */.elq-form .required {
			   color: red !important;
			   display: inline;
			   float: none;
			   font-weight: bold;
			   margin: 0pt 0pt 0pt;
			   padding: 0pt 0pt 0pt;
		   }
/* FIELD GROUP */.elq-form .field-group {
					 float: left;
					 clear: both;
				 }
.elq-form .field-group.large {
	width:100%;
}
.elq-form .field-group.medium {
	width:51%;
}
.elq-form .field-group.small {
	width:31%;
}
.elq-form .field-group .label {
	float:left;
	width:97%;
	margin-right:2%;
	margin-left:1%;
	padding-bottom:6px;
	font-weight: bold;
}
.elq-form .field-group .field-style {
	float: left;
}
.elq-form .progressive-profile .pp-inner {
	float: left;
	clear: both;
}
.elq-form .progressive-profile .pp-inner.large {
	width:100%;
}
.elq-form .progressive-profile .pp-inner.medium {
	width:51%;
}
.elq-form .progressive-profile .pp-inner.small {
	width:31%;
}
/* RADIO */.elq-form .radio-option {
			   display: inline-block;
		   }
.elq-form .radio-option .label {
	display:block;
	float:left;
	padding-right:10px;
	padding-left:22px;
	text-indent:-22px;
}
.elq-form .radio-option .input {
	vertical-align:middle;
	margin-right:7px;
}
.elq-form .radio-option .inner {
	vertical-align:middle;
}
/* CHECKBOX */.elq-form .checkbox-span {
				  display:inline-block;
			  }
.elq-form .checkbox-label {
	margin-left:4px;
}
/* INPUT */.elq-form .accept-default {
			   width:100%;
		   }
/* SIZING */.elq-form .field-style {
				margin-right:2%;
				margin-left:2%;
			}
.elq-form .field-style._25 {
	width:21%;
}
.elq-form .field-style._50 {
	width:46%;
}
.elq-form .field-style._50_left {
	clear:left;
	width:46%;
}
.elq-form .field-style._75 {
	width:71%;
}
.elq-form .field-style._100 {
	width:96%;
}
.elq-form .field-size-top-small {
	width:30%;
}
.elq-form .field-size-top-medium {
	width:75%;
}
.elq-form .field-size-top-large {
	width:100%;
}
.elq-form .field-size-left-small {
	width:21%;
}
.elq-form .field-size-left-medium {
	width:46%;
}
.elq-form .field-size-left-large {
	width:60%;
}
/* INSTRUCTIONS */.elq-form .instructions.default {
					  color:#444444;
					  display:block;
					  font-size:10px;
					  padding:6px 0pt 3px;
				  }
.elq-form .instructions.group {
	float:left;
	width:97%;
	margin-right:2%;
	margin-left:2%;
	padding:6px 0pt 3px;
	color:#444444;
	display:block;
	font-size:10px;
}
.elq-form .instructions.left-single {
	margin:0 0 0 33%;
}
.elq-form .instructions-other {
	margin:0;
}
/* POSITIONING */.elq-form .label-position.left {
					 display:block;
					 line-height:150%;
					 padding:1px 0pt 3px;
					 float:left;
					 width:31%;
					 margin:0pt 15px 0pt 0pt;
					 word-wrap:break-word;
				 }
.elq-form .label-position.top {
	display:block;
	line-height:150%;
	padding:1px 0pt 3px;
	white-space:nowrap;
}
.elq-form .label-position.alignment-left {
	text-align: left;
}
.elq-form .label-position.alignment-right {
	text-align: right;
}
/* LIST ORDER */.elq-form .list-order {
					display:block;
				}
.elq-form .list-order.oneColumn {
	margin:0pt 7px 0pt 0pt;
	width:100%;
	clear:both;
}
.elq-form .list-order.twoColumn {
	float:left;
	margin:0pt 7px 0pt 0pt;
	width:38%;
}
.elq-form .list-order.threeColumn {
	float:left;
	margin:0pt 7px 0pt 0pt;
	width:30%;
}
.elq-form .list-order.oneColumnLeft {
	float:left;
	margin:0pt 7px 0pt 0pt;
	width:100%;
}
.elq-form .list-order.twoColumnLeft {
	float:left;
	margin:0pt 7px 0pt 0pt;
	width:38%;
}
.elq-form .list-order.threeColumnLeft {
	float:left;
	margin:0pt 7px 0pt 0pt;
	width:30%;
}
/* GRID STYLE */.elq-form .grid-style {
					display:inline;
					float:left;
					margin-left:2%;
					margin-right:2%;
				}
.elq-form .grid-style._25 {
	width:21%;
}
.elq-form .grid-style._50 {
	width:46%;
}
.elq-form .grid-style._75 {
	width:71%;
}
.elq-form .grid-style._100 {
	width:96%;
}

.LV_validation_message{
	font-weight:bold;
	margin: 0 0 0 5px;
}
.LV_valid{
	color:#00CC00;
	display:none;
}
.LV_invalid{
	color:#CC0000;
	font-size:10px;
}
.LV_valid_field, input.LV_valid_field:hover, input.LV_valid_field:active, textarea.LV_valid_field:hover, textarea.LV_valid_field:active {
	outline: 1px solid #00CC00;
}
.LV_invalid_field, input.LV_invalid_field:hover, input.LV_invalid_field:active, textarea.LV_invalid_field:hover, textarea.LV_invalid_field:active {
	outline: 1px solid #CC0000;
}

/* pc, sp
------------------------------------------------------------------*/
/* １つにまとめると、無効になる */
input::placeholder,
textarea::placeholder {
	color: #b3b3b3;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #b3b3b3;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
	color: #b3b3b3;
}
/* end １つにまとめると、無効になる */

.contactTitle {
	background: #f7f4f0;
	line-height: 1.2;
}

#contactStep {
	background: #fafafa;
}

/*
#contactStep .step .done {
	display: none;
}
*/

#contactStep .step {
	background: #fff;
}

#contactStep .step.-s1 {
	color: #fff;
	background: #000;
}

#contactStep .step.-s1:after {
	border-color: transparent transparent transparent #000;
	z-index: 999;
}

#contactStep .step.-s2:after {
	border-color: transparent transparent transparent #e9e9e9;
	z-index: 998;
}

#contactStep .step.-s2:before {
	border-color: transparent transparent transparent #fff;
	z-index: 999;
}

#contactStep .ja {
	font-weight: bold;
}

#contactContent {
	background: #fafafa;
}

#contactContent dt {
}

#contactContent dt .title,
#contactContent dt .note {
	color: #000;
	font-weight: bold;
}

#contactContent dd {
	font-weight: bold;
}

#contactContent dd:after {
	background: #e9e9e9;
}

#contactContent .must {
	color: #fff;
	background: #ed2f6a;
	display: inline-block;
	line-height: 1.0;
}

#contactContent .media,
#contactContent .job {
	display: flex;
	align-items: center;
}

#contactContent textarea,
#contactContent input[type="text"] {
	border: 1px solid #ccc;
	box-sizing: border-box;
}

#contactContent .careerBox {
	display: flex;
	align-items: center;
}

#contactContent .careerBox .note {
	font-weight: bold;
}

#contactContent .btn {
	background: #000;
	color: #fff;
}

#contactContent .career .confirm {
	font-weight: bold;
}

#contactContent .groupBox {
	display: flex;
	font-weight: bold;
}

#contactContent .group {
	font-weight: bold;
}

#contactContent .tel .note {
	font-weight: bold;
}

#contactContent .consentCheck {
	background: #efefef;
	text-align: center;
	opacity: 0.5;
}

#contactContent .consentCheck label {
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
}

#contactContent .consentCheck .note {
	background: #efefef;
	text-align: center;
	color: #777;
}

#contactContent .consent .note {
	margin-top: 0.5em;
	text-align: center;
}

#contactContent #confirmButton {
	background: #000;
	color: #fff;
	border: 1px solid #fafafa;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
}

#contactContent #confirmButton[disabled] {
	opacity: 0.2;
}

#contactContent #confirmButton[disabled]:hover {
	background-color: #000;
}

#contactContent .note,
#contactContent .consentCheck .note,
#contactContent dt .note { /* 優先のため dt */
	color: #ff0000;
}
#contactContent .download_link {
	transition-duration: 0.2s;
	color: #333;
}
#contactContent .download_link.underline {
	text-decoration: underline;
}


#contactContent .contentWrapper .content .intro.form {
		margin: 0 0 60px;
		padding: 0 20px;
}


/* pc sp error
------------------------------------------------------------------*/
#contactContent .errmsg {
	color: #ed2f6a;
	font-size: 11px;
}

#contactContent input[type="text"].error {
	border: 1px solid #ed2f6a;
	background: #fff2f7;
}
#contactContent textarea.error {
	border: 1px solid #ed2f6a;
	background: #fff2f7;
}

/* pc
------------------------------------------------------------------*/
@media print, screen and (min-width: 769px) {
	body {
		/*background: tan;*/
	}

	nav {
		display: none;
	}

	.sp {
		display: none !important;
	}

	.contentWrapper {
		margin: 0 auto;
	}

	.contactTitle {
		height: 203px;
		display: flex;
		align-items: center;
	}
.titleWrap h1{
	font-size: 25px;
}
	.contactTitle .en {
		display: block;
		font-size: 15px;
    font-style: oblique;
    font-weight: bold;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 5px;
	}

	.contactTitle .contentWrapper p {
		margin-top: 34px;
	}

	#contactStep {
		padding-top: 51px;
	}

	#contactStep .steps {
		display: flex;
	}

	#contactStep .step {
		width: 163px;
		height: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}

	#contactStep .step.-s1:after,
	#contactStep .step.-s2:after {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 0 20px 24px;
		top: 0;
		right: 0;
		transform: translateX(100%);
	}

	#contactStep .step.-s2:before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 19px 0 19px 23px;
		top: 1px;
		right: 0;
		transform: translateX(100%);
		z-index: 999;
	}

	/*
	#contactStep .done {
		margin-right: 10px;
	}
	*/

	#contactStep .en {
		font-size: 11px;
	}

	#contactStep .ja {
		font-size: 14px;
		margin-left: 5px;
	}

	#contactContent {
		padding-top: 60px;
		padding-bottom: 101px;
	}

	#contactContent .contactform {
		width: 717px;
	}

	#contactContent dt .title {
		font-size: 12px;
	}

	#contactContent dt .note {
		font-size: 11px;
	}


	#contactContent .must {
		font-size: 10px;
		padding: 3px 4px;
		margin-left: 4px;
	}

	#contactContent dl {
		display: flex;
		flex-wrap: wrap;
	}

	#contactContent dt {
		width: 163px;
	}

	#contactContent dd {
		width: calc(100% - 163px);
	}

	#contactContent .jobs {
		display: flex;
		flex-wrap: wrap;
	}

	#contactContent .job {
		/*width: 256px;*/
		margin-right: 7px;
	}

	#contactContent .media input,
	#contactContent .job input {
		margin-right: 7px;
	}

	#contactContent dd {
		position: relative;
		padding-bottom: 16px;
		margin-bottom: 14px;
	}

	#contactContent dd:after {
		content: '';
		position: absolute;
		width: 717px; /* 1170px; */
		height: 1px;
		bottom: 0;
		left: -163px;
	}

	#contactContent select,
	#contactContent input[type="text"] {
		height: 27px;
		padding: 0 10px;
	}

	#contactContent .current input[type="text"] {
		width: 298px;
	}

	#contactContent .career textarea,
	#contactContent .question textarea {
		width: 552px;
		height: 171px;
		padding: 10px;
	}

	#contactContent .btn {
		font-size: 12px;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 170px;
		height: 30px;
	}

	#contactContent .btn:hover {
		background-color: #F9D710;
	}

	#contactContent .btn .icon {
		width: 14px;
		height: auto;
		margin-right: 5px;
	}

	#contactContent .careerBox {
			margin-top: 21px;
	}

	#contactContent .careerBox .note {
		font-size: 11px;
		margin-left: 10px;
	}

	#contactContent .group {
		width: 100px;
	}

	#contactContent .media {
		/*width: 124px;*/
		margin-right: 7px;
	}

	#contactContent .groupBox.-other {
		margin-top: 5px;
	}

	#contactContent .groupBox.-other .media {
		width: 298px;
	}

	#contactContent .groupBox.-other .media input {
		width: 100%;
	}

	#contactContent dd.furigana,
	#contactContent dd.name {
		display: flex;
	}

	#contactContent .parts {
		width: 214px;
	}

	#contactContent .parts.-snd {
		margin-left: 10px;
	}

	#contactContent .part {
		display: flex;
		/* justify-content: flex-end; */
		justify-content: flex-start;
		align-items: center;
	}

	#contactContent .part label {
		margin-right: 10px;
	}

	#contactContent .part input {
		width: 150px;
	}

	#contactContent .mail input[type="text"],
	#contactContent .tel input[type="text"] {
		width: 397px;
	}

	#contactContent .tel .note {
		font-size: 11px;
	}

	#contactContent .age input[type="text"] {
		width: 79px;
		margin-right: 7px;
	}

	#contactContent .sex select {
		width: 79px;
	}

	#contactContent .consent .field-a {
		color: #666;
		text-decoration: underline;
	}


	#contactContent .consent textarea {
		width: 554px;
		height: 184px;
		padding: 10px;
	}
	#contactContent .consent .wrap{
		width: 554px;
		height: 184px;
		padding: 10px;
		font-weight: normal;
		overflow: scroll;
	    border: 1px solid #ccc;
	}
	#contactContent .consent .wrap p{}
	#contactContent .consent .wrap .date{
		text-align: right;
	}
	#contactContent .consent .wrap .title{
		text-align: center;
		font-weight: bold;
		font-size: 14px;
		margin-bottom: 20px;
	}
	#contactContent .consent .wrap .name{
		/*text-align: right;*/
		margin-bottom: 20px;
		margin-left: 206px;
	}
	#contactContent .consent .wrap .lead{
		margin-bottom: 20px;
	}
	#contactContent .consent .wrap ol{
		counter-reset: number 0;
		margin-bottom: 20px;         /* number のカウンタを 0 にセット */
	}
	#contactContent .consent .wrap li{
		position: relative;
		padding-left: 20px;
		font-weight: bold;
	}
	#contactContent .consent .wrap li:before{
		counter-increment: number 1;      /* number カウンタの増加数をセット */
		content: counter(number) '.';      /* 表示形式を指定 */
		position: absolute;
		display: block;
		width: 7px;
		height: 7px;
		top: 0px;
		left: 0;
	}
	#contactContent .consent .wrap li p{
		padding-left: 15px;
		font-weight: normal;
		margin-bottom: 10px;
	}
	#contactContent .consent .wrap .contact{

	}
	#contactContent .consent .wrap .contatData{
		margin-left: 20px;
	}
	#contactContent .consent .wrap .contatData .contatName{
		flex: 0 0 6em;
		max-width: 6em;
	}
	#contactContent .consent .wrap .contatData .contatOffice{
		flex: 0 0 4em;
		max-width: 4em;
	}
	#contactContent .consent .wrap .contatData dd{
		font-weight: normal;
		text-align: left;
		flex: 1 1 auto;
		padding-bottom: 0;
	}
	#contactContent .consent .wrap .contatData dd:after{
		display: none;
	}
	#contactContent .consentCheck {
		width: 552px;
		margin-top: 18px;
		padding: 10px 0;
	}

	#contactContent .consentCheck .note {
		font-size: 11px;
	}

	#contactContent #confirmButton {
		margin-left: 163px;
		width: 398px;
		height: 63px;
		margin-top: 35px;
		font-size: 18px;
		position: relative;
		font-weight: 100;
	}

	#contactContent #confirmButton:before {
		content: '';
		width: 10px;
		height: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		position: absolute;
		top: 50%;
		left: 8px;
		transform: translateY(-50%) rotate(45deg);
	}


	#contactContent #confirmButton:hover {
		background-color: #F9D710;
	}

	#contactContent .download_link {
		transition-duration: 0.2s;
		color: #333;
	}


	#contactContent .download_link:hover {
		opacity: .7;
	}
	#contactContent .download_link.underline:hover {
		opacity: 1;
		text-decoration: none;
	}

	#contactContent .contentWrapper .content .intro.form {
		    margin: 0 0 60px;
			padding: 0;
	}

	#page{
		min-width: 1200px;
	}

	#header{
		height: 124px;
		margin: 0 auto;
	}

	#footer{
		height: 150px;
		margin-top: 0;
	}

	#footer>div {
		margin: 0 auto;
	}

	.footerInner {
		height: 100%;
		position: relative;
	}

	#footContact {
		position: absolute;
		bottom: 0;
		right: 0;
		float: none;
	}

	#footer {
		min-width: 1086px;
	}

	#header,
	.contentWrapper,
	#footer>div,
	.footerInner {
		width: 1086px; /* 1086 = page 1200px - margin-left 114px */
	}

.part span label{
	font-size: 13px;
}
.title{
	margin: 0;
}
#contactContent .contentWrapper .intro{
	font-size: 13px;
    line-height: 1.8;
    color: #333;
}
/* footer
------------------------------------------------------------------*/
#footer{
	width: 100%;
	min-width: 1170px;
	margin-top: 75px;
	background: #EEE;
}
#footer>div{
	width: 1170px;
	margin: 0 auto;
	position: relative;
}
/* footer logo */
#footer>div>h1{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 118px;
	padding-bottom: 25px;
	border-bottom: 3px solid #000;
}
/* footer nav title */
#footer nav>ul>li{
	float: left;
	width: 120px;
	margin: 45px 0 10px;
}
#footer nav>ul>li:nth-child(3){
	width: 170px;
}
#footer nav>ul>li a{
	font-size: 12px;
	color: #222;
	font-weight: bold;
	padding: 5px 0;
}
/* footer nav 2nd */
#footer nav>ul>li>ul{
	margin-top: 10px;
}
#footer nav>ul>li>ul>li{
	float: none;
	width: auto;
}
#footer nav>ul>li>ul>li a{
	font-size: 11px;
	color: #666;
	font-weight: normal;
	padding: 3px 0;
}

/* footr Contact */
#footer #footContact{
	float: right;
	margin-bottom: 25px;
	margin-top: -70px;
	text-align: right;
}

/* footr Sns btn */
#footer #footContact .snsContact {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin: 0 0 7px;
}
#footer #footContact .snsContact_item {
	max-width: 32px;
	-webkit-flex: 0  0 32px;
	-ms-flex: 0  0 32px;
	flex: 0  0 32px;
	margin: 0 0 0 20px;

}
#footer #footContact .snsContact_item a{
	display: block;
}
#footer #footContact .snsContact_item a:hover{
	opacity: .8;
}
#footer #footContact .snsContact_item a img{
	width: 100%;
}

/* footr Contact btn */
#footer #footContact .btnContact {
	width: 138px;
	height: 30px;
	display: table;
	margin: 0 0 15px auto;
}
#footer #footContact .btnContact a{
	font-size: 10px;
	line-height: 1.0em;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
#footer #footContact #policyLink a{
	font-size: 11px;
	color: #444;
	font-weight: normal;
	padding: 3px 0;
	letter-spacing: 0;
}
#footer #footContact #policyLink{
	margin: 0 0 15px;
}
/* footr Contact  mouseover color */
#footer #footContact .btnContact a:link,
#footer #footContact .btnContact a:visited{
	font-weight: bold;
	color: #FFFFFF;
	background: #222222;
}
#footer #footContact .btnContact a:hover,
#footer #footContact .btnContact a:active {
	color: #222222;
	background: #F9D710;
}
/* footer contact text */
#footer #footContact p{
	color: #444;
	font-size: 9px;
	line-height: 1.1em;
	letter-spacing: 0.1em;
}
/* footer contact copyright*/
#footer #footContact small{
	color: #444;
	font-size: 10px;
	line-height: 1.1em;
	letter-spacing: 0.1em;
}
/* go top */
#footer .goTop{
	display: block;
	width: 44px;
	height: 44px;
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
}
/* footr goTop anchr */
#footer .goTop a{
	display: block;
	width: 44px;
	height: 0;
	padding-top: 44px;
	overflow: hidden;
	background: url(./image/foot_gotop_bg.png) left top no-repeat;
}
/* footr goTop mouseover color */
#footer .goTop a:link,
#footer .goTop a:visited{
	background-color: #222222;
}
#footer .goTop a:hover,
#footer .goTop a:active{
	background-color: #F9D710;
}
.transition_duration02 {
	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

}

/* sp
------------------------------------------------------------------*/
@media print, screen and (max-width: 768px) {
	body {
	}

	input, textarea , select {
		font-size: 16px; /* ある程度大きくないと iphone で拡大表示になる */
	}

	.pc {
		display: none !important;
	}

	img {
		width: 100%;
		height: auto;
	}

	#header{
		width: 100%;
		padding: 0 20px;
		height: 75px;
		box-sizing: border-box;
	}

	#header h1 {
		width: 70px;
		padding-top: 10px;
	}

	.contactTitle {
		height: 208px;
		padding: 0 20px;
		display: flex;
		align-items: center;
	}

	.contentWrapper {
		width: 100%;
	}

	#contactStep {
		padding: 40px 20px 0;
	}

	#contactStep .steps {
		display: flex;
	}

	#contactStep .step {
		width: 33.33%;
		height: 28px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}

	#contactStep .step.-s1:after,
	#contactStep .step.-s2:after {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 14px 0 14px 14px;
		top: 0;
		right: 0;
		transform: translateX(100%);
	}

	#contactStep .step.-s2:before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 12px 0 12px 12px;
		top: 2px;
		right: 0;
		transform: translateX(100%);
		z-index: 999;
	}

	/*
	#contactStep .done {
		margin-right: 5px;
		margin-left: 10px;
	}
	*/

	#contactStep .en {
		font-size: 12px;
	}

	#contactStep .ja {
		font-size: 14px;
		margin-left: 5px;
	}

	.contactform {
		padding: 0 20px;
	}

	#contactContent {
		padding: 38px 0;
	}

	#contactContent dt .title {
		font-size: 12px;
	}

	#contactContent dt .note {
		font-size: 12px;
	}

	#contactContent .must {
		font-size: 11px;
		padding: 3px 5px;
		margin-left: 9px;
	}

	#contactContent dl {
	}

	#contactContent dt .title {
		display: flex;
		align-items: center;
	}

	#contactContent .media input,
	#contactContent .job input {
		margin-right: 7px;
	}

	#contactContent dd {
		position: relative;
		padding-bottom: 16px;
		margin-bottom: 14px;
	}

	#contactContent dd:after {
		content: '';
		position: absolute;
		width: 100%;
		height: 1px;
		bottom: 0;
		left: 0;
	}

	#contactContent select,
	#contactContent input[type="text"] {
		height: 40px;
		padding: 0 10px;
	}

	#contactContent .current input[type="text"] {
		width: 100%;
	}

	#contactContent .career textarea,
	#contactContent .question textarea {
		width: 100%;
		height: 182px;
		padding: 10px;
	}

	#contactContent .btn {
		font-size: 13px;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 35px;
	}

	#contactContent .btn .icon {
		width: 17px;
		height: auto;
		margin-right: 8px;
	}

	#contactContent .careerBox {
		margin-top: 21px;
	}

	#contactContent .careerBox label {
		width: 60%;
	}

	#contactContent .careerBox .note {
		font-size: 12px;
		margin-left: 10px;
	}

	#contactContent .groupBox {
		flex-wrap: wrap;
	}

	#contactContent .group {
		width: 100%;
		margin-top: 14px;
	}

	#contactContent .media {
		width: 137px;
		margin-right: 7px;
	}

	#contactContent .groupBox.-other {
		margin-top: 5px;
	}

	#contactContent .groupBox.-other .media {
		width: 100%;
		margin: 0;
	}

	#contactContent .groupBox.-other .media input {
		width: 100%;
	}

	#contactContent .parts {
	}

	#contactContent .part {
		/*margin-left: 22px;*/
	}

	#contactContent .part input {
		width: 100%;
		margin-top: 6px;
	}

	#contactContent .parts.-snd input {
		margin-top: 12px;
	}

	#contactContent .mail input[type="text"],
	#contactContent .tel input[type="text"] {
		width: 100%;
	}

	#contactContent .tel .note {
		font-size: 12px;
		text-indent: -1em;
		margin-left: 1em;
	}

	#contactContent .age input[type="text"] {
		width: 87px;
		margin-right: 7px;
		/*margin-left: 22px;*/
	}

	#contactContent .sex select {
		width: 160px;
		/*margin-left: 22px;*/
	}

	#contactContent .consent textarea {
		width: 100%;
		height: 130px;
		padding: 10px;
		font-size: 12px;
		margin-top: 14px;
	}
	#contactContent .consent .wrap{
		height: 130px;
		padding: 10px;
		font-weight: normal;
		overflow: scroll;
		border: 1px solid #ccc;
	}
	#contactContent .consent .wrap p{}
	#contactContent .consent .wrap .date{
		text-align: right;
	}
	#contactContent .consent .wrap .title{
		text-align: left;
		font-weight: bold;
		margin-bottom: 10px;
		margin-top: 10px;
		font-size: 14px;
	}
	#contactContent .consent .wrap .name{
		text-align: left;
		margin-bottom: 20px;
	}
	#contactContent .consent .wrap .lead{
		margin-bottom: 20px;
	}
	#contactContent .consent .wrap ol{
		counter-reset: number 0;
		margin-bottom: 20px;         /* number のカウンタを 0 にセット */
	}
	#contactContent .consent .wrap li{
		position: relative;
		padding-left: 15px;
		font-weight: bold;
	}
	#contactContent .consent .wrap li:before{
		counter-increment: number 1;      /* number カウンタの増加数をセット */
		content: counter(number) '.';      /* 表示形式を指定 */
		position: absolute;
		display: block;
		width: 7px;
		height: 7px;
		top: 0px;
		left: 0;
	}
	#contactContent .consent .wrap li p{
		padding-left: 10px;
		font-weight: normal;
		margin-bottom: 10px;
	}
	#contactContent .consent .wrap .contact{

	}
	#contactContent .consent .wrap .contatData{
		margin-left: 20px;
		display: flex;
		/*flex-wrap: wrap;*/
	}
	#contactContent .consent .wrap .contatData .contatName{
		flex: 0 0 6em;
		max-width: 6em;
	}
	#contactContent .consent .wrap .contatData .contatOffice{
		flex: 0 0 4em;
		max-width: 4em;
	}
	#contactContent .consent .wrap .contatData dd{
		font-weight: normal;
		text-align: left;
		flex: 1 1 auto;
		padding-bottom: 0;
	}
	#contactContent .consent .wrap .contatData dd:after{
		display: none;
	}
	#contactContent .consentCheck {
		width: 100%;
		margin-top: 24px;
		padding: 21px 13px;
		box-sizing: border-box;
	}

	#contactContent .consentCheck .note {
		text-align: left;
		font-size: 11px;
		margin-top: 14px;
	}

	#contactContent #confirmButton {
		width: calc(100% - 40px);
		height: 49px;
		font-size: 13px;
		margin: 40px auto 0;

		position: relative;
	}

	#contactContent #confirmButton:before {
		content: '';
		width: 7px;
		height: 7px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		position: absolute;
		top: 50%;
		right: 95%;
		transform: translateY(-50%) rotate(45deg);
	}

	#contactContent .consent .note {
		font-size: 12px;
	}

	#footer{
		min-width: auto;
		padding: 35px 20px 0;
		margin: 0;
		box-sizing: border-box;
		height: 143px;
		position: relative;
	}

	#footer .footerInner h1 {
		width: 85px;
		padding-bottom: 0;
		border-bottom: none;
		position: static;
	}

	#footer #footContact {
		float: none;
		margin: 0;
		font-size: 12px;
		text-align: left;

		position: absolute;
		width: calc(100% - 40px);
		top: 33px;

	}

	#footer #footContact p {
		font-size: 12px;
		text-align: right;
		line-height: 1.5;
	}

	#footer #footContact small {
		font-size: 12px;
		text-align: left;
		margin-top: 42px;
		display: block;
		margin-left: 20px;
	}

	#footer > div{
		width: 100%;
		position: static;
	}

	#footer .goTop {
		bottom: 0;
		right: 0;
		top: inherit;
	}

	#footer .goTop a:hover {
		background-color: #222;
	}

}

/* 確認画面 : pc, sp
------------------------------------------------------------------*/
/*
body.formrun-system-confirm #contactStep .step.-s1 .done {
	display: block;
}
*/

body.formrun-system-confirm #contactStep .step.-s2 {
	color: #fff;
	background: #000;
}

body.formrun-system-confirm #contactStep .step.-s1:before {
	border-color: transparent transparent transparent #000;
}

body.formrun-system-confirm #contactStep .step.-s1:after {
	border-color: transparent transparent transparent #fafafa;
	z-index: 998;
}

body.formrun-system-confirm #contactStep .step.-s2:after {
	border-color: transparent transparent transparent #000;
	z-index: 999;
}

body.formrun-system-confirm #contactStep .step.-s2:before {
	content: none;
}

body.formrun-system-confirm #contactContent pre.confirm{
	margin-top: 0;
}

body.formrun-system-confirm #contactContent .name .confirm,
body.formrun-system-confirm #contactContent .furigana .confirm {
	font-weight: bold;
}

body.formrun-system-confirm #contactContent #backButton {
	background: #fff;
	color: #000;
	border: 1px solid #000;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
}

body.formrun-system-confirm #contactContent .buttons {
	display: flex;
}



/* 完了画面 : pc, sp
------------------------------------------------------------------*/
/*
body.thanks #contactStep .step.-s1 .done,
body.thanks #contactStep .step.-s2 .done {
	display: block;
}
*/

body.thanks #contactStep .step.-s2,
body.thanks #contactStep .step.-s3 {
	color: #fff;
	background: #000;
}

body.thanks #contactStep .step.-s1:before,
body.thanks #contactStep .step.-s2:before {
	border-color: transparent transparent transparent #000;
}

body.thanks #contactStep .step.-s1:after,
body.thanks #contactStep .step.-s2:after {
	border-color: transparent transparent transparent #fafafa;
	z-index: 998;
}

body.thanks #contactContent .mail a {
	text-decoration: underline;
	color: #333
}

body.thanks #contactContent .return {
	background: #000;
	color: #fff;
	border: 1px solid #fafafa;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* 完了画面 : pc
------------------------------------------------------------------*/
@media print, screen and (min-width: 769px) {

	body.thanks #contactStep .step.-s1:before,
	body.thanks #contactStep .step.-s2:before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 19px 0 19px 23px;
		top: 1px;
		right: 0;
		transform: translateX(100%);
		z-index: 999;
	}

	body.thanks #contactContent .desc {
		margin-top: 30px;
	}

	body.thanks #contactContent .contact {
		margin-top: 26px;
	}

	body.thanks #contactContent .mail {
		margin-top: 26px;
	}

	body.thanks #contactContent .mail a {
		margin-top: 26px;
	}

	body.thanks #contactContent .mail a:hover {
		opacity: 0.7;
	}

	body.thanks #contactContent .return {
		font-size: 18px;
		width: 398px;
		height: 64px;
		margin-top: 95px;
		position: relative;
	}

	body.thanks #contactContent .return:before {
		content: '';
		width: 9px;
		height: 9px;
		border-top: 1px solid #fff;
		border-left: 1px solid #fff;
		position: absolute;
		top: 50%;
		left: 93px;
		transform: translateY(-50%) rotate(-45deg);
	}

	body.thanks #contactContent .return:hover {
		background-color: #F9D710;
	}

#contactContent dt{
	width: 120px;
}

}

/* 完了画面 : sp
------------------------------------------------------------------*/
@media print, screen and (max-width: 768px) {
	/*
	body.thanks #contactStep .step.-s1 .done,
	body.thanks #contactStep .step.-s2 .done {
		width: 10px;
	}
	*/

	body.thanks #contactStep .step.-s1:before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 12px 0 12px 12px;
		top: 2px;
		right: 0;
		transform: translateX(100%);
		z-index: 999;
	}

	body.thanks #contactContent .content {
		padding: 0 20px;
	}

	body.thanks #contactContent .desc {
		margin-top: 45px;
	}

	body.thanks #contactContent .contact {
		margin-top: 40px;
	}

	body.thanks #contactContent .mail {
		margin-top: 45px;
	}

	body.thanks #contactContent .returnWrap {
		border-top: 1px solid #ccc;
		padding: 40px 20px 0;
		margin-top: 40px;
	}

	body.thanks #contactContent .return {
		height: 50px;
	}

}
