@charset "utf-8";
.search_form .flow,
.search_form .flow_complete,
.inquiry_form .flow,
.inquiry_form .flow_complete{
    display:flex;
    justify-content:center;
}
.search_form .flow li,
.search_form .flow_complete li,
.inquiry_form .flow li,
.inquiry_form .flow_complete li{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    border: solid 2px var(--primary-color);
    text-align:center;
    border-radius:50%;
}
.search_form .flow li.current,
.search_form .flow_complete li.current,
.inquiry_form .flow li.current,
.inquiry_form .flow_complete li.current{
    background:var(--primary-color);
    color:#fff;
}
.search_form .flow li::before,
.inquiry_form .flow li::before{
    content:"";
    display:block;
}
.search_form .flow li::after,
.search_form .flow_complete li::after,
.inquiry_form .flow li::after,
.inquiry_form .flow_complete li::after{
    position:absolute;
    content:"";
    right:0;
    top:0;
    bottom:0;
    margin:auto;
}
.search_form .flow li::after,
.search_form .flow_complete li::after,
.inquiry_form .flow li::after,
.inquiry_form .flow_complete li::after{
    background-image:url(/babykumon/common_2022/img/line/line_dotted_gray.svg);
}
.search_form .flow li.current::after,
.search_form .flow_complete li.current::after,
.inquiry_form .flow li.current::after,
.inquiry_form .flow_complete li.current::after{
    background-image:url(/babykumon/common_2022/img/line/line_dotted_primary.svg);
}
.search_form .flow li:last-child::after,
.search_form .flow_complete li:last-child::after,
.inquiry_form .flow li:last-child::after,
.inquiry_form .flow_complete li:last-child::after{
    background:none;
}
.search_form .flow li.ruby_input::before,
.inquiry_form .flow li.ruby_input::before{
    content:"入力";
}
.search_form .flow li.entered,
.search_form .flow_complete li.entered,
.inquiry_form .flow li.entered,
.inquiry_form .flow_complete li.entered{
    background:var(--gray-color);
    border:none;
    color:#fff;
}

.search_form .txtRed,
.inquiry_form .txtRed{
	color: var(--caution-color);
	margin: 0 auto 1em;
}
.form .field_ttl{
	font-family:var(--font-b);
}
.form .field_ttl.required::after,
.form .field_ttl.not_required::after{
    display:inline-block;
    color:#fff;
}
.form .field_ttl.required::after{
    background:var(--caution-color);
    content:"必須";
}
.form .field_ttl.not_required::after{
    background:var(--gray-color);
    content:"任意";
}
.form .h3_ttl{position: relative;font-family:var(--font-b);}
.form .h3_ttl::before{position:absolute;display:inline-block;content:"";left:0;top:0;height:100%;background:var(--primary-color);}

.regist_second .form .form_inner:nth-child(3),
.regist_second .form .form_inner:nth-child(4){
	display:none;
}
@media print,screen and (min-width: 768px) {
	.search_form h2,
	.inquiry_form h2{
		margin-top:30px;
	}
	.search_form.regist_first h2,
	.inquiry_form.regist_first h2{
		margin-top:60px;
	}
    .search_form .flow li,
    .search_form .flow_complete li,
	.inquiry_form .flow li,
    .inquiry_form .flow_complete li{
        width:80px;
        height:80px;
        font-size:3rem;
        margin-right:27px;
    }
    .search_form .flow_complete li,
	.inquiry_form .flow_complete li{
        font-size:1.8rem;
    }
    .search_form .flow li::before,
	.inquiry_form .flow li::before{
        font-size:1.6rem;
    }
    .search_form .flow li::after,
    .search_form .flow_complete li::after,
	.inquiry_form .flow li::after,
    .inquiry_form .flow_complete li::after{
        width:27px;
        height:2px;
        right:-27px;
    }
	.search_form .flow_complete + .txt,
	.inquiry_form .flow_complete + .txt{
		margin:2em auto 1em;
		text-align:center;
	}
    .search_form .form,
	.inquiry_form .form{
        background:var(--tertiary-color);
        padding:30px 100px;
        margin:40px auto 50px;
        border-radius: 20px;
    }
	.search_form .txtRed,
	.inquiry_form .txtRed{
		line-height:2;
	}
    .form .legend{line-height:1.33;}
	.form .field_ttl .legend{margin-top: 5px;}
    .form .form_inner{
        padding:30px 0;
        background:url(/babykumon/common_2022/img/bg/bg_dotted_primary.svg) transparent bottom left repeat-x;
    }
	.form .form_inner.nodot{background:none;}
    .form .form_inner:first-child{
    	padding-top:0;
    }
    .form .form_inner:last-child{
        background:none;
    }
    .form .form_fieldset{
        display:flex;
        flex-wrap:wrap;
    }
    .form .form_fieldset ~ .form_fieldset{
        margin-top:30px;
    }
    .form .flex_ai_center{
        align-items:center;
    }

    .form .field_input{
        width:445px;
    }
    .form .field_ttl{
        position:relative;
        width:245px;
        padding-right: 65px;
        margin-right:70px;
        text-align:right;
    }
    .form .field_ttl.required::after,
    .form .field_ttl.not_required::after{
        position:absolute;
        top: 5px;
        right:0;
        padding:3px 14px;
        font-size:1.4rem;
        border-radius:20px;
    }
    .form .field_input .label_cb:last-child{
        margin: 0;
    }
    .form .form_name {
        display:flex;
        margin:0 auto 14px auto;
    }
    .form .form_name.lst {
        margin:0 auto;
    }
    .form .form_name .label{
        display:inline-block;
        width:46px;
    }
    .form .form_name .form_name_inner{
        display:flex;
        align-items:center;
    }
    .form .form_name .form_name_inner:first-child{
        margin-right:30px;
    }
    .form .form_name .input_txt{
        width:160px;
    }
    .form .form_tel{
        display:flex;
        align-items:center;
    }
    .form .form_tel .input_txt{
        width:100%;
    }
    .form .form_tel .hyphen::before{
        content:"-";
        display:inline-block;
        color:#D1CCCC;
        padding:0 6px;
    }
    .form .form_mail .input_txt{width:100%;}
    .form .field_input .post{
        display:flex;
        align-items:center;
        margin: 0 auto 14px auto;
    }
    .form .field_input .post ~ .select_box{
        display:flex;
        flex-direction:column;
        max-width:250px;
        margin: 0 auto 14px 0;
    }
    .form .field_input .post::before{
        content:"〒";
        padding-right:10px;
		font-family:var(--font-b);
    }
    .form .field_input .post .input_txt{
        width:220px;
    }
    .form .field_input .post ~ .input_txt.long{
        width:100%;
    }
    .form .field_input .post .btn_global_square{
        margin-left:14px;
    }
    .form .label_radio{
        display:block;
        margin-bottom:10px;
    }
    .form .field_input .label_radio:last-child{
        margin-bottom:0;
    }
    .form .form_fieldset .h3_ttl{
        width:100%;
    }
    .form .h3_ttl{
	  line-height: 1.3;
	  padding: 0 0 0 18px;
	  margin-bottom: 15px;
	  }
	 .form .h3_ttl::before{
	  border-radius:4px;
	  width:6px;
	 }
	 .fotm .baby_detail .select_box select{
	     width:110px;
	 }
	 .form .baby_detail .follow{
	 	padding: 0 5px 0 10px;
	 }
	 .form .baby_detail .label{
	 	padding-right: 5px;
	 }
	 .form .expect .input_txt{
	     margin-left:38px;
	     width:407px;
	 }
	 .form .field_input .txt{
	     margin-bottom:8px;
	 }
	 .form .field_input .txt.fs{
	     font-size:1.6rem;
	 }
	 .form .br_margin{
	 	content:"";
	 	display: none;
	 	height: 0;
	 }
	.form .br_margin + .txt.fs{
		display:block;
		margin-top:13px;
	}
}

@media screen and (max-width: 767.9px) {	
    .search_form .flow li,
    .search_form .flow_complete li,
	.inquiry_form .flow li,
    .inquiry_form .flow_complete li{
        width:62px;
        height:62px;
        margin-right:19px;
    }
    .search_form .flow li::after,
    .search_form .flow_complete li::after,
	.inquiry_form .flow li::after,
    .inquiry_form .flow_complete li::after{
        width:20px;
        height:2px;
        right:-20px;
        background-size:20px auto;
    }
	.search_form .flow_complete + .txt,
	.inquiry_form .flow_complete + .txt{
		margin:2em auto 0;
		text-align:left;
	}
    .form .h3_ttl{font-size:2rem;padding: 0 0 0 15px;margin-bottom: 30px;}
	.form .h3_ttl::before{
	  border-radius:4px;
	  width:5px;
	 }
	.form{
	    padding: 40px 0 0;
	}
	.form .legend{line-height:1.2;}
	.form .form_inner{
		background:url(/babykumon/common_2022/img/bg/bg_dotted_primary.svg) transparent top left repeat-x;
	    padding-top: 27px;
		margin-bottom:27px;
	}
	.form .form_inner:first-child{
		background:none;
		padding-top:0;
	}
	.form .flex_column .label_cb:last-child{
		margin: 0 1em 0 0;		
	}
	.form_inner > .form_fieldset{
		margin-bottom:27px;
	}
	.form .form_inner:last-child{
		margin-bottom:0;
	}
	.form .field_ttl{
	    display:flex;
	    align-items: flex-start;
	    font-size:1.8rem;
	    margin-bottom:1em;
	    line-height:1;
	}
	.form .field_ttl .legend{
	    margin-right: 15px;
	    max-width: calc(100% - 57px);
	}
	.form .field_ttl .l_ttl{
		line-height:1.2;
		margin-right: 15px;
	}
	.form .field_ttl.required::after,
	.form .field_ttl.not_required::after{
	    display:inline-block;
	    font-size:1.2rem;
	    padding:3px 8px;
	    border-radius:10px;
	    margin-top:2px;
	    white-space: nowrap;
	}
	.form .field_input.indent{
	    margin-left:35px;
	}
	.form .form_name{
	    display:flex;
	    margin-bottom:10px;
	}
	.form .form_name_inner{
	    display:flex;
	    flex-direction:column;
	}
	.form .form_name_inner .input_txt{width:calc(100% - 1px);}
	.form .form_name_inner:first-child{margin-right:13px;}
	.form .form_name:last-child{margin-bottom:0;}
	.form .form_name .label{font-size:1.4rem;margin-bottom: 3px;}
	.form .form_tel{display:flex;align-items:center;}
	.form .form_tel .hyphen::before{content:"-";padding:0 4px;color:#D1CCCC;}
	.form .form_tel .input_txt{width:100%;}
	.form .form_mail .input_txt{width:100%;}
	.form .field_input_inner.post{position:relative;display:flex;flex-direction:column;margin-bottom:10px;}
	.form .field_input_inner.post > .label{margin-bottom:3px;}
	.form .post .post_inner{display:flex;}
	.form .post .input_txt{max-width:250px;margin-right:10px;width:calc(100% - 10px);}
	.form .post .btn_global_square{min-width:9em;margin: 0 auto 0 0;}
	.form .post ~ .select_box{display:block;margin-bottom:10px;max-width: 250px;}
	.form .post ~ .select_box select{max-width: 250px;}
	.form .post ~ .input_txt.long{width:100%;}
	.form .target_person .field_input .label_radio:last-child{margin-right:0;}
	.form .baby_detail .label{display:inline-block;font-size:1.4rem;margin-bottom:3px;}
	.form .baby_detail .follow{padding: 0 1px 0 5px;}
	.form .form_fieldset.baby_detail.first{ }
	.form .form_fieldset.expect{}
    .form .form_fieldset.expect.lst{margin-bottom:0;}
    .form .form_fieldset.expect .input_txt{margin-left:27px;width:calc(100% - 27px);}
    .form .txt.fm{font-size:1.4rem;}
    .form .txt.fs{font-size:1.2rem;margin-bottom:12px;}
    .form .br_margin{
	 	content:"";
	 	display: none;
	 	height: 0;
	 }
	.form .br_margin + .txt.fs{
		display:block;
		margin-top:12px;
	}
	.privacy{margin:40px auto 35px;}
    .search_form button.btn_global_sec, 
	.search_form button.btn_global_prev,
	.inquiry_form button.btn_global_sec, 
	.inquiry_form button.btn_global_prev{margin:10px auto 15px;}
	
}
@media screen and (max-width: 410px) {
	.form .target_person .field_input.indent{
		margin-left:0;
	}
	.form .target_person .label_radio{
		padding:12px 20px 12px 32px;
	}
	.form .target_person .label_radio::before{
		left:15px;
	}
	.form .target_person .i_radio:checked + .label_radio::after{
		left:18px;
	}
	.form .field_input.indent{
	    margin-left:20px;
	}
}
@media screen and (max-width:350px){
	.form .post .input_txt::-webkit-input-placeholder,
	.form .post .input_txt::placeholder{
		font-size:1.4rem;
	}
}

/*confirm inherit
------------------------------------------------------*/
.confirm .form .field_input .txt{
	margin-bottom:0;
}

@media print,screen and (min-width: 768px) {
	.search_form.confirm .form,
	.inquiry_form.confirm .form{
	    padding:30px 70px;
		margin-bottom:30px;
	}
	.confirm .form .form_inner{
		padding:17px 0;
	}
	.confirm .form .field_ttl{
		width: 228px;
		padding-right:0;
		margin-right: 32px;
	}
	.confirm .form .field_ttl{
		transform:var(--font-adjust);
	}
	.confirm .form .field_input{
        width: 560px;
    }
	.confirm .form .h3_ttl{
		text-align:left;
		padding:0 0 0 10px
	}
	.confirm .form + .txt_caution{
		margin-bottom:32px;
	}
}
@media screen and (max-width: 767.9px) {
	.search_form .h2,
	.inquiry_form .h2{
		margin-top:16px;
	}
	.search_form.regist_first .h2,
	.inquiry_form.regist_first .h2{
		margin-top:38px;
	}
	.search_form.confirm .form,
	.inquiry_form.confirm .form{
		background:var(--tertiary-color);
		margin:35px -15px 26px;
		padding:21px 15px;
	}
	.confirm .form .form_inner{
		margin:0;
		padding:15px 0;
		background:url(/babykumon/common_2022/img/bg/bg_dotted_primary.svg) transparent bottom left repeat-x;
	}
	.confirm .form .form_inner:last-child{
		background:none;
	}
	.confirm .form .form_inner > .form_fieldset{
		margin:0;
	}
	.confirm .form .field_ttl{
		font-size:1.5rem;
		margin-bottom:5px;
		
	}
	.confirm .form .field_ttl,
	.confirm .form .field_input,
	.confirm .form .field_input .txt,
	.confirm .form .h3_ttl{
		font-size:1.5rem;
	}
	.confirm .form .h3_ttl{
		margin-bottom:7px;
	}
}

/*complete inherit
------------------------------------------------------*/
@media print,screen and (min-width: 768px) {
.search_form.complete .txt,
	.inquiry_form.complete .txt{
	margin-bottom:1em;
	line-height:2;
}
	.search_form.complete .field_thanks_mail_ttl{
		font-size: 22px;
	}
	.search_form.complete .flow_complete + .content_fluid,
	.inquiry_form.complete .flow_complete + .content_fluid{
		margin:40px auto 87px;
	}
	.search_form.complete .bnr,
	.inquiry_form.complete .bnr{
		display:flex;
		justify-content: center;
		margin-top:80px;
	}
	.search_form.complete .bnr img,
	.inquiry_form.complete .bnr img{
		width:400px;
		height:auto;
	}
}
@media screen and (max-width: 767.9px) {
	.search_form.complete .txt,
	.inquiry_form.complete .txt{
		margin-bottom:1em;
	}

	.search_form.complete .field_thanks_mail_ttl{
		font-size: 20px;
	}

	/* .search_form.complete .btn_global_sec,
	.inquiry_form.complete .btn_global_sec{
		max-width:400px;
	} */
	.search_form.complete .bnr,
	.inquiry_form.complete .bnr{
		padding:15px 10px 5px;
		text-align:center;
	}
	.search_form.complete .bnr p,
	.inquiry_form.complete .bnr p{
		margin-bottom:15px;
	}
	.search_form.complete .bnr a,
	.inquiry_form.complete .bnr a{
		display:block;
	}
	.search_form.complete .bnr img,
	.inquiry_form.complete .bnr img{
		width:100%;
		max-width:290px;
		height:auto;
	}
}

.form .error_txt{
	display:none;
	color:var(--caution-color);
	margin-bottom:0.5em;
}

/* inquiry form
------------------------------------------------------*/
.inquiry_form .link_prev{
	margin-bottom:2em;
}
@media print,screen and (min-width: 768px) {
	.inquiry_form .child_age .label{
		display:inline-block;
		width:3em;
	}
	.inquiry_form .child_age .select_box{
		display:inline-block;
		width:200px;
		margin-bottom:14px;
	}
	.inquiry_form .child_age_select:last-child .select_box{
		margin-bottom:0;
	}
	.inquiry_form .txt.fs{
		margin-bottom:0;
	}
}
@media screen and (max-width: 767.9px) {
	.inquiry_form .form .form_fieldset.baby_detail.first{
		background:none;
		padding-top:0;
	}
	.inquiry_form .child_age .select_box{
		display:block;
		width:200px;
		margin-bottom:10px;
	}
	.inquiry_form .txt.fs{
		margin-bottom:0;
	}
}


/* taiken form
------------------------------------------------------*/
.taiken .ttl_h1{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.taiken .ttl_h1 .h1{
  flex-grow: 1;
  margin: 0;
  padding-right: 1em;
}
.taiken .ttl_h1 .link_prev{
  white-space: nowrap;
  margin: 0 0 0 auto;
}
.taiken .ttl_flow{
  position: relative;
}
.taiken .ttl_flow .h2{
  margin-top: 16px;
}
.taiken .ttl_flow .flow{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 27px;
  height: 45px;
  margin: auto 0;
}
.taiken .ttl_flow .flow li{
  width: 45px;
  height: 45px;
  border: 1px solid #FFF;
  font-size: 2rem;
  color: #FFF;
}
.taiken .ttl_flow .flow li:last-child{
  margin-right: 0;
}
.taiken .ttl_flow .flow li.current{
  color: var(--base-color);
  background: #FFF;
}
.taiken .ttl_flow .flow li.entered{
  border-color: var(--gray-color);;
}
.taiken .ttl_flow .flow li.ruby_input::before,
.taiken .ttl_flow .flow li.ruby_input::before{
  content: normal;
}
.taiken .ttl_flow .flow li.current::after,
.taiken .ttl_flow .flow_complete li.current::after{
  width: 16px;
  right: -23px;
  background-image: url(/babykumon/common_2022/img/line/line_dotted_primary_wh.svg);
}
.taiken .ttl_flow .flow li.entered::after,
.taiken .ttl_flow .flow_complete li.entered::after{
  width: 16px;
  right: -23px;
  background-image: url(/babykumon/common_2022/img/line/line_dotted_primary_wh.svg);
}
.taiken .ttl_flow .flow li:last-child:after{
  content: normal;
}
.taiken .ttl_flow .flow_complete li{
  font-size: 1.6rem;
}
.taiken .content{
  margin-bottom: 0;
}
.taiken .content_fluid{
  margin-bottom: 0;
}
.taiken #follow_button_show{
  color: #FFF;
  background: #FFF;
}
.taiken .confirm_txt{
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767.9px) {
	.taiken.regist_second .baby_detail .form_fieldset{
		margin-bottom:27px;
	}
  .taiken .ttl_flow .flow{
    right: 0;
  }
  .taiken .ttl_flow .flow{
    height: 38px;
  }
  .taiken .ttl_flow .flow li{
    width: 38px;
    height: 38px;
    font-size: 1.5rem;
  }
  .taiken .ttl_flow .flow li.current::after,
  .taiken .ttl_flow .flow_complete li.current::after{
    width: 10px;
    right: -16px;
  }
  .taiken .ttl_flow .flow li.entered::after,
  .taiken .ttl_flow .flow_complete li.entered::after{
    width: 10px;
    right: -16px;
  }
  .taiken .err_content{
    margin-bottom: 30px;
  }
  .taiken .form{
    padding-top: 0;
  }
  .taiken.confirm .form{
    margin-top: 18px;
  }
}


/* privacy  for form common contents
------------------------------------------------------*/
.privacy{
	    font-size:1.4rem;
	    line-height:1.6;
	}
.privacy .ttl{font-size:1.8rem;margin:0 auto 0.6em;font-family:var(--font-b);}
.privacy .link_next{margin:1em auto 0;}

@media print,screen and (min-width: 768px) {
	.privacy{
		margin-top:60px;
	}
}

/* only IE
---------------------------------------------------------------------*/
@media all and (-ms-high-contrast: none) {
	.form .field_ttl,.form .h3_ttl,.privacy .ttl{font-family:'A-OTF Shuei MaruGo Std',"秀英丸ゴシック B", "Shuei MaruGo B", "ヒラギノ丸ゴ ProN","Hiragino Maru Gothic ProN","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO",sans-serif;}
	
	@media print,screen and (min-width: 768px) {
		.form .field_input .post::before{font-family:'A-OTF Shuei MaruGo Std',"秀英丸ゴシック B", "Shuei MaruGo B", "ヒラギノ丸ゴ ProN","Hiragino Maru Gothic ProN","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO",sans-serif;}
	}
}

/* row_box
---------------------------------------------------------------------*/
.row_box {
    background: #fff;
    border-radius: 20px;
    margin-top: 55px;
    margin-bottom: 50px;
    border: 2px solid;
    border-color: var(--primary-color);
    padding: 24px 20px 35px;
    text-align: center;
}
.row_box .ttl {
    font-size: 3.2rem;
    font-family: var(--font-b);
    color: #EB7377;
    margin-top: 16px;
}
.row_box .txt {
    font-size: 1.6rem;
    line-height: 2;
    margin-top: 22px;
    color: #000;
}
.row_box .img {
    position: relative;
    margin: 34px auto 0;
    max-width: 316px;
}
.row_box .img img {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
}
@media print, screen and (min-width: 768px) {
	.row_box .img {
    padding-top: 99px;
	}
  .row_box .img img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767.9px) {
	.row_box {
    border-radius: 10px;
    margin-top: 20px;
    padding: 0 15px 28px;
	}
	.row_box .ttl {
    font-size: 2rem;
	}
  .row_box .txt {
    font-size: 1.5rem;
    line-height: 1.5;
    margin-top: 11px;
    text-align: left;
	}
  .row_box .img {
    padding-top: 28.75%;
	}
}
/* 教室詳細ページフォーム
---------------------------------------------------------------------*/
.bnrArea .inst {
	text-align: center;
	margin-top: 35px;
}
.bnrArea .instBnr {
	border-radius: 15px;
}