@charset "utf-8";



/*==========================================

===========================================*/
.content.contact {
 margin:50px auto;
  background: linear-gradient(#35bad8,#009ed2);
}
.head_ttl{
	padding:50px 0;
	text-align: center;
	color:#fff;
	font-weight: bold;
	font-size: 20px;
	line-height: 33px;
}
.contact_inner{
 /*width: 78%;*/
 max-width: 1400px;
 margin: 0 auto 50px;
 position:relative;
 background-color: #e5f5fa;
}


@media screen and (max-width: 767px) {
.contact_inner{
 width: 98%;
}
.head_ttl{
	font-size: 18px;
	line-height: 30px;
}
}


input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance:textfield;
}
.content.form{
 width:100%;
 line-height: 1.5;
 font-weight: 500;
 padding: 55px 0 126px;
}
.content.form a{
 color: #000;
 font-size: 1.6rem;
 border-bottom: 1px solid #000;
 transition: .3s;
}

.txt_privacy,
.txt_bottom{
 width: 100%;
 max-width: 1140px;
 text-align: center;
 margin: 80px auto;
 line-height: 2;
 font-size: 2.0rem;
 font-weight: bold;
}
.txt_bottom p{
	font-weight: bold;
	line-height: 1.8;
}

@media screen and (min-width: 768px) {
.content.form a:hover{
 color: #ffa660;
 border-bottom: 1px solid #ffa660;
}
}
@media screen and (max-width:959px) {
.txt_privacy,
.txt_bottom{
 text-align: left;
 width:96%;
 margin: 50px auto;
 font-size: 18px;
}
.txt_privacy br,
.txt_bottom br{
 display: none;
}
.txt_hurry a{
 max-width: 150px;
 width: 100%;
 display: block;
 margin: 20px auto 0;
 text-align: center;
}
}
@media screen and (max-width:480px) {
.content.form{
 padding: 15px 0 86px;	
}
.txt_privacy, .txt_bottom {
 margin: 0 auto 35px;
}
.txt_privacy p,
.txt_bottom p,
.content.form a{
 font-size: 1.5rem;
}
.txt_privacy{
 margin: 0 auto 55px;
}
.txt_hurry a {
 margin: 10px auto 0;
}
}






/*==========================================
 フォーム
===========================================*/
.form_block{
	padding-top: 75px;
}
.form_control_wrap label{
 font-size: 1.6rem;
 /*margin: 0 0 2rem;*/
 display:inline-block;
}
.gray_bg{
 background: #f5f5f5;
}
.form_container{
 max-width: 1000px;
 width:100%;
 margin:0 auto;
 padding: 0 0 150px 0;
}

.form_item{
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 align-items: center; 
 /*margin: 0 auto 30px;*/
 border-top:1px solid #ccc;
 background-color: #fff;
 align-items: stretch;
}
.form_item.flex_ai_fs{
  border-bottom:1px solid #ccc;
}
.form_bb{
 /*border-bottom: 1px dotted #c8c8c8;*/
 /*padding:30px 0 0;*/
 width: 100%;
}
.form_label{
 font-size: 1.8rem;
 font-weight: 500;
 -ms-flex: 0 0 71%;
 flex: 0 0 71%;
 max-width: 71%;
 padding: 0 0 0 6%;
 display: -webkit-flex;
 display: -moz-flex;
 display: -ms-flex;
 display: -o-flex;
 display: flex;
 padding-top:7px;
}

.form_head{
	background-color: #ccecf6;
	padding:30px 0;
	display:flex;
	flex-basis:29%;
}
.form_req_wrap{
     -ms-flex: 0 0 21%;
    flex: 0 0 21%;
    max-width: 21%;
}
.form_req{
 font-weight: bold;
 color: #fff;
 background: #ec8e26;
 -webkit-border-radius: 2px;
 -moz-border-radius: 2px;
 border-radius: 2px;
 padding: 5px;
 text-align: center;
}
.form_control_wrap{
 margin: 0 0 0 2%;
 flex: 0 0 66.666667%;
 max-width: 66.666667%;
 display:flex;
 align-items:center;
}
.form_control_wrap p{
 align-items:center;
 margin:0 1%;
}
.control_flex01{
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 align-items: center; 
}

.form_control{
 font-family: "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 display: block;
 width: 60%;
 min-width:380px;
 padding: 1rem 1.5rem;
 font-size: 1.6rem;
 line-height: 1.5;
 color: #495057;
 background-color: #f9f5f1;
 background-image: none;
 background-clip: padding-box;
 border: 1px solid #999;
 transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
 border-radius:6px;
 margin:30px 0;
}
.bg_w{
  background-color:   #fff;
}
@media screen and (max-width: 767px){
  .form_control{
    min-width:inherit;
  }
}
textarea.form_control{
 height: 150px;
 width:81%;
}
.control_01{
 max-width: 223px;
}
.control_02{
 max-width: 120px;
}
@media screen and (max-width: 767px) {
	textarea.form_control{
 height: 150px;
 width:91%;
}
.form_control_wrap{
 margin: 0 0 0 2%;
 flex: 0 0 100%;
 max-width: 100%;
 display:inherit;
 align-items:center;
}
}
/*プレースホルダー*/
::-webkit-input-placeholder {
  color: #aaa;
}
::-moz-placeholder {
  color: #aaa; opacity: 1;
}
:-ms-input-placeholder {
  color: #aaa;
}

.item_radio{
 font-size: 1.6rem;
 margin: 0 3% 0 0;
}
.item_radio input{
 vertical-align: inherit;
}
/*=== 送信ボタン ===*/
.btn_submit_wrap{
 max-width: 520px;
 width: 100%;
margin:0 auto 80px;
position:relative;
text-align: center;
}
.btn_submit{
 background-color:#000;
 width: 500px;
 padding: 3% 0;
 text-align: center;
 border: none;
 margin: 0 auto;
 color: #fff;
 font-size: 2.4rem;
 font-weight: bold;
 letter-spacing: 2rem;
 cursor:pointer;
 transition: .3s;
 outline: none;
 position:relative;
 border:1px solid #000;
}
.angle{
  color:#fff;
  position:absolute;
  right:50px;
  top:20px;
  color:#fff;
  font-size: 24px;
}
@media screen and (max-width: 767px){
.btn_submit{
 width: 90%;
}
  .angle{
  top:20px;
  right:50px;
}
}
@media screen and (min-width: 768px) {
.btn_submit:hover{
    background-color:   #fff;
    color:#000;
}
}
@media screen and (min-width: 960px){
.form_item.flex_ai_fs{
 align-items: stretch;
}	
}


@media screen and (min-width: 960px) and (max-width:1099px) {
.control_02{
 max-width: 80px;
}
}
@media screen and (min-width: 960px) and (max-width:1139px){
/*.form_label {
 -ms-flex: 0 0 34%;
 flex: 0 0 34%;
 max-width: 34%;
 padding: 0 0 0 2%;
}
.form_req_wrap {
 -ms-flex: 0 0 7.333333%;
 flex: 0 0 7.333333%;
 max-width: 7.333333%;
}
.form_req{
padding: 2px 2%;
}
.form_control_wrap {
 flex: 0 0 56.666667%;
 max-width: 56.666667%;
}*/
}
@media screen and (max-width:959px) {
.form_head{
	flex-basis:100%;
}
.form_item{
 margin: 0 auto;
}
.form_label {
 font-size: 1.8rem;
 font-weight: 500;
 -ms-flex: 0 0 75%;
 flex: 0 0 75%;
 max-width: 75%;
 padding: 0 20px;
}
.form_control_wrap{
 width: 100%;
 flex: auto;
 max-width: 100%;
 margin: 1% 0 1.5%;
}
.form_req_wrap {
 -ms-flex: 0 0 20%;
 flex: 0 0 20%;
 max-width: 20%;
}
.form_bb {
 padding: 20px 0 0;
 margin: 0 auto 30px;
}
.form_control{
margin-left:20px;
width:87%;
}
}
@media screen and (max-width:767px) {
.form_label{
 font-size:1.6rem;
 flex:100%;
 max-width:75%;
 /*min-width:310px;*/
}
.form_control_wrap .control_02:not(:last-child){
 margin: 0 0 30px;
}
.form_control_wrap .control_02 + p{
 margin: 0 2% 30px;
}
.control_02{
 max-width: 100%;
}
}
@media screen and (max-width: 480px) {
.btn_submit_wrap {
 margin: 15px auto 35px;
}
.btn_submit {
 padding: 5% 0 5%;
 font-size: 2.1rem;
}
}
@media screen and (max-width: 380px) {
.btn_submit {
 font-size: 1.8rem;
}
}

/*=== geomark ===*/
.mark_geo{
  display: block;
  /*width:100%;*/
  text-align: center;
  margin-bottom: 50px;
  padding-bottom:50px;
}
.mark_geo table{
margin:0 auto;
}

/*=== 電話での問い合わせ ===*/
.tel_contact p{
	color:#fff;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin: 50px auto;
	padding-bottom:60px;
	line-height: 1.6;
}
.form_tel{
	font-size: 24px;
	font-weight: bold;
}
.form_tel i{
	margin-right:3px;
}
.tel{
	font-weight: bold;
}
.form_tel_cap{
	font-size: 16px;
	font-weight: 500;
}

.no_f{
  display:block!important;
}
.caption_s{
  display: block;
  font-size: 16px;
  margin-top: 5px;
}


/*==誕生日==*/
.form_birth_wrap{
  display:flex;
  align-items: center;
}
.form_birth_wrap .form_control{
  min-width:0;
  width:100px;
  margin:0 10px;
}
@media screen and (max-width: 767px){
  .form_birth_wrap .form_control{
  width:60px;
}
.file_wrap{
  margin:10px;
}
}


.tel_txt{
  position:relative;
}
.tel_cap{
  position:absolute;
  width:250px;
  top:30px;
}

.short{
  min-width:0;
  width:150px;
}
.short02{
  min-width:0;
  width:100px;
}

.radio_al{
  margin-top:30px;
  display: flex;
  flex-direction:column;
}
@media all and (-ms-high-contrast:none){
  .radio_al span{
    min-height:0%;
  }
}
.radio_al label{
 display: block;
 margin-bottom: 10px;
}


.wpcf7-form-control-wrap.other{
  display: block;
  width: 100%;
  margin-top: -20px;
}
@media screen and (max-width: 767px) {
  .wpcf7-form-control-wrap.other{
  margin-top: 10px;
}
}

.flex_wrap_w{
  flex-wrap:wrap;
}
.w_80{
  flex-basis:90%;
  margin-top: -40px;
}

@media all and (-ms-high-contrast:none){
  .file_txt{
    margin-top:30px!important;
  }
}
/*==========================================
オプション品等
===========================================*/

.select_headline h2{
  background-color: #399BD2;
  padding:10px;
  color:#fff;
  font-weight: bold;
  font-size: 20px;
  margin-top: 30px;
}

.head_txt{
margin: 20px 0;
padding-left:10px;
color:#000;
}

.select_ttl h3{
  color:#399bd2;
  font-weight: bold;  
  font-size: 18px;  
  border:1px solid #399bd2;
  background-color:   #fff;
  padding:10px;
}

/*==3列アイテム==*/
.select_item_wrap{
  margin: 30px auto; 
  display:flex;
  flex-wrap:wrap;
}
.select_item{
  flex-basis:30%;
  margin-bottom: 30px;
}

.select_item:nth-child(2),
.select_item:nth-child(5),
.select_item:nth-child(8),
.select_item:nth-child(11),
.select_item:nth-child(14){
  margin:0 5%;
}

@media screen and (max-width: 767px){
  .select_item{
  flex-basis:48%;
  margin-bottom: 30px;
  margin:0 1% 30px 1%;
}

.select_item:nth-child(2),
.select_item:nth-child(5),
.select_item:nth-child(8),
.select_item:nth-child(11),
.select_item:nth-child(14){
  margin:0 0;
}
}
.wpcf7-list-item-label{
  font-size: 18px;
  font-weight: 800;
}
.item_price{
  margin-top: 5px;
  text-align:right;
}
.item_detail_wrap{
  background-color: #fff;
  padding:10px;
  margin-top: 10px;
}
.wpcf7-list-item{
  margin-left:0!important;
}

/* checkbox */
 
.checkbox_margin{
margin-top: 4px;
margin-bottom: 4px;
}
input[type=checkbox] {
    width: 18px;
    height: 18px;
    vertical-align: middle;
    margin-top: -1px;
}
.wpcf7-list-item-label{
  padding-top:2px;
}

/* === 画像トリミング === */
.trim{
position: relative;
height: 0;
overflow: hidden;
width: 100%;
}
.trim img{
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.trim img{/*縦*/
height: 100%;
max-width: inherit;
}

/* === トリミングサイズ === */
.item_img_wrap{
max-width:300px; /*横幅*/
width:100%
}
.item_img{ /*縦幅*/
padding-top:90%; /* トリミングしたい縦幅 ÷トリミングしたい横幅 × 100 */
}

.select_cap{
  margin-top: 10px;
  padding-left:10px;
}
.select_txt01{
  font-size: 18px;
  font-weight: bold;
}
.select_txt02{
  line-height: 1.6;
}

.select_item_04{
  flex-basis:23%;
  margin-right:2.5%;
  margin-bottom: 30px;
}

.select_item_04:nth-child(4n){
  margin-right:0;
}

@media screen and (max-width: 767px){
  .select_item_04{
  flex-basis:48%;
  margin:0 1% 30px 1%;
}
}
.item_symbol{
  font-weight: bold;
  margin-bottom: 10px;
}

.select_item_04 .item_img_wrap{
  max-width:230px;
}

.item_headline{
  flex-basis:100%;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 20px;
  background-color: #399bd2;
  padding:8px;
}
.item_headline h4{
  font-weight: bold;
  color:#fff;
}
.item_no01{
  margin-top: 10px;
}

.select_item_one{
  flex-basis:100%;
  padding:10px;
  margin-bottom: 20px;
  background-color: #fff
}
.item_num{
  text-align:right;
  margin:10px 0 20px;
  display:flex;
  align-items: center;
  justify-content: flex-end;
}
.wpcf7-select{
  margin:0 0 0 auto;
  min-width:110px;
  margin-left:20px;
}
@media all and (-ms-high-contrast:none){
div.wpcf7 input[type='file']{
  width:70%;
}
}