
@charset "utf-8";


/*==================== 会員登録 ====================*/

.select_forms_tab a:hover {
    text-decoration: none;
}
.select_forms_tab{
	/*border-bottom: 1px solid #201f2f;*/
	margin:4em 0 1em;
}
.select_forms_tab ul{
	display: flex;
	align-items: flex-end;
    justify-content: space-between;
}
.select_forms_tab ul .tab{
	flex-basis: 49%;
}
.select_forms_tab ul .tab a{
	display: flex;
	align-items: center;
	justify-content: center;
    padding: 0.5em 0;
    color: #fff;
	font-size: 24px;
}
.select_forms_tab ul .tab a .fa {
	margin-right: 1rem;
}
.select_forms_tab ul .tab.corp a{
	background-color: var(--houjin);
    border: 1px solid #ddd;

}
.select_forms_tab ul .tab.indi a{
	background-color: var(--kojin);
    border: 1px solid #ddd;
}
.select_forms_tab ul .tab.cur a{
	background-color: var(--accent2);
    padding: 0.7em 0;
}
.form_wrapper{
	display: none;
	/*padding: 1rem;*/
}

.select_forms_tab ul .tab a:hover {
opacity: 0.8;
}
/*====================
賛助会員
 ====================*/

.pages h2.mem_ttl span {
	color: #201f2f;
   	position: relative;
 	display: inline-block;
  	/*margin-bottom: 1em;*/
    font-weight: 900;
	padding-top: 1.5em;
}

.pages h2.mem_ttl span:before {
  content: '';
  position: absolute;
  bottom: 30px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #d1a553;
  border-radius: 2px;
}


/*====================
会員サイト　membersite
 ====================*/
 /* MEMBER > ログイン
---------------------------------------------------- */
.member_head header.top-head {
    /*background-color: #bf760c;*/
}
.member_head .menu > li a {
    font-size: 1.1em;
}
.member_page section.h1block {
    background-color: #d1a553;
    height: 150px;
}
.member_page .layout-contents {

    background-color: #f9f6f2;
}
.member_page .inner {

    xmax-width: 70%;
}
.member_page .pages-header{
	xdisplay: flex;
    xwidth: 1024px;
    xmargin: 0 auto;
}
.member_page .pages-header .inner02{
	margin-left: auto;
}
.member form {
    xpadding: 40px 80px 0px 80px;
}

.member .form-item {

  width: 100%;
}
p.login_area_txt {
    padding: 20px 50px 30px 50px;
    line-height: 1.3rem;
    text-align: left;
}
p.login_area_txt a{
    border-bottom: 1px solid #31364d;
}
p.login_area_txt a:hover{
    opacity: 0.8;
    border-bottom: 1px solid #737890;
}
.member .form-item input {
  background: #fafafa;
  border: none;
  border-bottom: 2px solid #e9e9e9;
  color: #666;
  font-family: 'Open Sans', sans-serif;
  font-size: 1em;
  height: 50px;
  transition: border-color 0.3s;
  width: 100%;
}

.member .form-item input:focus {
  border-bottom: 2px solid #c0c0c0;
  outline: none;
}

.member input, .member textarea, .member select {
    border: 1px solid #b2b2b2;
    padding: 10px;
    line-height: 1.4em;
}
.login_area {
    width: 500px;
  margin: 0 auto 80px auto;
    background: #e8e6e2;
    border-radius: 8px;
}
.member .txt2{
    /*color: #fff;*/
    font-size: 0.9rem;
    padding: 30px 0px;
    text-align: center;
    line-height: 1.5rem;
}
.member .button-panel .button {
  background: #e1982f;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 50px;
  font-size: 1.2em;
  letter-spacing: 0.05em;
  text-align: center;
  text-transform: uppercase;
  transition: background 0.3s ease-in-out;
  margin: 20px 0;
  width: 100%;
}

.member .button:hover {
   background: #727d96;
}
li.btnbox input.sbtn {
    height: 40px;
    width: 100px;
    font-size: 14px;
    line-height: 1rem;
    text-align: center;
}

.formhead-need2 {
    background-color: var(--accent);
    color: #fff;
    font-size: 0.7em;
    padding: 3px 5px;
    position: absolute;
    /* right: 0; */
    top: 0;
    left: 0;
}

.contactFormArea {
	xwidth: 810px;
	padding: 10px 25px;
	margin: 0 auto;
	border-color: #c8c9ca;
	border-style: solid;
	border-width: 1px;
}
.contactForm {
	width: 100%;
	margin: 0 auto;
	padding: 10px;
}
.contactForm th {
    border-width: 1px 0 1px 0;
    border-style: solid;
    position: relative;
    font-weight: normal;
    padding: 20px 0px 20px 10px;
    border-color: #999;
    background-color:var(--gray);
    background-clip: padding-box;
    color: var(--black);
    xfont-size: 1rem;
		width: 35%;
	line-height: 1.5;
}
.contactForm td {

	border-width: 1px 0 1px 0;
	border-color:  var(--gray);
	border-style: solid;
	text-align: left;
  border-color: #999;
	padding: 20px 0px 20px 10px;
}
.contactForm td p.caution {
	padding: 10px 0px 2px 0px;
}
.mail-form-header {
	swidth: 800px;
	background-color: #eeeeef;
	padding: 10px 0;
	margin: 15px auto;
	text-align: center;
	font-size: 90%;
}
.mail-form-footer {
	xwidth: 800px;
	padding: 20px 0;
	margin: 0 auto;
	text-align: center;
}
.formhead-greed {
	width: 160px;
	xwidth: 100%;
	display: inline-block;
	xfont-weight: bold;
	color: #fff;
	background-color: #777;
	padding: 5px 15px;
	margin: auto 0;
	text-align: center;
}
.formhead-need {
}

.contactForm .txt_wrap {
    line-height: 1.5rem;
    padding-bottom: 5px;
}

.contactForm p span.note {
    color: #f66;
    letter-spacing: -1;
}

.dragbox p {

    text-align: center;
    font-size: 1rem;
    position: absolute;
    right: 0;
    margin: auto;

    top: 35%;
    left: 10%;
    transform: translate(-50%, -50%);
    line-height: 1.2rem;
    width: 300px;
}
.dragbox p span{ font-size: 0.8rem;}

.dragbox {
    position: relative;
    margin-top: 10px;
}
.dragbox_input {
    padding: 100px 160px;
    border: 1px dashed #1a77bd;
}

.forsp {
    display: none;
}
table#contactForm-privacypolicy {
    margin: 0;
}
#contactForm-privacypolicy th {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
    color: #000;
    text-align: center;
    background-color: var(--gray_thin);
    position: relative;
}

#contactForm-privacypolicy td {
  width: 100%;
  padding: 20px 10px;
  box-sizing: border-box;
  text-align: left;
  background-color: #fff;
  color: #333;
}

#contactForm-privacypolicy td > p{
	margin-bottom: 0;
}

#contactForm-privacypolicy .policybutton {
  display: flex;
  justify-content: center;
  padding: 20px 0;
  font-size: 1rem;
  text-align: center;
  background-color: #ddd;
  font-weight: bold;
}
label.check_button {
	display: block;
	padding: 20px 0;
	font-size: 1rem;
	text-align: center;
	background-color: #accee1;
	font-weight: bold;
	margin-right: 0;
}
label.check_button2 {
	display: block;
	padding: 20px 0;
	font-size: 1rem;
	text-align: center;
	background-color: #bdcfa7
	;
	font-weight: bold;
	margin-right: 0;
}
.privacypolicy {
    overflow-y: scroll;
    width: 100%;
    height: 300px;
    margin-bottom: 20px;
    padding: 20px;
    box-sizing: border-box;
    border: 1px solid #ccc;
  }

  .privacypolicy dt {
    margin-bottom: 1em;
    font-weight: bold;
  }

  .privacypolicy__head {
    margin-bottom: 1em;
    font-weight: bold;
  }

  .privacypolicy__lead {
      margin-bottom: 1em;
      font-size: 0.9rem;
      line-height: 1.5rem;
  }
  .privacypolicy__item {
    margin-bottom: 1em;
  }

   .privacypolicy__item dd {
    margin-top: 5px;
  }
  .privacypolicy__item dd > * {
    margin-bottom: 1em;
  }
  .privacypolicy__item dd > ol > li {
    /*  font-size: 0.8rem;
      line-height: 1.5rem;*/
  }
  .privacypolicy__item dd > p{
     /*   font-size: 0.8rem;
      line-height: 1.5rem;*/
  }
  .privacypolicy__item ol.list_parentheses {
      padding:0 0 0 1em;
      margin:0;
  }

  .privacypolicy__item ol.list_parentheses li.list {
      list-style-type:none;
      list-style-position:inside;
      counter-increment: num;
      padding: 1px 0;

  }
  .privacypolicy__item ol.list_parentheses li.list:before{
      display: marker;
      content: counter(num,lower-alpha)". ";
  }


  .privacypolicy__item ol.list_parentheses li.list p.txt_s {
      line-height: 1.8rem;
      font-size: 0.8rem;
      margin-left: 20px;

  }

/* #contact
---------------------------------------- */
main.contact form {
	width: 100%;
}
/*
main.contact form dl dt {
    padding: 0;
    width: 180px;
    font-size: 1rem;
    line-height: 35px;
}
main.contact form dl dd {
	font-size: 0.8rem;
    line-height: 1.5rem;
}
*/
main.contact form .description {
	color: #EC1C24;
}
main.contact form .attention {
	margin-top: 15px;
	font-size: 14px;
	line-height: 1.7;
}
main.contact form #privacy {
	overflow: auto;
	box-sizing: border-box;
	padding: 30px;
	height: 173px;
	border: 1px solid #B2B2B2;
}

.contactForm td.birth {
    display: flex;
    border-width: inherit;
}
.contactForm td.birth p {
    padding-right: 10px;
}
ul.address-list li {
    margin-bottom: 10px;
}
.contactArea .link {
    margin-top:-100px;
      padding-top:100px;

}

.contactArea p.txt {
    text-align: center;
    padding-bottom: 30px;
}

input[type="text"].min_input {
    width: 100px;
    margin-right: 0.5em;
}
span.ginkou {
  min-width: 70px;
  display: inline-block;
}
h3.privacy_h3 {
  font-size: 1rem;
}













@media screen and (max-width: 780px) {
  .contactForm td{
    padding: 20px 0px 20px 0;
    background: initial;
  }
    .join .select_forms_tab ul .tab a {
		xfont-size: 14px;
	}
	.join .contactArea {
	}
	.join .contactArea span.link {
		margin-top: 0px;
		padding-top: 0px;
	}
	.join .formhead-need {
		right: 3px;

		display: inline-block;
		width: 50px;
	}
	.join .smallform{margin-top: 10px;}
	span.gray.p90 {
		padding-top: 5px;
		display: block;
		text-align: left;
	}
	.join .contact-pages .cont-02 input[type="submit"] {
		margin: 10px 20px;
	}
	.join input[type="reset"], input[type="button"] {
	}
	.join .contactFormArea {

	}
	.join .contactForm {
		position: relative;
		margin: 0 auto;
		padding: 10px 0;

		border-style: none;
	}

	.join .contactForm tr,.contactForm th, .contactForm td {
		width: 100%;
		display: block;
		text-align: center;
	}
  .contactForm td {
    text-align: left;
  }

	.join .contactForm td p {
		text-align: left
	}
	.join h1.contact-h1 {
		background-color: #141519;
		padding: 50px 0px;
		font-size: 2em;
		color: #fff;
	}
	.join main.contact p.txt-area {
		padding: 30px 0px;
	}

	.join .dragbox_input {
		padding: 10px;
    width: 100%;
	}
	.join .dragbox p {
		display: none;
	}


	.join .contactForm p span.note {

		line-height: 1.5;
	}

	.join .contactForm th {
		font-weight: normal;
		border-width: 0px 0 1px 0;
		padding: 10px 0;
		vertical-align: top;
		width: 100%;
	    font-size: 1.2em;

    }
	.join .contactForm tr:first-child th {
		border-width: 1px 0 1px 0;
	}
	.join .contactForm td {
		xfont-size: 80%;
		border-width: 0 0 1px 0;
		padding: 10px 10px;
		text-align: center;
		xborder-width: 1px;
		xborder-color: #c8c9ca;
	}
	.join input[type="text"], input[type="email"] {
		width:100%;
	}
    input[type="text"].min_input {
        width: 100px;
        margin-right: 0.5em;
    }
	.join .mail-form-footer {
		display: -webkit-flex;
		display: flex;
        justify-content: center;
	}
	.join p.coutiontxt {
		padding-bottom: 0px;
	}
	.join .office-table td span {
		padding: 0;
	}
	.join .up-cont {

		display: none;
	}
	.join .figure {

		position: inherit;
	}
	.join ul.business-list {

		position: inherit;
	}

	.join ul.business-list li span {

		padding: 20px 10px;
	  width: 95%;
		margin-bottom: 10px;
	}
	.join ul.business-list li span b {
		font-size: 0.9rem;
	}
	.join dl.business-cont {
	   margin-top: 20px;
		display: block;
	}
	.join ul.business-list {
	   width: 100%;
	}
	.join h1.head-logo img {
		width: 300px;
	}
	.join p#domain strong a {
		font-size: 0.8rem;
	}
	.join .domain-info > p strong {
		font-size: 0.8rem;
	}
	.join .domain-info {
		padding: 5px;

	}
	.join p.spcompany {
		font-size: 0.5rem;
	}
	.join .pagesbox {
		padding: 20px 30px;
	}

  select{
    width: 100%;
  }
}
