@charset "UTF-8";

/* -------------------------------------------------------------
システム連携部分設定
--------------------------------------------------------------*/

/* -------------------------------------------------------------
PC
--------------------------------------------------------------*/

/* contact */

	.p-contact_txt{
		width: 1200px;
		margin: auto;
	/*	text-align: center;*/
		font-weight: bold;
		color: #505050;

		width: calc(100% - 100px);
		margin: 0px auto 20px;
		padding: 10px;

		max-width: 820px;
	}
	.p-contact_txt h5{
		font-size: 1.2em;
		margin-bottom: 1em;
	}
	.p-contact_txt p{
		margin-bottom: 1em;
		font-weight: 500;
		padding-bottom:20px;
	}

/* input */

	.p-kv__txt {
		text-align: center;
	}

	.p-kv__txt h2 {
		font-size: 120%;
		padding-bottom:20px;
	}

	.p-kv__txt_error {
		color:#ee5454;
	}
	.p-kv__txt_error h2 {
		font-size: 120%;
		padding-bottom:20px;
	}

	.p-form__body {
		width: calc(100% - 400px);
		margin: 0px auto 20px;
		padding: 10px;

		max-width: 640px;
	}

	.p-form__body dl {
		margin: 15px auto;
		display: -webkit-box; /*Android4.3*/
		display: -moz-box;    /*Firefox21*/
		display: -ms-flexbox; /*IE10*/
		display: -webkit-flex; /*PC-Safari,iOS8.4*/
		display: flex;
		flex-wrap:wrap;
	}
	.p-form__body dt {
		margin: 0px;
		padding:5px 0 0 1em;
		font-size: 100%;
		font-weight: bold;
		width:270px;
		min-height:28px;
		line-height:30px;
		text-align:left;
	}
	.p-form__body dt::before {
		content: "";
		margin-right:6px;
		padding:4px 2em;
		font-size: 12px;
		font-weight: bold;
		position: relative;
		top: -2px;
		left: -10px;
		width: 48px;
	}
	.p-form__body dt.req::before {
		content: "必須";
		margin-right:6px;
		padding:4px 1em;
		font-size: 12px;
		font-weight: bold;
		background-color:#e93e28;
		color:#ffffff;
		position: relative;
		top: -2px;
		left: -10px;
	}
	.p-form__body dd {
		display: block;
		margin: 0px 0px 0px 10px;
		padding:0;
		width:calc(100% - 300px);
		min-height:20px;
	}

	.p-form__body dd.p-form__wrap label {
		display: block;
		width:100%;
		margin:3px 0;
	}

	.p-form__body dd input {
		font-size: 100%;
		color:#999999;
	}
	.p-form__body dd input[type=text] {
		margin: 0px auto;
		width:100%;
		height:auto;
		padding:6px 10px;
		border: 0px solid #cccccc;
		border-radius: 3px;
	}
	.p-form__body dd input[type=text].form__postcode {
		width:50%;
		max-width: 160px;
		margin-right: calc(100% - 200px);
	}
	.p-form__body dd select {
		margin: 6px auto 6px;
		width:auto;
		min-width: 160px;
		height:auto;
		padding:5px 8px;
		border: 1px solid #05b4eb;
		border-radius: 3px;
		color: #05b4eb;
		font-size:14px;
	}
	.p-form__body dd textarea {
		margin: 0px auto;
		width:100%;
		height:auto;
		padding:6px 8px;
		border: 0px solid #cccccc;
		border-radius: 3px;
		font-size: 90%;
		font-weight: normal;
		resize: none;
	}
	.p-form__body dd p {
		margin: 3px 11px;
		width:100%;
		height:auto;
		font-size: 90%;
		color:#505050;
		text-align:left;
	}
   .p-form__body dd p.err_msg{
      position: relative;
      color: #ee5454;
      margin-left: 21px;
   }
   .p-form__body dd p.err_msg:before{
      content: "";
      position: absolute;
      top: calc(50% - 10px);
      left: -20px;
      display: block;
      width: 18px;
      height: 18px;
      background: url("/polydron/img/cart/error.png") center no-repeat;
      background-size: contain;
   }


	.p-form__txt_error {
		background-color:rgba(238,84,84,0.2);
		color:#ee5454;
	}
	
	.p-form__txt_error:placeholder-shown {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
	}
	/* Google Chrome, Safari, Opera 15+, Android, iOS */
	.p-form__txt_error::-webkit-input-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
	}
	/* Firefox 18- */
	.p-form__txt_error:-moz-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
		opacity: 1;
	}
	/* Firefox 19+ */
	.p-form__txt_error::-moz-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
		opacity: 1;
	}

	.p-form__textarea_error {
		background-color:rgba(238,84,84,0.2);
		color:#ee5454;
	}
	
	.p-form__textarea_error:placeholder-shown {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
	}
	/* Google Chrome, Safari, Opera 15+, Android, iOS */
	.p-form__textarea_error::-webkit-input-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
	}
	/* Firefox 18- */
	.p-form__textarea_error:-moz-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
		opacity: 1;
	}
	/* Firefox 19+ */
	.p-form__textarea_error::-moz-placeholder {
		color:#ee5454;
		font-size:90%;
		line-height:140%;
		opacity: 1;
	}

	.p-form__check {
		color:#05b4eb;
		padding-top: 5px !important;
		padding-left: 4px !important;
		font-size:110% !imporatnt;
		text-align:left;
	}

	.p-width__s {
		width:calc(100% - 122px) !important;
	}

	.p-btn_wrap {
		max-width:720px;
		padding-top:20px;
		padding-bottom:20px;
	}

	.p-btn_main {
		max-width:300px;
	}

	.p-btn_back{
	   position: relative;
	   display: block;
	   width: 100%;
	 /*max-width: 420px;*/
	   max-width: 300px;
	   height: 60px;
	   background-color: #a0a0a0;
	   text-align: center;
	   line-height: 60px;
	   color: #fff;
	   font-size: 1.2em;
	   font-weight: bold;
	   border-radius: 30px;
	   letter-spacing: 5px;
	   text-decoration: none;
	}
	.p-btn_back:before{
	   content: "";
	   position: absolute;
	   top: calc(50% - 4px);
	   left: 30px;
	   display: block;
	   width: 8px;
	   height: 8px;
	   transform: rotate(225deg);
	   border-top: 2px solid #fff;
	   border-right: 2px solid #fff;
	}

	.p-br_pc {
		display:block;
	}
	.p-br_sm {
		display:none;
	}

/* -------------------------------------------------------------
TABLET / SP
--------------------------------------------------------------*/

@media all and (max-width: 768px) {

	.p-kv__txt {
		padding: 0 20px;
		text-align:left;
	}
	.p-kv__txt h2 {
		text-align:center;
	}

	.p-kv__txt_error {
		padding: 0 20px;
		text-align:left;
		color:#ee5454;
	}
	.p-kv__txt_error h2 {
		text-align:center;
	}


	.p-form__body {
		width: calc(100% - 40px);
		margin: 0px auto 20px;
		padding: 10px;
		max-width: 728px;
	}

	.p-form__body dt {
		margin: 0px;
		padding:5px 0 0 0em;
		font-size: 100%;
		font-weight: bold;
		width:100%;
		min-height:28px;
		line-height:30px;
		text-align:left;
	}
	.p-form__body dt::before {
		content: none;
	}
	.p-form__body dt.req::before {
		content: none;
	}
	.p-form__body dt::after {
		content: "";
		margin-right:6px;
		padding:4px 2em;
		font-size: 12px;
		font-weight: bold;
		position: relative;
		top: -2px;
		right: -10px;
		width: 48px;
	}
	.p-form__body dt.req::after {
		content: "必須";
		margin-right:6px;
		padding:4px 1em;
		font-size: 12px;
		font-weight: bold;
		background-color:#e93e28;
		color:#ffffff;
		position: relative;
		top: -2px;
		right: -10px;
	}
	.p-form__body dd {
		display: block;
		margin: 0px 0px 0px 0px;
		padding:0;
		width:calc(100%);
		min-height:20px;
	}

	.p-form__body dd.p-form__wrap label {
		display: block;
		width:100%;
		margin:3px 0;
	}

	.p-form__body dd input[type=text] {
		margin: 0px auto;
		width:calc(100% - 40px);
		height:auto;
		padding:16px 20px;
		border: 0px solid #cccccc;
		border-radius: 3px;
	}
	.p-form__body dd input[type=text].form__postcode {
		width:50%;
		max-width: 160px;
		margin-right: calc(100% - 200px);
	}
	.p-form__body dd select {
		margin: 6px auto 6px;
		width:auto;
		min-width: 160px;
		height:auto;
		padding:5px 8px;
		border: 1px solid #05b4eb;
		border-radius: 3px;
		color: #05b4eb;
		font-size:14px;
	}
	.p-form__body dd textarea {
		margin: 0px auto;
		width:calc(100% - 16px);
		height:auto;
		padding:6px 8px;
		border: 0px solid #cccccc;
		border-radius: 3px;
		font-size: 90%;
		font-weight: normal;
		resize: none;
	}
	.p-form__body dd p {
		margin: 3px 0px;
		width:100%;
		height:auto;
		font-size: 90%;
		color:#505050;
		text-align:left;
	}
	.p-width__s {
		width:calc(100% - 134px) !important;
		padding:10px 16px !important;
	}

	.p-btn_main {
		max-width:300px;
		width:45%;
		letter-spacing: 0px;
	}
	.p-btn_main:after{
	   right: 12%;
	}

	.p-btn_back{
	   width: 45%;
	 /*max-width: 420px;*/
	   max-width: 300px;
	   letter-spacing: 0px;
	}

	.p-btn_back:before{
	   left: 12%;
	}

	.p-br_pc {
		display:none;
	}
	.p-br_sm {
		display:block;
	}

}
