/* CSS Document */
@import url("https://use.fontawesome.com/releases/v5.0.6/css/all.css");

/*=======================
        FORM
=======================*/

/*
bodyのclass
.form_input：入力ページ
.form_conf：確認ページ
.form_comp：完了ページ
*/

em.error{
	display:block;
	color:#F5484B;
	font-weight:bold;

}

/**/
body.form_input dl.div dd dl.div_inner,
body.form_input dl.name dd dl.name_inner{
  display: inline-block;
}

.div_inner .subtitle,
.name_inner .subtitle{
  display: block;
  font-weight: bold;
  font-style: normal;
}
.div_inner .subinfo,
.name_inner .subtitle{
  display: block;
}

/**/
.prc {
	font-weight:bold;
}
table.price_list strong.prc{
	font-size: 1.2em
}
table.price_list {
    margin: 15px 0;
    border: 6px solid #eee;
}
table.price_list tr {
	/*border-bottom:2px dashed #ddd;
*/
}
table.price_list th {
    width: 80px;
    padding: 10px 20px;
    border: 1px solid #ddd;
	text-align: center;
}
table.price_list td{
	padding:10px;
    border: 1px solid #ddd;
}
.subtxt {
}
.hisu {
	color:#A51253;
}

.subinfo {
	font-style: normal;
	font-size:11px;
	display: inline-block;
	padding:1px 0 1px  4px;
}
/*振込先テーブル*/
body.form #content .payment_info {}
body.form #content .payment_info h4{
	color:#333;
	background: none;
	padding:0;
}

body.form #content .payment_info table.bank {
	width:auto;
}
body.form #content .payment_info table.bank td {
    border: 1px solid #A41253;
    border-collapse: collapse;
    padding: 3px;
    vertical-align: top;
}


body.form .page_head a {
	color:#fff;
	text-decoration:none !important;
}

body.form .form_content {
	width:100%;
	box-sizing: border-box;
	padding:20px 32px 20px 16px;

}
body.form .form_content h2{
	margin-top:0;
	padding:12px 10px;
	font-size:20px;
	border-color:#7c8fa7;

}

body.form .form_content .detail_txt {
	padding: 10px;
}
body.form #sub_sidebar {
    margin: 20px 25px 0px;
}
body.form #sub_sidebar h3{
	background:none;
	color:#A51253;
}

/* フォーム枠*/

body.form #form_container .formBox {
	border:5px solid #ccc;
	padding:16px;
	margin-bottom:16px;
	overflow:hidden;
	word-wrap:break-word;
}

body.form #form_container h4 {
	padding:8px 10px;
	color:#333;
	font-size:16px;
	margin:-16px -16px 20px;
	background:#eee;	
}
body.form #form_container h4:before{
    content: "\f044";
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
	padding:0 10px 0 0;
}
body.form #form_container h4 .hisu{
	font-size:12px;
	font-weight:normal;
}
body.form #form_container h4 .sub{
	font-size:12px;
	font-weight:normal;
}

/*標準のフォーム形式*/
body.form .formBox .def_form {}

body.form .formBox .def_form .item_group > dl,
body.form .formBox .def_form > dl{
	margin:0;
	clear:both;
	display: flex;
	flex-wrap: nowrap;
	box-sizing: border-box;

}
body.form .formBox .def_form .item_group > dl:first-of-type,
body.form .formBox .def_form >  dl:first-of-type{
	border-top: 1px solid #ccc; 
}
body.form .formBox .def_form .item_group > dl:last-of-type,
body.form .formBox .def_form >  dl:last-of-type{
	border-bottom: 1px solid #ccc; 
}

body.form .formBox .def_form .item_group > dl:after,
body.form .formBox .def_form > dl:after {
	content:"";
	clear:both;
	display:block;
	height:0px;
}
body.form .formBox .def_form .item_group > dl > dt,
body.form .formBox .def_form > dl > dt {
    width: 20%;
    padding: 10px;
    float: left;
	box-sizing: border-box;
	border-top:1px solid #fff;
	font-weight: bold;
	color:#555;
	background:#cfd9e4;
}
body.form .formBox .def_form .item_group > dl:first-child > dd,
body.form .formBox .def_form > dl:first-child > dd {
	border-top:none;
}

body.form .formBox .def_form .item_group > dl > dd,
body.form .formBox .def_form > dl > dd {
    width: 80%;
	box-sizing: border-box;
    padding: 10px 0px 10px 14px;
    border-left: 1px solid #d5d5d5;
    float: left;
	background: #fff;
	border-top: 1px solid #ccc;

}

/*
body.form .formBox >dl {
	margin:0;
	clear:both;
	border-bottom: 1px solid #ccc;
}
body.form .formBox >  dl:first-of-type{
	border-top: 1px solid #ccc;
}
body.form .formBox > dl {
	background: #D4E8F1;
}
body.form .formBox dl:after {
	content:"";
	clear:both;
	display:block;
	height:0px;
}
body.form .formBox dl dt {
    width: 20%;
    padding: 10px;
    float: left;
	box-sizing: border-box;
	border-top:1px solid #fff;
	font-weight: bold;
	color:#555;
}
body.form .formBox dl dd {
    width: 80%;
	box-sizing: border-box;
    padding: 5px 0px 5px 14px;
    border-left: 1px solid #d5d5d5;
    float: left;
	background: #fff;
}

*/
/*input textarea select関連*/
body.form select,
body.form option,
body.form textarea,
body.form input[type="text"],
body.form input[type="number"],
body.form input[type="tel"],
body.form input[type="mail"]{
	font-size:15px;
	padding:6px 4px;
	border-radius:3px;
	border:1px solid #333;
	box-shadow: 0px 2px 7px 1px rgba(0,0,0,0.1) inset;
	margin:2px;
	max-width:100%;
	box-sizing: border-box;
	color:#333;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.form input[type="radio"], 
body.form input[type="checkbox"] {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    margin: .5em .5em .7em;
    vertical-align: middle;
}

/*
.form-error {
	background-color:#FCC7C8;
}
*/


body.form select {

}
body.form input[type="text"] {
}

body.form dl.div dd dl,
body.form dl.name dd dl,
body.form dl.address dd dl{
	display: flex;
	align-items: center; 
	border:none;
}
body.form dl.div dd dl dt,
body.form dl.name dd dl dt,
body.form dl.address dd dl dt{
	width:90px;
	padding:5px 0;
	}
body.form dl.address dd dl dt{
	font-weight:bold;
}
body.form #content dl.address dd dl dt span.nin{
	font-weight: normal;
	font-size:12px;
}
body.form dl.address dd dl dd{
    width: 75%;
    padding: 0;
    border:none;
    float: none;
}
body.form dl.address dd p {
	display: flex;
	align-items: center; 
}
.notice{
	background: #ffb;
	font-size: 12px;
    padding: 9px 12px;
	margin: 0 0 10px;
}

/*フォームの長さを規定する*/
body.form .minimum_harf {
    width: 30%;
}
body.form .maximum_harf {
    width: 80%;
}
body.form .harf {
    width: 50%;
}
body.form .minimum {
    width: 3.5em;
}

body.form #btn_container{
	margin:10px 0 30px;
	text-align:center;
}
body.form #btn_container input.btn{
	padding:5px 20px;
	font-size:16px; font-size:1.6rem;
}
body.form #content .p_poricy {
	margin:40px 0;
	background: #eee;
	padding:10px;
}
body.form #content .p_poricy h3{
background: none;
color:#333;
padding:0;
margin:0;
}
body.form #content .p_poricy p{
	padding:5px 10px;

}
body.form hr {
	display:none;
}

/*項目を消すボタン*/
.add-extra {
  display: inline-block;
  /* width: 25px; */
  /* text-align: center; */
  margin: 0 5px 0 0;
}
.add-extra i {
  font-size: 20px;
  vertical-align: middle;
  cursor: pointer;
}
.add-extra i:hover{
  opacity: 0.7;
}

/*送付先異なる場合*/
.addr_claim input[type="checkbox"],
.addr_send input[type="checkbox"]{
	margin: 0 10px 0 0;
}
.form_input #wrapSubAddr{
	/*height: 0;
	overflow: hidden;*/
	display: none;
	padding: 10px 0;
}


body#form01 table.price_list {
	width:60%;
	float: left;
}
body#form01 .memberPrice{
	width:35%;
	float: right;
	background: #eee;
	border-radius:5px;
	padding:10px;
    margin: 15px 0;
	
}
body#form01 .subtxt.exLink{
	clear: both;
}
body#form01 .subtxt.exLink img{
	float: left;
	margin-right:10px;
}
body#form01 .single_item {}
body#form01 .single_item ul{
	padding:0 0 5px;
}

body#form01 .single_item ul li{
	border-bottom:1px dotted #ccc;
	padding:2px 0;
}


body#form01 dl.single_item button{
	padding: 7px 10px;
	cursor: pointer;
}


body.form_input #form_container .formBox.addr_send {
    padding-bottom: 0;
}
body.form_input #form_container .formBox.addr_send h4 {
	margin-bottom: 0;
}
body.form #form_container .formBox.addr_send h4 .subAddr_memo{
  font-size: 13px;
}


#second_container_right ul li {
    list-style:disc !important;
    padding-bottom: 5px;
}
body.form .form_content .stands_out {
	display:block;
	padding:20px 0 40px 20px;
}

body.form .form_content #error {
	color:#A51253;
	margin:10px;
}


/*form02*/
body#form02 {}
body#form02 .publish_toggle {
	margin:10px 0;
}

body#form02 .publish_toggle p.button .status{
	position: absolute;
	right: 10px;
	font-size:24px;
	color:#fff;
}

/*ボタン風CSS*/
/*body#form02 .publish_toggle p.button {
    background-color:#8298b0;
    background-image: -webkit-linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,0%,.1));
    background-image:    -moz-linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,0%,.1));
    background-image:     -ms-linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,0%,.1));
    background-image:      -o-linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,0%,.1));
    background-image:         linear-gradient(hsla(0,0%,100%,.05), hsla(0,0%,0%,.1));
    border: none;
    border-radius: .5em;
    box-shadow: inset 0 0 0 1px hsla(0,0%,0%,.2),
                inset 0 2px 0 hsla(0,0%,100%,.1),
                inset 0 1.2em 0 hsla(0,0%,100%,0.1),
                inset 0 -.2em 0 hsla(0,0%,100%,.1),
                inset 0 -.25em 0 hsla(0,0%,0%,.25),
                0 .25em .25em hsla(0,0%,0%,.05);
    color: #fff;
    cursor: pointer;
    font-weight: bold;
    line-height: 1.8;
    padding: .8em 3.5em 1em 1.5em;
    position: relative;
    text-decoration: none;
    text-shadow: 0 1px 1px hsla(0,0%,100%,.25);
    vertical-align: middle;
	width:100%;
	box-sizing: border-box;
}
body#form02 .publish_toggle p.button:hover {
    outline: none;
}
body#form02 .publish_toggle p.button:hover,
body#form02 .publish_toggle p.button:focus {
    box-shadow: inset 0 0 0 1px hsla(0,0%,0%,.2),
                inset 0 2px 0 hsla(0,0%,100%,.1),
                inset 0 1.2em 0 hsla(0,0%,100%,.1),
                inset 0 -.2em 0 hsla(0,0%,100%,.1),
                inset 0 -.25em 0 hsla(0,0%,0%,.25),
                inset 0 0 0 3em hsla(0,0%,100%,.2),
                0 .25em .25em hsla(0,0%,0%,.05);
}
body#form02 .publish_toggle p.button:active {
    box-shadow: inset 0 0 0 1px hsla(0,0%,0%,.2),
                inset 0 2px 0 hsla(0,0%,100%,.1),
                inset 0 1.2em 0 hsla(0,0%,100%,.1),
                inset 0 0 0 3em hsla(0,0%,100%,.2),
                inset 0 .25em .5em hsla(0,0%,0%,.05),
                0 -1px 1px hsla(0,0%,0%,.1),
                0 1px 1px hsla(0,0%,100%,.25);
    margin-top: .25em;
    outline: none;
    padding-bottom: .5em;
}
*/
body#form02 .publish_group {
	border:2px solid #ccc;
	overflow: hidden;
	margin-bottom:10px;
}
body#form02 .publish_group p.button {
	position: relative;
	padding:10px;
	background: #7D8FA6;
	color:#fff;
	font-weight: bold;
	font-size:16px;
}

body#form02 .publish_group .kakaku {
	padding:10px;
}
body#form02 .publish_group .kakaku table {
	width:100%;
}

body#form02 .publish_group .kakaku table th,
body#form02 .publish_group .kakaku table td{
	border:1px solid #ccc;
	padding:5px;
}
body#form02 .publish_group .kakaku table th{
	border-left:5px solid #ccc;
}
body#form02 .publish_group p.button .status{
	display: none;
}

body.form #form_container .formBox dl.publish dd.dash {
	width:100%;
}

body#form02 .formBox dl.publish {
	border:none;
    margin: 10px 5px;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
	border-bottom:1px dashed #ccc;
	
}
body#form02 .publish_group button{
	margin:0px 20px 10px;
	float: right;
	padding:7px;
}
body#form02 .formBox .publish dt,
body#form02 .formBox .publish dd{
	/*border-top:1px dashed #eee;*/
	vertical-align: middle;
	align-items: center;
	padding:8px 10px;
	box-sizing: border-box;
	display: flex;
	align-items: center;

}
body#form02 .formBox .publish dt select {
	min-width: 30%;
}
body#form02 .formBox .publish2 dt label,
body#form02 .formBox .publish dt label{
	display: block;
	cursor: pointer;
	width:100%;
	padding:4px;
  box-sizing: border-box;
}
body#form02 .formBox .publish2 dt label:hover,
body#form02 .formBox .publish dt label:hover{
	background: #eee;
}
body#form02 .formBox .publish dt,
body#form02 .formBox .publish2 dt{
    width: 80%;
}
body#form02 .formBox .publish dd,
body#form02 .formBox .publish2 dd {
    width: 20%;
	border-left :none;
}
body#form02 .formBox dl.publish2 {
    margin: 0 0 10px;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
    position: relative;
    padding: 10px 11px;
    background: #FFF;
	margin: 0 0 10px;
	border-top:1px dashed #ccc;
	}

/*form03*/
body#form03 {}
body#form03 .formBox .item_sel {
	margin:0 0 10px;
}
body#form03 .formBox .item_sel li{
	padding:4px;
}
body#form03 .formBox .item_sel label{
	cursor: pointer;
}
body#form03 .formBox .item_sel li:hover{
	background: #eee;
}
body#form03 .formBox dd.f03_names p {
	font-size: 12px;
}
body#form03 .formBox dd.f03_names p span {
	display: inline-block;
	background: #C3E1F0;
	padding:3px;
	border-radius: 4px;
	margin-right:5px;
	font-size:12px;
}

/*form03 受講者名に関する記述*/
body#form03 .item_group_wrap{
  display: flex;
}
body#form03 .item_group {
  box-sizing: border-box;
  overflow: hidden;
  width: calc(100% - 30px);
}

body#form03 .item_group_wrap .item_group_name { 
  left: 0;
  top: 0;
  display: block;
  width: 32px;
	background: #7c8fa7;
	color:#fff;  box-sizing: border-box;
  padding: 20px 5px;
  text-align: center;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: left;
}
body#form03 .item_group_wrap#students .item_group_name { 
	background:#478F7E;
}
body#form03 .item_group_wrap#students .item_group > dl > dt {
	background:#BFEBDC;
}
body#form03 .item_group_wrap#students .item_group dl dd .subinfo {
	display: none;
}
body#form03 .item_group_wrap#students .item_group dl dd .name_inner {
    padding: 1px 0;
}
body#form03 .item_group_wrap#students .item_group dl dd .name_inner dt{
	width: auto;

}
body#form03 .formBox.addr_send_conf .def_form >dl >dt ,
body#form03 .formBox.addr_send .def_form >dl >dt {
		background:#BFEBDC;
}
body#form03 .item_group_wrap#students .item_group > dl:first-of-type {
    border-top: none;
}

/*form04*/
body#form04 ul.dvd_list {
	display: flex;
	flex-wrap: wrap;
	margin:10px 0;
	background: #eee;
	padding:2px;
}
body#form04 ul.dvd_list li {
  width: calc(100% / 3 );
  box-sizing: border-box;
  padding:10px;
  display: inline-flex;
  background: #fff;
  border:2px solid #eee;
  box-sizing: border-box;
  
}

body#form04 ul.dvd_list li .pkg{
  float: left;
  margin-right: 10px;
  min-width:80px;
}
body#form04 ul.dvd_list li .pkg img{
	width:100%;
}
body#form04 ul.dvd_list li .txt em{
	font-style: normal;
	font-size:12px;
}
body#form04 ul.dvd_list li h5,
body#form04 ul.dvd_list li p{

}
/*form06*/
body#form06 .publish3,
body#form07 .publish3{}
.publish3{
	display: flex;
	flex-wrap: wrap;
}
.publish3 dt{
	width:calc(100% /3 );
	padding:0px;
	box-sizing: border-box;
}
.publish3 dt label{
	display: block;
	width:90%;
	padding:10px;
	border-radius:5px;
	box-sizing: border-box;

}
.publish3 dt label:hover{
	background: #eee;
}



#sub_sidebar {
	display: none;
}
/*******************************************************
確認画面　body.form_conf
****************************/
body.form_conf dl.div dd dl.div_inner,
body.form_conf dl.name dd dl.name_inner{
  display: flex;
}
/*Conf用 注意書き*/
body.form_conf .form_conf_info{
  margin: 20px 14px;
}
/*Conf用 申し込み確認画面の一覧リスト*/
body.form_conf .conf_list {
	margin:0 0 20px 0;
}
body.form_conf .conf_list li{
	padding: 5px 0 5px 20px;
	margin: 0 0 ;
	position: relative;
	border-bottom:1px dashed #ccc;
}
body.form_conf .conf_list li:last-child{
	border: none;
}

body.form_conf .conf_list li::before {
  content: "・";
  position: absolute;
  top: 5px;
  left: 0px;
}
body.form_conf .conf_list dl{
  display: flex;
}
body.form_conf .conf_list dl dt{
  width: 55%;
  font-weight: bold;
}

body.form_conf dl.div dd dl dt, 
body.form_conf dl.name dd dl dt, 
body.form_conf dl.address dd dl dt {
	width:auto;
	font-weight: bold;
}
body.form_conf dl.div dd dl dt::after, 
body.form_conf dl.name dd dl dt::after, 
body.form_conf dl.address dd dl dt::after {
	content: "：";
}

/****************************************
申込、確認、戻る　ボタン
******************************/
#btn_container button {
	display: inline-block;
	border:none;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background:#AE0046;
	border-radius: 4px;
	transition: .0s;
	font-size:18px;
	padding:14px 40px;
}
#btn_container button:hover {
	 cursor: pointer;
	 text-decoration: none;
	 background:#AE0046;
	 transform: translate3d(0, 2px, 0);
	 transition: .0s;
	 border-bottom: none;
}
#btn_container button::after {
   font-family: "Font Awesome 5 Free"; 
   font-weight: 900; 
   content: "\f138";
   margin-left:5px;
}

#btn_container button.back {
		background: #6082B0;
}
#btn_container button.back::after {
	display: none;
}
#btn_container button.back::before {
   font-family: "Font Awesome 5 Free"; 
   font-weight: 900; 
   content: "\f137";
   margin-right:5px;
}
/*******
完了画面　form_comp
*********/
body.form_comp #content p.thanks {
	font-size:16px;
	font-weight:bold;
	padding:20px 0 0 20px;
}
body.form_comp #content h4 {
	color: #333;
    font-weight: bold;
    padding-left: 0;
    background: none;
    margin: 10px 0px 5px;
}
body.form_comp #content ol{
	list-style-type: decimal;
	padding-left:1em;
}
body.form_comp #content ol li{
	list-style-position: outside;
	list-style-type: decimal;
}

/***********************************************
スマホ用 body.sp 
************************************************/
/*共通*/
body.form.sp select, 
body.form.sp option, 
body.form.sp textarea, 
body.form.sp input[type="text"], 
body.form.sp input[type="number"], 
body.form.sp input[type="tel"], 
body.form.sp input[type="mail"] {
    font-size: 16px;
    padding: 5px 3px;
    margin: 2px 0;

}


body.form.sp input[type="radio"],
body.form.sp input[type="checkbox"] {
    font-size: x-large;
    height: 20px;
    width: 20px;
    min-height: 20px;
    min-width: 20px;
    margin: .1em .5em .1em;
    vertical-align: middle;
}

body.form.sp #sub_sidebar {
    margin:0px;
}
body.form.sp .form_content {
    float: none;
    width: 100%;
	padding:10px;
	box-sizing:border-box;
	margin:0;
}
body.form.sp #form_container .formBox {
    padding: 5px;
    margin-bottom: 16px;
    overflow: hidden;
}

body.form.sp #form_container .formBox h4 {
    padding: 8px 10px;
    color: #333;
    font-size: 16px;
    margin: -5px -5px 10px;
    background: #eee;
}
body.form.sp #form_container .def_form > dl,
body.form.sp #form_container .formBox > dl{
	display: block;
}
body.form.sp .formBox .def_form .item_group > dl > dd, 
body.form.sp .formBox .def_form > dl > dd{
	padding:5px 5px 15px;
}

body.form.sp #form_container .def_form dl dd,
body.form.sp #form_container .def_form dl dt,
body.form.sp #form_container .formBox dl dd,
body.form.sp #form_container .formBox dl dt,
body.form.sp #form_container .formBox dl.publish dt,
body.form.sp #form_container .formBox dl.publish2 dt,
body.form.sp #form_container .formBox dl.publish dd, 
body.form.sp #form_container .formBox dl.publish2 dd {
    width: 100%;
	float: none;
	border-bottom:none;
	border-top:none;
}
body.form.sp #form_container .formBox dl dd {
    border-left: none;
    float: none;
}


body.form.sp textarea {
	max-width:95%;
}
body.form.sp table {
	font-size:1.2rem;
}


body.form.sp dl.div dd dl, 
body.form.sp dl.name dd dl{
	display: flex;
	align-items: flex-start;
}
body.form.sp dl.div dd dl dt, 
body.form.sp dl.name dd dl dt{
	width: 25% !important;
}
body.form.sp dl.div dd dl dd, 
body.form.sp dl.name dd dl dd{
	width: 75% !important;
}
body.form.sp dl.address dd dl {
    display: block;
    border: none;
}
body.form.sp dl.div dd dl dt, 
body.form.sp dl.name dd dl dt, 
body.form.sp dl.address dd dl dt {
	padding:5px 0 0 0;
	font-weight: bold;
}
body.form.sp dl.address dl.addr_inner:first-child dd p,
body.form.sp dl.address dl.addr_inner:first-child dd em {
	display: block;
}

/**form01 sp*/
body#form01.sp dl.single_item button {
    padding: 5px 7px;
    cursor: pointer;
}
body.form.sp .form_content .detail_txt {
	padding:0;
	margin-bottom:10px;
}
body#form01.sp .memberPrice,
body#form01.sp table.price_list {
    width: 100%;
    float: none;
	box-sizing: border-box;
}

/**form02sp*/

body#form02.sp .formBox .publish dt, 
body#form02.sp .formBox .publish dd {
    padding: 4px 0px;
}
body#form02.sp .formBox .publish_group dl.publish {
	display: flex;
	flex-wrap:nowrap;
}
body#form02.sp .formBox .publish_group dl.publish dt{width:74%;padding-right:5px;}
body#form02.sp .formBox .publish_group dl.publish dd{width:25%;}

body#form02.sp .formBox .publish_group dl.publish dt select {width:100%;}

/**form03 sp*/
body#form03.sp .formBox .item_sel li{
	overflow: hidden;
	padding:4px 0;
	margin:3px 0;
	border-bottom:1px dotted #ccc;
}
body#form03.sp .formBox .item_sel li input{
	float: left;
}
body#form03.sp .item_group_wrap,
body#form03.sp .item_group_wrap .item_group > dl {
	display: block;
}
body#form03.sp .item_group_wrap .item_group_name {
	width: 100%;
	writing-mode:horizontal-tb;
	padding:10px;
}
body#form03.sp .item_group_wrap .item_group{
	width:100%;
}
body#form03.sp .item_group_wrap .item_group > dl dt,
body#form03.sp .item_group_wrap .item_group > dl dd{
	width:100%;
}
/*
body#form03.sp .item_group_wrap .item_group .div_inner,
body#form03.sp .item_group_wrap .item_group .name_inner {
	display: flex;
	align-items:flex-start;
}
body#form03.sp .item_group_wrap .item_group .div_inner dt,
body#form03.sp .item_group_wrap .item_group .name_inner dt {
	width:25% !important;
	}
body#form03.sp .item_group_wrap .item_group .div_inner dd,
body#form03.sp .item_group_wrap .item_group .name_inner dd {
	width:75% !important;
}*/

body#form04.sp .dvd_list {}
body#form04.sp .dvd_list li{
	width:100%;
}
/***確認画面***/
body.form.sp.form_conf  dl.div dd dl, 
body.form.sp.form_conf  dl.name dd dl,
body.form.sp.form_conf  dl.address dd dl{
	display: flex;
	align-items: flex-start;
}
body.form.sp.form_conf  dl.div dd dl dt, 
body.form.sp.form_conf  dl.name dd dl dt,
body.form.sp.form_conf  dl.address dd dl dt{
	width:auto !important;
	white-space: nowrap;
	padding:0;
}
body.form.sp.form_conf  dl.div dd dl dd, 
body.form.sp.form_conf  dl.name dd dl dd{
	width: auto !important;
}
body.form.sp.form_conf  #students .name_inner >dt {
	width:auto !important;
	white-space: nowrap;
	padding:0;	
}

form ul li::before {
    content: "";
    width: 0px;
    height: 0px;
    margin-right: 0px;
    text-indent: 0;
    display: inline-block;
    vertical-align: middle;
    border-radius: 0;
    visibility: hidden !important;
}

.page-skill form h4 {
    border: none !important;
    font-weight: bold;
    color: #333 !important;
}





/*  追記2022.03.29------  */


body.form .form_content {
  padding:0 0 60px; 
}

.form_content p,
.form_content dl,
.form_content dt,
.form_content dd,
.form_content input[type="text"],
.form_content input[type="email"],
.form_content select,
.form_content textarea {
  margin:0 !important;
  max-width: 100% !important;
} 

.form_content textarea {
  width:100%;
}

.form_content ul li{
	text-indent:0;
}
.form_content ul li::before{
display:none;
}

.form_content h4 {
	border:none; 
}

body.form #form_container .formBox {
margin:20px 0;
}





.publish_group .kakaku {
  clear: both;
}


.form_content dl.publish3 {
  margin-bottom:20px !important;
}


@media (min-width:768px){
  body.form dl.div dd dl dt,
  body.form dl.name dd dl dt,
  body.form dl.address dd dl dt {
    width: 110px; 
  }
}


@media (max-width:767px){
  
body#form03 .item_group_wrap#students .item_group dl dd .name_inner dt{
    width: auto !important;
}
  
body.form .form_content {
  padding:0 0 30px; 
}
  
  
  body#form02 .formBox .publish dt select {
    width: 100% !important;
  } 
  
  body.form .formBox .def_form > dl  {
    display: block;
  }
  body.form .formBox .def_form > dl > dt ,
  body.form .formBox .def_form > dl > dd {
    width:100%;
    display: block;
    float: none;
  } 
  
  body#form02 .formBox .publish dt > div, 
  body#form02 .formBox .publish2 dt > div ,
  body#form02 .formBox .publish dd > div, 
  body#form02 .formBox .publish2 dd > div {
    width: 100%;
  }
  body#form02 .formBox .publish dd , 
  body#form02 .formBox .publish2 dd  {
    display: block; 
  }
  body.form dl.address dd p {
    display: block;
  }
  
  body.form_input dl.div dd dl.div_inner, 
  body.form_input dl.name dd dl.name_inner  {
    display: flex;
  }
  
  body.form dl.div dd dl dt,
  body.form dl.name dd dl dt,
  body.form dl.address dd dl dt {
    width: 25%; 
  }
  body.form dl.div dd dl dd,
  body.form dl.name dd dl dd,
  body.form dl.address dd dl dd {
    width: 65%; 
  }
  
  
  body#form01 table.price_list ,
  body#form01 .memberPrice {
    float: none;
    width:100%;
    box-sizing: border-box;
  }
  
  body#form03 .item_group_wrap#students .item_group dl dd .name_inner {
    display: block;
  }
  body#form03 .item_group_wrap#students .item_group dl dd .name_inner dd {
    width: auto !important;
  }
  body#form03 .item_group_wrap#students .item_group dl dd .name_inner dd input[type="text"],
  body#form03 .item_group_wrap#students .item_group dl dd .name_inner dd input[type="email"] {
    width: 100%;
  }
  
  body#form04 ul.dvd_list li {
    width: 100%;
  }
  
  .publish3 dt {
    width: 100%;
  }
  
}