﻿@charset "utf-8";

/* =======================================
	Contact
======================================= */

/* header ------------------------------------- */


textarea {
  resize: vertical;
  overflow: hidden;
  -webkit-appearance: none;
  border: none;
}
@media (min-width: 0px) {
	textarea {
	  width:330px;
	}
}
@media (min-width: 960px) {
	textarea {
	  width:640px;
	}
}
input, button, select {
  vertical-align: middle;
  border-radius: 0;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
/*  -webkit-appearance: none;*/
}


@font-face {
    src: url('../../common/css/font/iconfont-webfont.eot');
    src: url('../../common/css/font/iconfont-webfont.eot?#iefix') format('embedded-opentype'),
         url("../../common/css/font/iconfont.ttf") format("truetype"), 
         url('../../common/css/font/iconfont-webfont.woff2') format('woff2'),
         url('../../common/css/font/iconfont-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
.glyph {
  font-family: 'iconfont';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  position: relative;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.glyph.glyph-all:before {
  content: "\e607";
}

.glyph.glyph-arrow-bottom:before {
  content: "\e608";
}

.glyph.glyph-arrow-left:before {
  content: "\e609";
}

.glyph.glyph-arrow-right:before {
  content: "\e60a";
}

.glyph.glyph-arrow-top:before {
  content: "\e60b";
}

.glyph.glyph-blank-large:before {
  content: "\e60c";
}

.glyph.glyph-blank-medium:before {
  content: "\e60d";
}

.glyph.glyph-blockquote:before {
  content: "\e60e";
}

.glyph.glyph-blog:before {
  content: "\e60f";
}

.glyph.glyph-category:before {
  content: "\e610";
}

.glyph.glyph-check:before {
  content: "\e611";
}

.glyph.glyph-contact:before {
  content: "\e612";
}

.glyph.glyph-facebook:before {
  content: "\e613";
}

.glyph.glyph-home:before {
  content: "\e614";
}

.glyph.glyph-scrolldown:before {
  content: "\e615";
}

.glyph.glyph-slash:before {
  content: "\e616";
}

.glyph.glyph-social:before {
  content: "\e617";
}

.glyph.glyph-twitter:before {
  content: "\e618";
}
@media (min-width: 0px) {
	.contact_wrap{
		width: 85%;
		margin: 50px auto 0;
	}
}
@media (min-width: 960px) {
	.contact_wrap{
		width: 75%;
		margin: 180px auto 0;
	}
}
@media (min-width: 1640px) {
	.contact_wrap{
		width: 60%;
		margin: 180px auto 0;
	}
}
#js-visionTitle1 {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-visionText1A {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText1B {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText1C {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionTitle2 {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-visionText2A {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText2B {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText2C {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText2D {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionTitle3 {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-visionText3A {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText3B {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-visionText3C {
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

#js-bgImages .vision__image1 {
  opacity: 0;
  -webkit-transform: translateY(40px);
  -ms-transform: translateY(40px);
  transform: translateY(40px);
}

#js-bgImages .vision__image2 {
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-bgImages .vision__image3 {
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-bgImages .vision__image4 {
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

#js-bgImages .vision__image5 {
  opacity: 0;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

.vision__text strong.ie:after {
  top: 20px !important;
}
@media (min-width: 0px) {
	.sidebar {
	  width: 190px;
	  float: right;
	  position: relative;
	  display:none;
	}
}
@media (min-width: 960px) {
	.sidebar {
	  width: 190px;
	  float: right;
	  position: relative;
	  display:block;
	  padding-left:100px;
	}
}
@media (min-width: 1240px) {
	.sidebar {
	  width: 190px;
	  float: right;
	  position: relative;
	  display:block;
	  padding-left:0px;
	}
}
.sidebar.ie .sidebar__share-list li i {
  margin-top: 4px !important;
}

.sidebar.ie .sidebar__related-head .sidebar__related-prev .glyph, .sidebar.ie .sidebar__related-head .sidebar__related-next .glyph {
  top: 12px !important;
}

.sidebar .sidebar__inner {
  width: 190px;
  position: fixed;
  bottom: 0px; 
  top: 180px;
}
.sidebar .sidebar__inner.top {
  top: 42%; 
}
.sidebar .sidebar__share {
  position: relative;
  z-index: 100;
}

.sidebar .sidebar__title {
  font-size: 13px;
  font-size: 1.3rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
}

.sidebar .sidebar__share-list {
  margin-top: 20px;
}

.sidebar .sidebar__share-list li {
  width: 100%;
  height: 28px;
  background-color: #f0f0f0;
  margin-bottom: 10px;
  position: relative;
  padding-top: 6px;
}

.sidebar .sidebar__share-list li:last-child {
  margin-bottom: 0;
}

.sidebar .sidebar__share-list li i {
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 18px;
  margin-right: 40px;
  overflow: hidden;
  vertical-align: middle;
}

.sidebar .sidebar__share-list li div {
  position: relative;
  top: 1px;
  display: inline-block;
  min-height: 20px;
  min-width: 100px;
  vertical-align: middle;
}

.sidebar .sidebar__related {
  margin-top: 60px;
}

.sidebar .sidebar__related-head {
  height: 34px;
  margin-bottom: 10px;
}

.sidebar .sidebar__related-head .sidebar__related-controll {
  width: 66px;
  float: right;
}

.sidebar .sidebar__related-head .sidebar__title {
  float: left;
  margin-top: 9px;
}

.sidebar .sidebar__related-list {
  height: 204px;
  position: relative;
}

.sidebar .sidebar__related-list .approach__article {
  width: 190px;
  height: 204px;
  position: absolute;
  z-index: 10;
  opacity: 1;
}

.sidebar .sidebar__related-list .approach__article.isHide {
  opacity: 0;
  z-index: -1;
}

.sidebar .sidebar__related-list .approach__article .approach-list__img {
  width: 190px;
  height: 120px;
}

.sidebar .sidebar__related-list .approach__article .approach-list__img img {
  max-height: 100%;
  max-width: 100%;
}

.sidebar .sidebar__related-list .approach__article .approach-list__upper {
  margin-top: 15px;
}

.sidebar .sidebar__related-list .approach__article .approach-list__category {
  font-size: 12px;
  font-size: 1.2rem;
}

.sidebar .sidebar__related-list .approach__article .approach-list__slash {
  font-size: 12px;
  font-size: 1.2rem;
  margin-left: -6px;
  top: 0;
}

.sidebar .sidebar__related-list .approach__article .approach-list__time {
  font-size: 11px;
  font-size: 1.1rem;
}

.sidebar .sidebar__related-list .approach__article .approach-list__title {
  margin-top: 13px;
  width: 212px;
  font-size: 12px;
  font-size: 1.2rem;
}

.sidebar .sidebar__related-prev, .sidebar .sidebar__related-next {
  width: 30px;
  height: 34px;
  background-color: #f0f0f0;
  position: relative;
  cursor: pointer;
  transition: background-color 0.8s cubic-bezier(0, 0, 0.38, 1), color 0.7s cubic-bezier(0, 0, 0.38, 1) -0.2s;
}

.sidebar .sidebar__related-prev:hover, .sidebar .sidebar__related-next:hover {
  color: #FFF;
  background-color: #0093af;
}

.sidebar .sidebar__related-prev.disabled, .sidebar .sidebar__related-next.disabled {
  opacity: 0.3;
  cursor: default;
}

.sidebar .sidebar__related-prev.disabled:hover, .sidebar .sidebar__related-next.disabled:hover {
  color: #2d2925;
  background-color: #f0f0f0;
}

.sidebar .sidebar__related-prev .glyph, .sidebar .sidebar__related-next .glyph {
  position: absolute;
}

.sidebar .sidebar__related-prev {
  float: left;
  margin-right: 5px;
}

.sidebar .sidebar__related-prev .glyph {
  top: 12px;
  left: 9px;
}

.sidebar .sidebar__related-next {
  float: right;
}

.sidebar .sidebar__related-next .glyph {
  top: 12px;
  left: 11px;
}

.sidebar .sidebar__othermember-list ul {
  width: 190px;
  height: 116px;
  overflow: hidden;
  position: relative;
}

.sidebar .sidebar__othermember-list ul .othermember-item {
  position: absolute;
  z-index: 10;
  opacity: 1;
}

.sidebar .sidebar__othermember-list ul .othermember-item.isHide {
  opacity: 0;
  z-index: -1;
}

.sidebar .sidebar__othermember-list ul .othermember-item a {
  display: block;
}

.sidebar .sidebar__othermember-list ul .othermember-item img {
  width: 190px;
}

.sidebar .sidebar__contact ol li {
  display: block;
  width: 200px;
  height: 68px;
  text-align: center;
  background-color: #f0f0f0;
  color: #2d2925;
  margin-bottom: 30px;
  position: relative;
}

.sidebar .sidebar__contact ol li:last-child {
  margin-bottom: 0;
}

.sidebar .sidebar__contact ol li:last-child:after {
  height: 0;
}

.sidebar .sidebar__contact ol li:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 98px;
  width: 2px;
  height: 30px;
  background-color: #f0f0f0;
}

.sidebar .sidebar__contact ol li i {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  display: block;
  width: 211px;
  font-style: normal;
  padding-top: 16px;
}

.sidebar .sidebar__contact ol li p {
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  display: block;
  width: 222px;
  padding-top: 2px;
  line-height: 1.8;
}

.sidebar .sidebar__contact ol li.current {
  color: #FFF;
  background-color: #008fd2;
}
.sidebar .sidebar__contact ol li.current p{
  color: #FFF;
}
.subpage.contact .sidebar {
  width: 200px;
}

.notfound-content {
  margin-top: 80px;
  padding: 0 40px;
  overflow: hidden;
  position: relative;
}

.notfound-content .notfound-content_inner {
  background-color: #fbfbfb;
  position: relative;
  text-align: center;
}

.notfound-content .notfound__header {
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  width: 1180px;
  margin-top: 178px;
  margin-bottom: 61px;
}

.notfound-content .notfound__lead {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
  display: block;
  margin-bottom: 17px;
  width: 1180px;
}

.notfound-content .notfound__btn {
  position: absolute;
  top: 421px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.notfound-content .notfound__img {
  margin-top: 116px;
}

.policy__underline {
  -webkit-transform: translateY(73px);
  -ms-transform: translateY(73px);
  transform: translateY(73px);
  width: 100%;
  height: 6px;
  background-color: rgba(218, 218, 218, 0.4);
  display: none;
}

.policy__underline.policy {
  display: block;
}

.policy-content {
  margin-top: 104px;
}

.policy-content .wrapper {
  width: 880px;
  padding: 0 100px;
}

.policy-content .policy__lead {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
  width: 968px;
}

.policy-content .policy__list {
  margin-top: 55px;
  width: 968px;
}

.policy-content .policy__list dt {
  margin-top: 36px;
  margin-bottom: 36px;
}

.policy-content .policy__list dd {
  padding-left: 34px;
}

.policy-content .policy__list dd p {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
  margin-bottom: 18px;
}

.policy-content .policy__list dd ol li {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  display: block;
  line-height: 1.8;
  margin-bottom: 2px;
}

.policy-content .policy__list-numA {
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  color: #0093af;
}

.policy-content .policy__list-numA + b {
  margin-left: 10px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
}

.policy-content .policy__list-numB {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  font-style: normal;
  margin-right: 13px;
}

.policy-content .policy__contact {
  background-color: #f0f0f0;
  text-align: center;
  padding: 34px 0;
  margin-top: 50px;
}

.policy-content .policy__contact .policy__contact-lead {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  display: block;
  width: 968px;
}

.policy-content .policy__contact .policy__contact-address {
  background-color: #FFF;
  border-radius: 20px;
  padding: 8px 20px;
  display: inline-block;
  margin-top: 18px;
}

.policy-content .policy__contact .policy__contact-address a {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  transition: color 0.5s cubic-bezier(0, 0, 0.38, 1);
  padding-left: 15px;
}

#js-policyContent {
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
}

.subpage.contact .subpage-content .wrapper {
  overflow: hidden !important;
}

.subpage.contact .subpage-content.confirm .contact__content dl dt.contact__entry + dd {
  line-height: 1.8 !important;
}

.subpage.contact .subpage-content.confirm .contact__content dl dd {
  min-height: 52px;
  line-height: 52px;
  border-left: 2px solid #f0f0f0;
  padding-left: 40px;
}

.subpage.contact .subpage-content.complete .contact__content {
  margin-top: 111px;
  border: 3px solid #f0f0f0;
  text-align: center;
  padding: 114px 0 118px 0;
}

.subpage.contact .subpage-content.complete .contact__content .complete__title {
  font-size: 25px;
  font-size: 2.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  width: 1198px;
  margin-bottom: 55px;
}

.subpage.contact .subpage-content.complete .contact__content .complete__lead {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
  margin-bottom: 17px;
  display: block;
  width: 1198px;
}

.subpage.contact .subpage-content.complete .contact__content .complete__btn {
  margin-top: 38px;
}

.subpage.contact .subpage-content .contact__lead {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
  margin-top: 105px;
  text-align: center;
  width: 1198px;
  letter-spacing: .17em;
}

.subpage.contact .subpage-content .contact__lead .required {
  color: #ffc627;
  font-style: normal;
}
.contact_text{
	margin-bottom:50px;
}
@media (min-width: 0px) {
	.contact_text p{
		font-size:13px;
	}
}
@media (min-width: 1000px) {
	.contact_text p{
		font-size:14px;
	}
}
.contact_text i {
	color: #008fd2;
	font-style: normal;
	font-weight: bold;
}
 .contact__form {
  float: left;
  padding-bottom: 10px;
}
@media (min-width: 0px) {
	 dl dt {
	  width: initial;
	  float: none;
	}
}
@media (min-width: 960px) {
	 dl dt {
	  width: 210px;
	  float: left;
	}
}
 dl dt.contact__kana + dd {
  margin-bottom: 28px;
}

 dl dt.contact__email + dd {
  margin-bottom: 28px;
}

 dl dt.contact__tel + dd {
  margin-bottom: 28px;
}

 dl dt.required i {
  color: #008fd2;
}

 dl dt span {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  font-weight: 600;
  padding-top: 10px;
}

 dl dt i {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 0.07em;
  -webkit-transform: scale(0.95, 1);
  -ms-transform: scale(0.95, 1);
  transform: scale(0.95, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  color: #c3c3c3;
  margin-top: 8px;
  font-style: normal;
  display: block;
}
@media (min-width: 0px) {
	 dl dd {
	  width: initial;
	  margin-bottom: 0px;
	  margin-left: 0px;
	}
}
@media (min-width: 960px) {
	 dl dd {
	  width: 580px;
	  margin-bottom: 30px;
	  margin-left: 210px;
	}
}
 dl dd span {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  margin: 0 10px;
  position: relative;
  top: 4px;
  left: 3px;
}

 {
  height: 32px;
  line-height: 32px;
  margin-left: 210px;
  padding-top: 1px;
  position: relative;
}

 label {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  display: inline-block;
}

 label a {
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  color: #008fd2;
  text-decoration: underline;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  display: inline-block;
}

 input[type="checkbox"] {
  opacity: 0;
  width: 0;
  /*
  position: absolute;
  z-index: -1;
  */
}

 input[type="checkbox"]:checked + .contact__check svg {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
}

 .contact__check {
  display: inline-block;
  width: 34px;
  height: 30px;
  box-sizing: border-box;
  border: 1px solid #dadada;
  overflow: hidden;
  vertical-align: middle;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
}

 .contact__check svg {
  position: absolute;
  top: 9px;
  left: 9px;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  opacity: 0;
  transition: -webkit-transform 0.2s cubic-bezier(0, 0, 0.38, 1), opacity 0.1s cubic-bezier(0, 0, 0.38, 1);
  transition: transform 0.2s cubic-bezier(0, 0, 0.38, 1), opacity 0.1s cubic-bezier(0, 0, 0.38, 1);
}

 .contact__btn {
  margin: 50px 0px 80px;
  position: relative;
}

 .contact__btn .btn-large {
  overflow: visible;
  position: relative;
  height: 58px;
  line-height: 58px;
  background-color: #2d2925;
  color: #FFF;
  display: block;
  text-align: center;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  top: 0;
  left: 0;
  transition: top 0.5s cubic-bezier(0, 0, 0.38, 1), left 0.5s cubic-bezier(0, 0, 0.38, 1), background-color 0.5s cubic-bezier(0, 0, 0.38, 1);
  font-size:18px;
}
@media (min-width: 0px) {
	.contact__btn .btn-large {
		width: 300px;
	}
}
@media (min-width: 960px) {
	.contact__btn .btn-large {
		width: 610px;
	}
}
@media (min-width: 1000px) {
	.contact__btn .btn-large {
		width: 660px;
	}
}
 .contact__btn .btn-large:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(218, 218, 218, 0.4);
  z-index: -1;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: all 0.5s cubic-bezier(0, 0, 0.38, 1);
}

 .contact__btn .btn-large.disable {
  background-color: #c5c5c5;
  transition: none;
  cursor: default;
}

 .contact__btn .btn-large.disable:hover {
  top: 0;
  left: 0;
  background-color: #c5c5c5;
  cursor: default;
}

 .contact__btn .btn-large.disable:hover:after {
  top: 0;
  left: 0;
}

 .contact__btn .btn-large.disable:after {
  transition: none;
}

 .contact__btn .btn-large:hover {
  background-color: #008fd2;
}

 .contact__btn .btn-large:hover:after {
  top: 10px;
  left: 10px;
}

 .contact__btn .btn-large span {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
}

 .contact__btn .btn-small {
  width: 182px;
  height: 58px;
  float: left;
  line-height: 58px;
  background-color: #f0f0f0;
  color: #2d2925;
  display: block;
  text-align: center;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  position: relative;
  top: 0;
  left: 0;
  transition: top 0.5s cubic-bezier(0, 0, 0.38, 1), left 0.5s cubic-bezier(0, 0, 0.38, 1), background-color 0.5s cubic-bezier(0, 0, 0.38, 1), color 0.5s cubic-bezier(0, 0, 0.38, 1) -1s;
}

 .contact__btn .btn-small:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(218, 218, 218, 0.4);
  z-index: -1;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: all 0.5s cubic-bezier(0, 0, 0.38, 1);
}

 .contact__btn .btn-small:hover {
  top: -5px;
  left: -5px;
  background-color: #727272;
  color: #FFF;
}

 .contact__btn .btn-small:hover:after {
  top: 10px;
  left: 10px;
}

 .contact__btn .btn-small span {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  margin-left: 12px;
  font-weight: 600;
}

 .contact__btn .btn-small .glyph {
  position: absolute;
  top: 20px;
  left: 17px;
  font-size: 18px;
  font-size: 1.8rem;
}

 .contact__btn .btn-mid {
  width: 579px;
  height: 58px;
  line-height: 58px;
  margin-left: 212px;
  background-color: #2d2925;
  color: #FFF;
  display: block;
  text-align: center;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  position: relative;
  top: 0;
  left: 0;
  transition: top 0.5s cubic-bezier(0, 0, 0.38, 1), left 0.5s cubic-bezier(0, 0, 0.38, 1), background-color 0.5s cubic-bezier(0, 0, 0.38, 1);
}

 .contact__btn .btn-mid:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(218, 218, 218, 0.4);
  z-index: -1;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: all 0.5s cubic-bezier(0, 0, 0.38, 1);
}

 .contact__btn .btn-mid:hover {
  top: -5px;
  left: -5px;
  background-color: #0093af;
}

 .contact__btn .btn-mid:hover:after {
  top: 10px;
  left: 10px;
}

 .contact__btn .btn-mid span {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  margin-left: 18px;
}

 .contact__btn .btn-mid .glyph {
  top: -2px;
  font-size: 30px;
  font-size: 3rem;
}
 .input-wrapper {
  border: 1px solid #dadada;
  overflow: hidden;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
}
@media (min-width: 0px) {
	.input-wrapper {
		width: 300px;
	}
}
@media (min-width: 960px) {
	.input-wrapper {
		width: 400px;
	}
}
@media (min-width: 1000px) {
	.input-wrapper {
		width: 440px;
	}
}
@media (min-width: 1600px) {
	.input-wrapper {
		width: 560px;
	}
}

}
 .input-wrapper .input {
  width: 643px;
  box-sizing: border-box;
}

 .input-wrapper.input__mid {
  width: 280px;
  margin-right: 20px;
}

 .input-wrapper.input__mid:last-child {
  margin-right: 0;
}

 .input-wrapper.input__mid .input {
  width: 310px;
}

 .input-wrapper.input__small {
  width: 137px;
}

 .input-wrapper.input__small .input {
  width: 150px;
}

 .input-wrapper.input__mini {
  width: 100px;
}

 .input-wrapper.input__mini .input {
  width: 135px;
}
@media (min-width: 0px) {
	.page-header h1{
	  letter-spacing: -1.4px;
	}
}
@media (min-width: 960px) {
	.page-header h1{
	  letter-spacing: 0px;
	}
}

 .input-wrapper.error {
  border: 1px solid #dd5b4e;
}

 .input-wrapper.error .input {
  color: #dd5b4e;
  background-color: #ffeeec;
}

 .input-wrapper.error .input::-webkit-input-placeholder {
  color: #dd5b4e;
}

 .input-wrapper.error .input::-moz-placeholder {
  color: #dd5b4e;
}

 .input-wrapper.error .input::-ms-input-placeholder {
  color: #dd5b4e;
}

 .input {
  padding: 16px 20px 15px 20px;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  transition: background-color 0.5s cubic-bezier(0, 0, 0.38, 1);
  width:540px;
}

 .input:hover {
  outline: 0px;
  background-color: #fafafa;
}

 .input:focus {
  outline: 0px;
  background-color: #fafafa;
}

 .input::-webkit-input-placeholder {
  color: #c3c3c3;
}

 .input::-moz-placeholder {
  color: #c3c3c3;
}

 .input::-ms-input-placeholder {
  color: #c3c3c3;
}

 textarea {
  height: 202px;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  line-height: 1.8;
}

 .select {
  border: 1px solid #dadada;
  padding: 0px 20px;
  width: 190px;
  height: 52px;
  box-sizing: border-box;
  position: relative;
  margin-bottom: 8px;
  transition: background-color 0.5s cubic-bezier(0, 0, 0.38, 1);
}
 .content_item{
   width: 280px;
 }
 .select:hover {
  background-color: #fafafa;
}

 .select .glyph {
  position: absolute;
  top: 15px;
  right: 20px;
  font-size: 20px;
  font-size: 2rem;
}

 .select .select_text {
  position: absolute;
  top: 18px;
  left: 10px;
  color: #c3c3c3;
}
 .select .select_text.selected{
  color: #000;
}

 select {
  width: 190px;
  height: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  -webkit-transform: scale(0.9, 1);
  -ms-transform: scale(0.9, 1);
  transform: scale(0.9, 1);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  display: inline-block;
  display: block;
  position: relative;
  opacity: 0;
  z-index: 2;
  transition: background-color 0.5s cubic-bezier(0, 0, 0.38, 1);
}
 .content_item select{
   width: 280px;
 }

 select:focus {
  outline: 0px;
  background-color: #fafafa;
}

 select:hover {
  outline: 0px;
  background-color: #fafafa;
}

.privacy {
    padding: 30px;
    background-color: rgba(243, 243, 243, 0.7);
    margin-bottom:30px;
}
@media (min-width: 0px) {
	.privacy {
		width:300px;
	}
}
@media (min-width: 960px) {
	.privacy {
		width:610px;
	}
}
@media (min-width: 1000px) {
	.privacy {
		width:660px;
	}
}

.privacy-article{
    width:100%;
}
.privacy p{
    font-size:10pt;
    line-height:18pt;
    margin-bottom:20px;
}
.contact__agree a{
	font-size:10pt;
}
.contact__agree label{
	font-size:10pt;
}
/* 残り項目 */
@media (min-width: 0px) {
	.required_wrap{
		position:fixed;
		top:20%;
		left:0px;
		display:none;
	}
}
@media (min-width: 960px) {
	.required_wrap{
		position:fixed;
		top:30%;
		left:0px;
		display:block;
	}
}
.required_text{
	display: block;
	float:right;
	width:50px;
}
.required_count{
	font-size: 18px;
	padding:0 2px;
}
.required_text p{
	display:block;
	position: absolute;
	width:100px;
	margin-left: 10px;
	color: #fff;
	font-size: 13px;
	text-decoration: none;
	z-index: 5;
	line-height:20px;
	padding:10px;
	margin-top:-15px;
}
.required_text p:before {
	content: "";
	display: block;
	position: absolute;
	left: -8px;
	top: 0;
	width: 100px;
	height: 60px;
	background: #008fd2;
	z-index: -2;
}
.required_text p:after {
	content: "";
	display: block;
	position: absolute;
	left: 93px;
	top: 0;
	width: 43px;
	height: 43px;
	-webkit-transform-origin: left top;
	-webkit-transform: rotate(45deg);
	-moz-transform-origin: left top;
	-moz-transform: rotate(45deg);
	transform-origin: left top;
	transform: rotate(45deg);
	background: #008fd2;
	z-index: -1;
}
@media (min-width: 0px) {
	.thanks_wrap{
		width:80%;
		margin-bottom:100px;
	}
}
@media (min-width: 960px) {
	.thanks_wrap{
		width:75%;
		margin-bottom:100px;
	}
}
.here{
	text-decoration:underline;
	font-size:10pt;
}
/* ラフ用はりぼて */
.haribote img{
	width:100%;
}
/* 確認画面用のテーブル */
table.formTable{
	width:100%;
	margin: 15px auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:20px;
	display: table-cell;
}
table.formTable th{
	width:40%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}


/* 送信・前画面へ戻るボタン ------------------------- */
#confirm input[type="submit"],#confirm input[type="button"]{
	width:100%;
}
#confirm input[type="button"]{
	background: #adadad;
	color: #FFF;
	transition: 0.5s;
}
#confirm input[type="button"]:hover{
	opacity: 0.7;
}
.error_messe{
	margin:5px 0;
	color:red;
}