@charset "UTF-8";


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 入力欄共通 */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form input,
.com_form label,
.com_form select,
.com_form option,
.com_form textarea {
	font-family: ryo-gothic-plusn, sans-serif;
    font-size: 16px;
	letter-spacing: .15em;
    line-height: 1.8em;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
	.com_form input,
	.com_form label,
	.com_form select,
	.com_form option,
	.com_form textarea{
		letter-spacing: .05em;
	}
}

@media only screen and (max-width: 767px) {
	.com_form input,
	.com_form select,
	.com_form option,
	.com_form textarea{
		letter-spacing: .05em;
	}
	.com_form label{
		font-size: 15px;
		letter-spacing: .05em;
		line-height: 1.8em;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* テキストボックス・テキストエリア */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form input[type="text"],
.com_form textarea {
	background-color: #fff;
	border:1px solid #cec6c3;
	border-radius: 5px;
	width: 100%;
	max-width: 670px;
	padding: .8em 1.5em;
	box-sizing: border-box;
	outline: none;
	-webkit-appearance: none;
}
::placeholder{
	color: #cec6c3;
}

@media only screen and (max-width: 767px) {
	.com_form input[type="text"],
	.com_form textarea {
		padding: .6em .8em;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* ラジオボタン・チェックアイコン */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form input[type=radio],
.com_form input[type=checkbox] {
	display: inline-block;
}
.com_form input[type=radio] + label,
.com_form input[type=checkbox] + label {
	position: relative;
	display: inline-block;
}
@media (min-width: 1px) {
	.com_form input[type=radio],
	.com_form input[type=checkbox] {
		position: absolute;		/* 上に別の要素が乗るようにする */
		z-index: -1;			/* 最背面にする */
		pointer-events: none;	/* クリック無効 */
		visibility: hidden;		/* 非表示 */
		margin: 0;
	}
	.com_form input[type=radio] + label,
	.com_form input[type=checkbox] + label {
		padding: 0 0 0 2.3em;
	}
	.com_form input[type=radio] + label::before,
	.com_form input[type=checkbox] + label::before { /*チェック欄の枠線*/
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		box-sizing: border-box;
		display: block;
		width: 1.6em;
		height: 1.6em;
		background: #fff;
		border: solid 1px #D3D3D3;
	}
	.com_form input[type=radio] + label::before {
		border-radius: 50%;
	}
	.com_form input[type=checkbox] + label::before {
		border-radius: 5px!important;
	}
	.com_form input[type=radio]:checked + label::after,
	.com_form input[type=checkbox]:checked + label::after {/*チェックアイコン*/
		content: "";
		position: absolute;
		box-sizing: border-box;
		display: block;
	}
	.com_form input[type=radio]:checked + label::after {
		left: .45em;
		top: .55em;
		margin: auto;
		width: .7em;
		height: .7em;
		background: #e29b4a;
		border-radius: 50%;
	}
	.com_form input[type=checkbox]:checked + label::after {
		top: 0.2em;
		left: 0.3em;
		width: 1.3em;
		height: 0.8em;
		border-left: 4px solid #e29b4a;
		border-bottom: 4px solid #e29b4a;
		transform: rotate(-45deg);
	}
}

@media only screen and (max-width: 767px) {
	.com_form input[type=radio] + label,
	.com_form input[type=checkbox] + label {
		padding-left: 2.0em;
	}
	.com_form .privacy_check_txt input[type=checkbox]:checked + label::after {
		top: 1.2em;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* セレクトボックス */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form select {
	color: #422E22;
	/* デフォルトのスタイルを解除 */
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	/* スタイル */
	display: inline-block;
	cursor: pointer;
	width: 100%;
	padding: .5em .8em;
	border-radius: 0;
	background-color: #fff;
	border: solid 1px #919191;
	background: url("../images/select@2x.png") no-repeat right center;
	background-size: 4.0em auto;
}
/* フォーカス時 */
.com_form select:focus {
	outline: 0;
}
/* IEでデフォルトの矢印を消す */
.com_form select::-ms-expand {
	display: none;
}

@media only screen and (max-width: 767px) {
	.com_form select {
		background-size: 3.0em auto;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 携帯電話のメールアドレスをご利用の場合のご注意 */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .open_trigger {
	font-size: 106%;
	font-weight: 500;
	color:#e29b4a;
	text-decoration: underline;
	letter-spacing: .13em;
	line-height: 1.6em;
	cursor: pointer;
	display: inline-block;
}
.com_form .open_box {
	display: none;
	margin-top: 20px;
}
.com_form .mobile_attention {
	margin-top: 20px;
}
.com_form .mobile_attention ul {
	margin-top: 1.0em;
}
.com_form .mobile_attention li {
	margin-top: 5px;
	padding-left: 15px;
	float: left;
	margin-right: 20px;
	position: relative;
	line-height: 1.2em;
}
.com_form .mobile_attention li::before {
	position: absolute;
	left: 0;
	top: 55%;
    transform: translateY(-50%) rotate(45deg);
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 1px solid #e29b4a;
	border-right: 1px solid #e29b4a;
}
.com_form .mobile_attention a {
	text-decoration: underline;
}
.com_form .mobile_attention a:hover {
	text-decoration: none;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
	.com_form .open_trigger {
		font-size: 2.0vw;
		letter-spacing: .05em;
	}
	.com_form .mobile_attention {
		margin-top: 6%;
	}
}

@media only screen and (max-width: 767px) {
	.com_form .open_trigger {
		font-size: 90%;
		letter-spacing: .1em;
	}
	.com_form .mobile_attention {
		margin-top: 6%;
	}
	.com_form .mobile_attention ul {
		margin-top: 1.0em;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* ボタン */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .btn_list{
	display: flex;
	justify-content: center;
	gap:2%;
	margin-top: 40px;
}
.com_form .btn_list .btn_large{
	width: 314px;
}
.com_form .btn_list .btn_small{
	width: 206px;
}
.com_form input[type="submit"],
.com_form input[type="button"],
.com_form input[type="reset"] {
	color: #fff;
	font-size: 125%;
	letter-spacing: .13em;
	line-height: 1.4em;
	-webkit-appearance: none;
	width: 100%;
	height: 4em;
	border: none;
	border-radius: 0;
	cursor: pointer;
	background-color: #5c4138;
	opacity: 1.0;
	transition: all 1.0s;
}
.com_form input[type="submit"]:hover,
.com_form input[type="button"]:hover,
.com_form input[type="reset"]:hover {
	transition: all 0.6s;
	opacity: 0.8;
}
.com_form .no_arrow input[type="submit"],
.com_form .no_arrow input[type="button"],
.com_form .no_arrow input[type="reset"] {
	background-image: none;
}
/* 送信ボタン - 押せるとき */
.com_form input[type="submit"] {
	background-color: #e29b4a;
	cursor:pointer;
}
/* 送信ボタン - 押せないとき */
.com_form input[type="submit"][disabled] {
	background-color: rgba(226,155,74,.3);
	cursor: default;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
	.com_form input[type="submit"],
	.com_form input[type="button"],
	.com_form input[type="reset"] {
		font-size: 110%;
		letter-spacing: .1em;
	}
}

@media only screen and (max-width: 767px) {
	.com_form .btn_list{
		margin-top: 6%;
	}
	.com_form input[type="submit"],
	.com_form input[type="button"],
	.com_form input[type="reset"] {
		font-size: 100%;
		letter-spacing: .1em;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 個人情報の取り扱いについて */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .privacy_txt{
	font-size: 90%;
    line-height: 1.7;
}
.com_form .privacy_detail{
	margin-top: 2em;
    display: flex;
    justify-content: space-between;
	font-size: 90%;
    line-height: 1.7;
}
.com_form .privacy_detail dl{
	width: 47%;
}
.com_form .privacy_detail dl:last-child{
	padding-left: 3%;
    border-left: solid 1px #D9D9D9;
}
.com_form .privacy_detail dt{
	font-weight: 500;
}
.com_form .privacy_detail dd{
	margin-top: .8em;
}
.com_form .privacy_detail li{
	display: flex;
}
@media only screen and (max-width: 767px) {
	.com_form .privacy_detail{
		flex-direction: column;
		gap: 2em;
	}
	.com_form .privacy_detail dl{
		width: 100%;
	}
	.com_form .privacy_detail dl:last-child{
		padding-left: 0;
		border-left: none;
	}
}


/*以下、訪問歯科ページ*/
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 住所 */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .residence .post_code1,
.com_form .residence .post_code2{
	max-width: 178px;
}
.com_form .residence .p-region{
	margin-top: 20px;
}
@media only screen and (max-width: 767px) {
	.com_form .residence .post_code1,
	.com_form .residence .post_code2{
		width: 40%;
	}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 年齢 */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .age input[type="text"]{
	max-width: 150px;
	margin-right: 1em;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 当院を知ったきっかけ */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .kikkake .kikkake_list{
	display: flex;
	flex-wrap: wrap;
	gap:0.5em 2%;
	max-width: 670px;
}
.com_form .kikkake .kikkake_list_item{
	width: calc((100% / 3) - 2%);
}
.com_form .kikkake .kikkake_list_item:last-of-type{
	display: flex;
	align-items: center;
	gap: 2%;
	width: 100%;
}
.com_form .kikkake .kikkake_list_item:last-of-type label{
	width: 11%;
}
@media only screen and (max-width: 1200px) {
	.com_form .kikkake .kikkake_list_item{
		width: calc((100% / 2) - 2%);
	}
	.com_form .kikkake .kikkake_list_item:last-of-type{
		flex-direction: column;
		align-items: flex-start;
	}
	.com_form .kikkake .kikkake_list_item:last-of-type label{
		width: 100%;
	}
	.com_form .kikkake .kikkake_list_item:last-of-type input{
		margin-top: 2%;
	}
}
@media only screen and (max-width: 767px) {
	.com_form .kikkake .kikkake_list{
		flex-direction: column;
	}
	.com_form .kikkake .kikkake_list_item{
		width: 100%;
	}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* テキストエリア */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .konnan textarea,
.com_form .syouzyou textarea{
	height: 135px;
}
.com_form .houmon textarea{
	height: 270px;
}
@media only screen and (max-width: 767px) {
	.com_form .houmon textarea{
		height: 180px;
	}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 同意のチェックボタン */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.com_form .privacy_check_txt{
	text-align: center;
	margin-top: 60px;
}
.com_form .privacy_check_txt label{
	font-size: 125%;
	font-weight: 500;
	cursor:pointer;
}
@media only screen and (min-width: 768px) and (max-width: 959px){
	.com_form .privacy_check_txt label{
		font-size: 110%;
	}
}
@media only screen and (max-width: 767px) {
	.com_form .privacy_check_txt{
		margin-top: 8%;
	}
	.com_form .privacy_check_txt label{
		font-size: 100%;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 確認ページ */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.confirm .confirm_ttl{
	font-size: 240%;
	font-family: ryo-text-plusn, serif;
    font-weight: normal;
	line-height: 1.6;
	text-align: center;
}
.confirm .confirm_txt{
	text-align: center;
	margin-top: 20px;
	margin-bottom: 60px;
}
.confirm  .form_area .form_table th{
	font-weight: 600;
	width: 33%;
}
@media only screen and (max-width: 767px) {
	.confirm .confirm_ttl{
		font-size: 160%;
	}
	.confirm .confirm_txt{
		margin-top: 4%;
		margin-bottom:8%;
	}
	.confirm  .form_area .form_table th{
		width: 100%;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* 完了ページ */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.thanks .thanks_area{
	text-align: center;
	margin-top: 120px;
	margin-bottom: 120px;
}
.thanks .thanks_ttl{
	font-size: 240%;
	font-family: ryo-text-plusn, serif;
    font-weight: normal;
	line-height: 1.6;
}
.thanks .thanks_txt{
	margin-top: 60px;
}
@media only screen and (max-width: 767px) {
	.thanks .thanks_area{
		margin-top: 18%;
		margin-bottom: 18%;
	}
	.thanks .thanks_ttl{
		font-size: 160%;
	}
	.thanks .thanks_txt{
		margin-top: 8%;
	}
}