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

CSS Information

 File name:      form.css

 Style Info:     line form style

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

/* default
-----------------------------------------------------------*/

html, body, ul, dl, dt, dd, p, h1, h2, h3, h4, h5, h6 {
	margin: 0px;
	padding: 0px;
}

table, pre, code, select, input, textarea, kbd, var, ins, del, samp, h1, h2, h3, h4, h5, h6 {
	font-size:100%;
}

ul,ol,li {
	list-style: none;
}

address,cite,dfn,em,var,i {
	font-style: normal;
}

select option {
	padding: 0 5px;
}

input, textarea{
	margin: 1px;
	padding: 2px;
	line-height: 1;
}

textarea{
	overflow:auto;
	resize: vertical;
}

input, button, textarea, select, optgroup, option {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

input[type="text"],input[type="password"],input[type="email"],input[type="tel"],input[type="url"],input[type="number"],input[type="time"],input[type="week"],input[type="month"],input[type="search"],input[type="button"],input[type="submit"],input[type="reset"], button, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

select::-ms-expand {
	display: none;
}
 

/* layout
-----------------------------------------------------------*/

html,body {
	font-size: 16px;
}

body {
	position: relative;
	word-wrap: break-word;
	color: #333;
	font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	line-height: 1.6;
	background-attachment: fixed;
}

.wrapper {
	overflow: hidden;
	max-width: 800px;
	margin: 0 auto;
}

.center {
	text-align: center;
}


img {
	max-width: 100%;
}

.red {
    color: #AF1717;	
}

/* text mode */
.wrapper.test {
	margin-top: 50px;
}
.test_mode {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 8px 0;
	background: rgba(184, 10, 10, 0.65);
	text-align: center;
}
.test_mode .label {
	display: inline-block;
	padding: 2px 2em;
	border-radius: 50vh;
	background: #FFF;
	color: #a40000;
}

/* salonname
-----------------------------------------------------------*/

.salonname__box {
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 15px;
	vertical-align: middle;
}

.salonname__box .fig {
	overflow: hidden;
	display: block;
	width: 64px;
	height: 64px;
	border-radius: 50vw;
	margin-right: 15px;
}
.salonname__box .fig img {
	width: 100%;
}

.salonname__box .salonname {
	position: relative;
}

.salonname__box .salonname b {
	display: block;
}


/* fix bar
-----------------------------------------------------------*/

.fix_bar {
	position: fixed;
	z-index: 999999999;
	bottom: 0;
	left: 0;
	width: 100%;
	transition: 0.4s;
}
.fix_bar.hide {
	display: none;
}

.fix_inner {
	position: relative;
	max-width: 770px;
	margin: 0 auto;
	padding: 0 15px 10px;
}

.fix_inner a {
	display: -webkit-flex;
	display: flex;
	padding: 10px 20px;
	border-radius: 50vh;
	background: rgba(85,85,85,.65);
	color: #FFF;
	text-decoration: none;
}

.fix_inner a .fix_price_txt {
	display: block;
	flex: 1;
	padding: 4px 0;
	font-size: 1.125rem;
}

.fix_inner a .fix_txt {
	display: block;
	padding: 8px 15px;
	border-radius: 50vh;
	background: #FFF;
	color: #3989ce;
	font-size: 85%;
}


/* kuchikomi
-----------------------------------------------------------*/

.kuchikomi_area {
	padding: 0 20px 20px;
	line-height: 1.8;
}

.kuchikomi_area img {
	line-height: 1;
}
.kuchikomi_area .fig {
	display: block;
	line-height: 1;
}

.kuchikomi_area h1 {
	margin: 0 -20px 20px;
	padding: 15px 10px;
	background: #dfdfdf;
	text-align: center;
}

.kuchikomi_area p {
	margin-bottom: 1.2em;
}

.kuchikomi_area .btn img {
	width: 240px;
	max-width: 60%;
}


/* カバーイメージ */
.kuchikomi_cover {
	position: relative;
	margin-bottom: 20px;
}

.kuchi_txt {
	position: absolute;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
}

.kuchi_txt .fig img {
	width: 100%;
}

.kuchi_txt .inner {
	width: 100%;
}

.kuchi_txt h2 {
	display: inline-block;
	min-width: 75%;
	margin-bottom: 15px;
	padding: 20px 0;
	border: 2px solid #FFF;
	color: #FFF;
	font-size: 9vw;
	font-weight: normal;
	line-height: 1.4;
}

.kuchi_txt .txt1 {
	margin-bottom: 10px;
	color: #FFF;
	font-size: 5.5vw;
}

.kuchi_txt .txt2 {
	margin-bottom: 0;
}
.kuchi_txt .txt2 em {
	display: inline-block;
	padding: 5px 20px;
	border-radius: 50vh;
	color: #FFF;
	font-size: 6.5vw;
}

@media only screen and (min-width: 799px) {
	.kuchi_txt h2 {
		font-size: 4.5rem;
	}
	.kuchi_txt .txt1 {
		font-size: 2.5vw;
	}
	.kuchi_txt .txt2 em {
		padding: 5px 40px;
		font-size: 3vw;
	}
}


/* ボタンボックス
-----------------------------------------------------------*/

.btn_box {
	clear: both;
	margin: 0;
	padding: 10px 0 20px;
	text-align: center;
}

.btn_box a ,
.btn_box span {
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 15px 15px;
	border-radius: 10px;
	box-sizing: border-box;
	background: #434343;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
}
.btn_box a::before ,
.btn_box span::before {
	position: absolute;
	content: '';
	right: 20px;
	top: 40%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #FFF;
}

.btn_box.gy a {
	background: #CCC;
	color: #FFF;
}
.btn_box.wh a {
	background: #FFF;
}


/* line fukidashi
-----------------------------------------------------------*/

.friend_toukou {
	margin-left: -20px;
	margin-right: -20px;
	margin-bottom: 1.2em;
	background: #8fa5cd;
}

.line_fukidashi {
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
	padding: 15px;
	font-size: .875rem;
	line-height: 1.4;
	vertical-align: middle;
}

.line_fukidashi .fig {
	overflow: hidden;
	position: relative;
	display: block;
	width: 45px;
	height: 45px;
	border-radius: 50vw;
	background: #9acfcd;
}
.line_fukidashi .fig::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	margin-left: -10px;
	background: url('data:image/svg+xml,%3Csvg%20enable-background%3D%22new%200%200%2018%2017%22%20viewBox%3D%220%200%2018%2017%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20clip-rule%3D%22evenodd%22%20d%3D%22m18%2017h-18v-1.2c0-2.4.4-3.3%202.9-3.9%202.7-.6%203.7-1%203.1-2.1-1.7-3.1-2-5.9-.9-7.8.8-1.3%202.2-2%203.9-2s3.1.7%203.8%202c1.1%201.9.8%204.7-.9%207.9-.6%201.2.6%201.6%203.2%202.1%202.5.6%202.9%201.4%202.9%203.9zm-17-1h16c0-2%20.1-2.5-2.1-3-1.8-.4-3.5-.8-4-1.9-.2-.5-.2-1.1.2-1.7%201.5-2.9%201.9-5.3.9-6.9-.6-1-1.7-1.5-3-1.5s-2.4.5-3%201.5c-.9%201.6-.6%204%20.9%206.8.3.6.4%201.2.2%201.7-.5%201.1-2.3%201.5-4%201.9-2.1.6-2.1%201-2.1%203.1z%22%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E') no-repeat;
	background-size: 100% auto;
}

.line_fukidashi .fukidashi {
	position: relative;
	margin-top: 10px;
	margin-left: 20px;
	padding: 15px;
	background: #FFF;
	border-radius: 10px;
}

.line_fukidashi .fukidashi p {
	margin-bottom: 0;
}

.line_fukidashi .fukidashi::before {
	position: absolute;
	content: '';
	top: 5px;
	left: -12px;
	width: 12px;
	height: 14px;
	background: url('data:image/svg+xml,%3Csvg%20enable-background%3D%22new%200%200%20120.7%20138.6%22%20viewBox%3D%220%200%20120.7%20138.6%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m57.3%2027.5c-25.9-5.1-46.2-16.5-57.3-27.5%203.8%2022.9%2012.2%2045.4%2025.5%2066.2%2012.5%2019.4%2026.2%2032.2%2034.3%2039.1%2022.6%2019.1%2045.6%2028.6%2060.9%2033.4%200-35.3%200-68.6%200-103.9-16.6-.5-38.7-2.5-63.4-7.3z%22%20fill%3D%22%23FFFFFF%22%2F%3E%3C%2Fsvg%3E') no-repeat;
	background-size: 100% auto;
}


/* btn */
.btn_line {
	display: inline-block;
	margin-left: .2em;
	margin-right: .2em;
	padding: 2px .8em;
	border-radius: 50vh;
	background: #3db156;
	color: #FFF;
	font-size: 85%;
	line-height: 1.2;
	vertical-align: baseline;
}



/* fukidashi
-----------------------------------------------------------*/

.fukidashi__box {
	display: -webkit-flex;
	display: flex;
	padding: 15px;
	font-size: .875rem;
	vertical-align: middle;
}

.fukidashi__box .fig {
	overflow: hidden;
	display: block;
	width: 64px;
	height: 64px;
	border-radius: 50vw;
}
.fukidashi__box .fig img {
	width: 100%;
}

.fukidashi__box .fukidashi {
	position: relative;
	flex: 1;
	padding: 15px;
	background: #EEE;
	border-radius: 5px;
}

.fukidashi__box .fukidashi::before {
	position: absolute;
	content: '';
	top: 45px;
	margin-top: -20px;
	border-style: solid;
	border-width: 10px 20px;
}
.fukidashi__box.fuki_left .fukidashi::before {
	left: -30px;
	border-color: transparent #EEE transparent transparent;
}
.fukidashi__box.fuki_right .fukidashi::before {
	right: -30px;
	border-color: transparent transparent transparent #EEE;
}

.fukidashi__box .fukidashi p:last-child {
	margin-bottom: 0!important;
}

/* left/right */
.fukidashi__box.fuki_left {
	flex-direction: row;
}
.fukidashi__box.fuki_left .fukidashi {
	margin-left: 20px;
}
.fukidashi__box.fuki_right {
	flex-direction: row-reverse;
}
.fukidashi__box.fuki_right .fukidashi {
	margin-right: 20px;
}


/* btn */
.btn_line {
	display: inline-block;
	margin-left: .2em;
	margin-right: .2em;
	padding: 2px .8em;
	border-radius: 50vh;
	background: #3db156;
	color: #FFF;
	font-size: 85%;
	line-height: 1.2;
	vertical-align: baseline;
}



/* calender tab
-----------------------------------------------------------*/

.caltab_wrap {
	text-align: center;
}

.tab_label {
	cursor: pointer;
	display: inline-block;
	width: 40%;
	margin-left: 4px;
	color: #999;
	background: #DDD;
	padding: 4px 8px 4px;
	border-radius: 4px 4px 0 0;
}
.tab_switch:checked+.tab_label {
	margin-bottom: -3px;
	padding: 3px 8px 5px;
	border: 1px solid #CCC;
	border-bottom: none;
	background: #FFF;
	color: #333;
}
.tab_content {
	display: none;
	border-top: 1px solid #CCC;
	padding: 10px;
}
.tab_switch:first-of-type:checked ~ .tab_content:first-of-type,
.tab_switch:last-of-type:checked ~ .tab_content:last-of-type,
.tab_switch:nth-of-type(2):checked ~ .tab_content:nth-of-type(2) {
	display: block;
}
.tab_switch {
	display: none;
}


.cal_info {
	vertical-align: middle;
}

.cal_info span {
	display: inline-block;
	margin-left: 1em;
}
.cal_info p {
	margin-top: 10px;
	
}

.cal_info b {
	display: inline-block;
	margin-left: 4px;
	margin-top: -2px;
	width: 1em;
	height: 1em;
	vertical-align: middle;
}

.cal_info .holyday b {
	background: #d4b8b8;
}
.cal_info .fullday b {
	background: #EEE;
}


/* calener
-----------------------------------------------------------*/

.cal_wrapper {
	padding-bottom: 10px;
}

.cal_wrapper table.cal {
	width: 100%;
	border-collapse: collapse;
}

.cal_wrapper table.cal tr th p {
	display: none;
	margin: 0;
	padding: 0;
	font-weight: normal;
}

.cal_wrapper table.cal tr th .cal_ui {
	display: none;
}

.cal_wrapper table.cal tr td {
	padding: 0;
	border: solid 1px #CCC;
	text-align: center;
	vertical-align: top;
	line-height: 1.2;
}

.cal_wrapper table.cal tr.headline {
	background: #EEE;
}

.cal_wrapper table.cal tr.headline td {
	padding: 8px 0;
}

.cal_wrapper table.cal tr td div {
	position: relative;
	padding: 2px 0 15px;
	text-align: center;
}

.cal_wrapper table.cal tr td div span {
	display: none;
	position: absolute;
	top: 20px;
	left: 50%;
	padding: 8px;
	width: 100px;
	border: solid 1px #EEE;
	background: #FFF;
	box-shadow: 1px 1px 2px #999;
	z-index: 10;
	color: #333;
	font-size: 87.5%;
	text-align: center;
}

/* 日にちクラス指定 */

.cal_wrapper table.cal tr.headline td:last-child ,
.cal_wrapper table.cal tr td .Sat {
	color: #00479d;
}
.cal_wrapper table.cal tr.headline td:first-child ,
.cal_wrapper table.cal tr td .Sun {
	color: #a40000;
}
.cal_wrapper table.cal tr td .Today {
	font-weight: bold;
}
.cal_wrapper table.cal tr td .day {
	color: #a40000;
}
.cal_wrapper table.cal tr td .holyday {
	padding: 2px 0 2px;
	background: #d4b8b8;
}
.cal_wrapper table.cal tr td .fullday {
	padding: 2px 0 2px;
	background: #EEE;
}
.cal_wrapper table.cal tr td div::after {
	content: '';
	display: block;
	font-size: .75rem;
}
.cal_wrapper table.cal tr td .holyday::after {
	content: '\4f11';
	color: #ffffff;
}
.cal_wrapper table.cal tr td .fullday::after {
	content: '\6E80';
	color: #999;
}



/* form
-----------------------------------------------------------*/

.form_area {
	background: #FFF;
}

/* box */
.form_info {
	margin-bottom: 18px;
	padding: 15px;
	background: #FFF;
	box-shadow: 0 7px 5px 2px rgba(0, 0, 128, .08);
}
.form_info p {
	font-size: .875rem;
}

.form_inner {
	margin-bottom: 18px;
	padding: 15px;
	background: #FFF;
	box-shadow: 0 7px 5px 2px rgba(0, 0, 128, .08);
}
.form_inner:blank {
	/*margin-bottom: 0;
	padding: 0;*/
	box-shadow: none;
}
.form_inner p {
	margin-bottom: 15px;
	padding: 0 8px;
	font-size: .875rem;
}
.form_inner p:last-child {
	margin-bottom: 0;
}
.form_inner iframe {
	max-width: 100%;
}

/* title */
.form_area h2 {
	margin-bottom: 15px;
	padding: 5px 10px;
	background: #ced8e0;
	text-align: center;
}
.form_area h2 span {
	display: inline-block;
}
.form_area h3 {
    margin-bottom: 15px;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: #EBEBEB;
    padding-left: 15px;
    padding-right: 15px;
}

/* form ここから ======================  */

.form_box {
	margin-bottom: 10px;
}

.form_box .note {
	padding: 0;
}

/* ul */
ul.form_box li {
    margin-bottom: 10px;
    padding: 0 8px;
}
ul.form_box .menu_li {
    border-bottom: 1px dotted #CBCBCB;
}
ul.form_box.form_box_inline li {
	display: inline-block;
}
ul.form_box li .menu_txt {
	font-size: 85%;
	margin-bottom: 10px;
}

ul.form_box li .info {
    display: block;

    text-align: right;
}
ul.form_box li .info i {
	display: inline-block;
	margin-right: .5em;
	font-size: 85%;
}
ul.form_box li .info em {
	font-weight: bold;
}

/* dl */
dl.form_box {
	margin-bottom: 5px;
}
dl.form_box dt {
	margin-bottom: 10px;
	padding-left: 10px;
	font-weight: bold;
}
dl.form_box dd {
	margin-bottom: 15px;
	padding: 0 8px;
}

dl.form_box dd.data ,
dl.form_box dd.time {
	position: relative;
	padding-left: 4em;
}

dl.form_box dd.time {
	padding-bottom: 15px;
	border-bottom: 1px solid #DDD;
}

/* フリーフォーム:年月日 */
.ff_data_y ,
.ff_data_m ,
.ff_data_d {
	position: relative;
	display: inline-block;
	max-width: calc(25% - 2em);
	padding-right: 2em;
}
.ff_data_y {
	max-width: calc(50% - 2em);
}
.ff_data_y select {
	width: 4.5em;
}
.ff_data_m select ,
.ff_data_d select {
	width: 2.5em;
}
.ff_data_y .ymd ,
.ff_data_m .ymd ,
.ff_data_d .ymd {
	position: absolute;
	display: block;
	top: .25em;
	right: .8em;
}
.ff_zip1 ,
.ff_zip2 {
	position: relative;
	display: inline-block;
	width: 4em;
}
.ff_addr_00 {
	position: relative;
	display: inline-block;
	width: 8em;
	margin-top: 4px;
}
.ff_addr_01 ,
.ff_addr_02 {
	display: block;
	margin-top: 8px;
}

/* 規約 */
.form_terms {
	overflow-y: auto;
	height: 4em;
	margin-bottom: 15px;
	padding: 10px 0 10px 10px;
	border: 1px solid #CCC;
	font-size: .8125rem;
}

/* 共通 */
.form_box .req {
	display: inline-block;
	margin-left: 10px;
	padding: 2px .8em;
	background: #db707a;
	color: #FFF;
	font-size: .8125rem;
	font-weight: normal;
	line-height: 1.4;
	white-space: nowrap;
}

.form_box label {
	display: block;
}
.form_box label.inline {
	display: inline-block;
	padding-right: 1em;
}

.form_box .data .label ,
.form_box .time .label {
	position: absolute;
	display: block;
	top: 4px;
	left: 10px;
	width: 3.5em;
}

.form_box input[type="email"] ,
.form_box input[type="tel"] ,
.form_box input[type="text"] ,
.form_box select ,
.form_box textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #AAA;
	vertical-align: middle;
}

.form_box input[type="radio"] ,
.form_box input[type="checkbox"] {
	margin-right: .5em;
}

.form_box select {
	display: inline-block;
	height: 2em;
	line-height: 1.8;
}
.form_box select option {
	padding: 8px;
}

.form_box .data span ,
.form_box .time span {
	display: inline-block;
	width: 3.5em;
	vertical-align: middle;
}

.form_box .data input[type="text"] ,
.form_box .time input[type="text"] ,
.form_box .data select ,
.form_box .time select {
	width: calc( 100% - 4em );
	width: 100%;
}

.form_box .time_wrapp .timeam ,
.form_box .time_wrapp .timepm {
	display: -webkit-flex;
	display: flex;
	width: 100%;
}
.form_box .time_wrapp .timelabel {
	display: block;
	width: 3em;
	padding-top: 4px;
}
.form_box .time_wrapp input[type="text"] {
	display: block;
	width: calc( 100% - 3em );
}

.form_box .btn_refresh {
	cursor: pointer;
	display: inline-block;
	border-radius: 6px;
	border: 1px solid #DDD;
	background: #F6F6F6;
	background: linear-gradient(to bottom, #FFF 5%, #EEE 100%);
	padding: 4px 24px;
}

/* item form 専用 ==================== */

.item_area input {
	width: 98%;
	font-size: 87%;
}
.item_area textarea {
	display: block;
	width: calc(100% - 1.5em);
	padding-left: 1.2em;
	background: url('data:image/svg+xml,%3Csvg%20enable-background%3D%22new%200%200%2012%2012%22%20viewBox%3D%220%200%2012%2012%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m0%200v12h12v-12z%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E') 0 .5em no-repeat;
	background-size: 12px 12px;
	resize: none;
}

.result_area {
	margin-top: 15px;
	text-align: center;
}

/* delivery price */
.result_area .delivery_price_block {
	margin-bottom: 0;
	padding: 10px 0 10px 0;
	border-top: 1px solid #CCC;
	font-size: 116%;
}
.result_area .delivery_price_block input {
	width: 3em;
	text-align: center;
}

/* total price */
.result_area .total_price_block {
	margin-bottom: 0;
	padding: 10px 1.2em 10px 0;
	background: #EEE;
	font-size: 116%;
	font-weight: bold;
}
.result_area .total_price_block input {
	width: 4em;
	text-align: center;
}

/* timepicker ====================== */

.ui-timepicker-wrapper {
	width: 68%;
	box-sizing: border-box;
}
.ui-timepicker-list {
	width: 100%;
}


/* error ====================== */

.form_box .error {
	display : none;
	color: #C00;
	font-size: 85%;
}

/* NG */
form input:focus:invalid {
	border : tomato 2px solid;
}
form input:focus:invalid + .error {
	display: block;
}
/* OK */
form input:focus:valid + .error {
	display : none;
}



/* btn */

.form_btn_box {
	padding-bottom: 20px;
	text-align: center;
}

.form_btn_box p {
	margin-bottom: 20px;
	font-size: .875rem;
}

.form_btn_box input {
	cursor: pointer;
	position: relative;
	display: inline-block;
	width: 80%;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 8px;
	border: none;
	background: #3db156;
	color: #FFF;
	font-size: 1.126rem;
}

.form_btn_box input:disabled {
	background: #999;
}


/* set list
-----------------------------------------------------------*/

.set_input_list {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px 20px;
	text-align: center;
}

.set_input_list li {
	width: 50%;
	padding: 10px;
	box-sizing: border-box;
}

.set_input_list li.is-hide {
	display: none;
}

.set_input_list figure {
	display: block;
	margin: 0 0 10px;
}

.set_input_list figure img {
	max-width: 96%;
}

.set_input_list span {
	display: block;
}

.set_input_list .item_icon {
	margin: 4px 0;
	padding: 0;
}
.set_input_list .item_icon span {
	display: inline-block;
	padding: 2px 8px;
	background: #DDD;
	color: #666;
	font-size: .75rem;
}

.set_input_list .item_price {
	display: inline-block;
	color: #C00;
	text-align: right;
}

.set_input_list select {
	width: 3em;
	height: 2em;
}

.set_input_list input[type="number"] {
	width: 8em;
}

.set_input_list select.on {
	border: 2px solid #ce4c5b;
	border-radius: 4px;
	background: #f2dada;
	font-weight: bold;
}

@media only screen and (max-width: 639px) {
	.set_input_list {
		display: block;
	}
	.set_input_list li {
		display: -webkit-flex;
		display: flex;
		width: auto;
		border-bottom: 1px solid #CCC;
		align-items: center;
	}
	.set_input_list li:last-child {
		border-bottom: none;
	}
	.set_input_list figure {
		width: 200px;
		max-width: 30%;
		margin: 0;
	}
	.set_input_list .txt_area {
		margin-left: 15px;
		text-align: left;
	}
	.set_input_list span {
		text-align: left;
	}
}

@media only screen and (min-width: 640px) {
	.set_input_list li {
		width: 33.33333%;
	}
}


/* set inline list
-----------------------------------------------------------*/

.set_inline_list {
	margin-bottom: 20px;
}

.set_inline_list li {
	display: inline-block;
}

.set_inline_list li label {
	display: block;
	padding: 5px 10px;
}

.set_inline_list li input {
	display: inline-block;
	margin-right: .5em;
}


/* modal
-----------------------------------------------------------*/

/* modal 本体 */

.modal_wrap input {
	display: none;
}

.modal_layer {
	display: flex;
	justify-content: center;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	opacity: 0;
	transition: opacity 0.5s, transform 0s 0.5s;
	transform: scale(0);
}

.modal_layer.line {
	background: rgba(102, 134, 182, 0.85);
}

.modal_layer_close {
	position: absolute;
	cursor: pointer;
	width: 100%;
	height: 100%;
}

.modal_content {
	position: relative;
	align-self: center;
	width: 600px;
	max-width: 90%;
	max-height: 90%;
	box-sizing: border-box;
	transform: scale(0.3);
	transition: 0.5s;
}

.modal_close_button {
	position: fixed;
	cursor: pointer;
	top: -15px;
	right: -15px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #333;
	color: #FFF;
	font-size: 20px;
	line-height: 35px;
	text-align: center;
	z-index: 2;
}

.modal_content_inner {
	padding: 12px 12px;
	background: #fff;
}
.line .modal_content_inner {
	position: relative;
	border-radius: 10px;
	background: #85e36a;
}
.line .modal_content_inner::after {
	position: absolute;
	display: block;
	content: '';
	top: 10%;
	right: -15px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 15px solid transparent;
	border-left: 15px solid transparent;
	border-top: 12px solid #85e36a;
	border-bottom: 0;
}

.modal_content img {
	margin-bottom: 10px;
}

.modal_wrap input:checked + .modal_layer {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.5s;
}
.modal_wrap input:checked + .modal_layer .modal_content {
	transform: scale(1);
}

@media only screen and (min-width: 768px) {
	.modal_content_inner {
		padding: 30px 30px;
	}
	.modal_content .fig2 img {
		width: 48%;
	}
	.modal_content .figLeft {
		display: inline-block;
		width: 46%;
		margin-right: 4%;
		text-align: center;
		vertical-align: top;
	}
	.modal_content .figLeft + p {
		display: inline-block;
		width: 46%;
		vertical-align: top;
	}
}


/* modal内コンテンツ
-----------------------------------------------------------*/

.test_result_text {
	margin: 0 ;
}

