@charset "utf-8";
/* CSS Document */



#email .box{ }
#email {padding-bottom:4rem; }
#email a{ color:#1b64b0; text-decoration: underline;}
#email a:hover{ color:#0fa1d9}


#email .rightBox p a{ display: block; width: 100%;overflow: hidden; text-overflow: ellipsis;white-space: nowrap;}




/**NEWS**/
/* リスト */
.content-box.latest-news{ background:none;max-width: 1280px; }
.latest-news .swiper-wrapper{display: flex;display:flex;justify-content:left; flex-wrap: wrap; gap:16px;}
.latest-news .swiper-slide.post {width: calc( 33% - 8px); margin-bottom: 0;}
@media (min-width:0px) and (max-width: 799px) {
	.latest-news .swiper-slide.post {width: 100%;}
}/*@media*/
@media (min-width:800px) and (max-width: 999px) {
	.latest-news .swiper-slide.post {width: calc( 50% - 8px);}
}/*@media*/

/**TERMS**/
.terms{ position: relative; margin-bottom: 1rem; }
.terms ul{ position: relative; display: flex; gap: 1.5em; align-items: center; justify-content:center; flex-wrap: wrap; }
.terms ul li{position: relative; }
.terms ul li a{position: relative; padding-right: 0.6rem;color: #d3d3d3;} 
.terms ul li a::after{ 
 	content: ""; position: absolute; top: 50%; right:0; width: 0.4em; height: 0.4em;
	background: transparent; border-top: 2px solid #d3d3d3; border-right: 2px solid #d3d3d3;
	box-shadow: 0 0 0 lightgray; transition: all 0.3s ease; transform: translate3d(0,-50%,0) rotate(45deg);}
.terms ul li a:hover::before { content:''; background: #868686; height: 1px; width: 100%; position: absolute; left: 0; bottom: 0;}

/**policy**/
/* リスト */
.policy ol,.policy .disc-list {
  margin-left: 1.5em;
}
.policy ol > li {
  list-style-type: decimal;
}
.policy ol.roman-list > li {
  list-style-type: upper-roman;
}
.policy .disc-list > li {
  list-style-type: disc;
}
.policy ol li,.policy ol ul li,.policy .disc-list li {
  margin-bottom: 1em;
}
.policy ol ul,.policy ol ul li ul,.policy .num-list li ul {
  margin-top: 1em; margin-bottom: 2em;
}

.guideline h3{ text-align:left;padding:1em 0 0.5em 0;}
.content-box a.link{  background: linear-gradient(transparent 96.5%, #0062cb 0%); color: #0062cb;}

/**form**/
.inquiryform p{ text-align:center;}

.error-box{ border:solid 2px #df2408; padding: 1em; color: #df2408;}
.message.error{ margin-bottom: 0.5em;}.message.error:last-of-type{ margin-bottom:0;}

.inquiryform .form-box {width: 100%;padding: 20px 0 0 0;}
.inquiryform dl {position: relative; display: flex; justify-content: center; align-items:flex-start; gap:1rem;margin: 0;padding: 20px 0 0 0;width: 100%;}
.inquiryform dl:first-child {padding-top: 0px;}
.inquiryform dl:last-child {padding-bottom: 20px;}
.inquiryform dt.title {font-weight: 900;width: 25%;margin: 0;padding: 6px 10px;background-color: #e1ded9;text-align:left;line-height: 1.2;vertical-align: top;}

.need{color: #df2408; font-weight: 500;font-size: 80%;}

@media (min-width:0px) and (max-width: 599px) {
	.inquiryform dt.title{font-size: 80%;}
}/*@media*/

.inquiryform dd.data {
	display: inline-block;
	width: 68%;
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight: bold;
	text-align: left;
}

.inquiryform dd .msg{ color: #636363; font-size: 90%;}

.inquiryform .input, .inquiryform .textarea {
	width: calc(100% - 10px);
	margin-bottom: 8px;
	padding: 5px;
	border: 1px solid #999999;
	border-radius: 6px;
	box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2) inset;
	font-size: 108%;
	text-align: left;
}

.submit{  display: block;
  margin: 0 auto; color:#fff; font-weight: 900;  padding: 8px 40px; font-size: 1.1rem;
  border: none; border-radius: 50px; cursor: pointer; 
  position: relative; overflow: hidden;  background-color: #1b64b0;transition-duration: .3s;cursor: pointer; 
}
.submit:hover{background:#2583e5;}
.smaller{font-size:smaller;}
.left{ text-align:left;text-align-last:left;}