input[type="file"] {
	color: #221F20 !important;  /* 通常の文字色（黒系など）にする */
  }


/* popup */
/* モーダル全体（背景） */
#confirmModal {
	display: none;
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background-color: rgba(0,0,0,0.6);
	z-index: 1000;
	justify-content: center;
	align-items: center;
  }
  
  /* モーダル内容ボックス */
  #confirmModal > div {
	background: #fff;
	padding: 30px;
	max-width: 600px;
	width: 90%;
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.2);
	font-size: 16px;
	line-height: 1.6;

  /* スクロール対応追加 */
  max-height: 90vh;        /* 画面の90%までの高さ */
  overflow-y: auto;        /* 高さを超えたらスクロール */
  }
  
  /* モーダル内タイトル */
  #confirmModal h2 {
	margin-top: 0;
	font-size: 20px;
	border-bottom: 2px solid #e0e0e0;
	padding-bottom: 10px;
	margin-bottom: 20px;
  }
  
  /* 内容表示部 */
  #confirmContent p,
  #confirmContent ul {
	margin-bottom: 15px;
  }
  #confirmContent ul {
	padding-left: 20px;
  }
  
  /* モーダル内ボタン */
  #confirmModal button {
	margin-left: 10px;
	padding: 10px 16px;
	font-size: 15px;
	border: none;
	border-radius: 5px;
	cursor: pointer;
  }
  
  /* 色分け（送信／戻る） */
  #confirmModal button:first-of-type {
	background-color: #2E8B57; /* 緑 */
	color: #fff;
  }
  #confirmModal button:last-of-type {
	background-color: #ccc;
  }
  
/* popup */




body{
	margin: 0;
	padding: 0;
	/* font-family: "yu-gothic-pr6n", sans-serif;
    font-weight: 400;
    font-style: normal; */
	font-weight: 600;
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
img{
	vertical-align: top;
	width: 100%;
}
a{
	color: #221F20;
	text-decoration: none;
}
input::placeholder{
	color:#ccc;
  }
@media (max-width: 768px) {
	#sp{
		display: block;
	}
	#dt{
		display: none;
	}
}
@media (min-width: 769px) {
	#sp{
		display: none;
	}
	#dt{
		display: block;
	}
}



@media (max-width: 768px) {
.bbs{
	align-items: center;
	background: #d3a83a;
	color: #fff;
	display: flex;
	height: 30px;
	line-height: 40px;
	overflow:hidden;
	width: 100%;
	white-space:nowrap;
	z-index: 100;
	position: fixed;
	top: 0;
  }
  .bbs ul {
	animation: flowing 20s linear infinite;
	font-size: 14px;
	transform:translateX(100%);
	margin: 0;
	padding: 0;
  }
  .bbs ul li{
	display: inline-block;
	padding-right: 10px;
  }
  @keyframes flowing {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
  }


  .moji_slide{
	width: 100%;
	margin: 0 auto;
	position: relative;
	height: 120px;
  }
  .moji_slide_back{
	position: absolute;
	background-color: #fff;
	left: 2%;
	width: 96%;
	margin: 0 auto;
	height: 120px;
  }
.bbs_02{
	width: 100%;
	top: 0;
	position: absolute;
	align-items: center;
	color: #E7E1D1;
	display: flex;
	height: 120px;
	/* line-height: 40px; */
	font-weight: bold;
	overflow:hidden;
	width: 100%;
	white-space:nowrap;
	z-index: 0;
  }
  .bbs_02 ul {
	animation: flowing_02 50s linear infinite;
	font-size: 100px;
	transform:translateX(100%);
	margin: 0;
	padding: 0;
  }
  .bbs_02 ul li{
	display: inline-block;
	padding-right: 10px;
  }
  @keyframes flowing_02 {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
  }
}
@media (min-width: 769px) {
.bbs{
	align-items: center;
	background: #d3a83a;
	color: #fff;
	display: flex;
	height: 30px;
	line-height: 40px;
	overflow:hidden;
	width: 100%;
	white-space:nowrap;
	z-index: 100;
	position: fixed;
	top: 0;
  }
  .bbs ul {
	animation: flowing 20s linear infinite;
	font-size: 14px;
	transform:translateX(100%);
	margin: 0;
	padding: 0;
  }
  .bbs ul li{
	display: inline-block;
	padding-right: 10px;
  }
  @keyframes flowing {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
  }


  .moji_slide{
	width: 100vw;
	margin: 0 auto;
	position: relative;
	height: 180px;
  }
  .moji_slide_back{
	position: absolute;
	background-color: #fff;
	left: 10%;
	width: 80%;
	margin: 0 auto;
	height: 180px;
  }
.bbs_02{
	width: 100%;
	top: 0;
	position: absolute;
	align-items: center;
	color: #E7E1D1;
	display: flex;
	height: 190px;
	line-height: 40px;
	font-weight: bold;
	overflow:hidden;
	width: 100%;
	white-space:nowrap;
	z-index: 0;
  }
  .bbs_02 ul {
	animation: flowing_02 50s linear infinite;
	font-size: 150px;
	transform:translateX(100%);
	margin: 0;
	padding: 0;
  }
  .bbs_02 ul li{
	display: inline-block;
	padding-right: 10px;
  }
  @keyframes flowing_02 {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
  }
}




  @media (max-width: 768px) {
.sample-table {
	text-align: center;
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #221F20;
  }
  
  .sample-th {
	text-align: center;
	border: 1px solid #221F20;
	width: 50%;
  }
  
  .sample-td {
	text-align: center;
	border: 1px solid #221F20;
	width: 25%;
  }
}


  @media (max-width: 768px) {
	.header_flex{
		width: 96%;
		margin: 10px auto;
		/* padding-top: 30px; */
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.header_flex .header_logo{
		width: 100px;
	}
	.header_flex .header_menu{
		display: flex;
		gap: 10px;
		font-size: 12px;
		letter-spacing: -0.5px;
	}
	.header_flex .header_menu a {
		position: relative;
		text-decoration: none;
		color: inherit;
		padding-bottom: 5px;
	  }
	  
	  .header_flex .header_menu a::after {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 0;
		height: 2px;
		background: currentColor;
		background: #e0c276;
		transition: width 0.4s ease, left 0.4s ease;
	  }
	  .header_flex .header_menu a:hover::after {
		width: 100%;
		left: 0;
	  }
}
  @media (min-width: 769px) {
	.header_flex{
		width: 96%;
		/* padding-top: 30px; */
		margin: 10px auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.header_flex .header_logo{
		width: 150px;
	}
	.header_flex .header_menu{
		display: flex;
		gap: 30px;
		font-size: 18px;
		letter-spacing: 1px;
	}
	.header_flex .header_menu a {
		position: relative;
		text-decoration: none;
		color: inherit;
		padding-bottom: 5px;
	  }
	  
	  .header_flex .header_menu a::after {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 0;
		height: 2px;
		background: currentColor;
		background: #e0c276;
		transition: width 0.4s ease, left 0.4s ease;
	  }
	  .header_flex .header_menu a:hover::after {
		width: 100%;
		left: 0;
	  }
	}
@media (max-width: 768px) {
	.top_section{
		height: 70vw;
	}
	.top_message{
		margin-top: 60px;
		margin-bottom: 30px;
		margin-left: 2%;
		position: relative;
		z-index: 10;
		letter-spacing: 1px;
	}
.top_message #sub_title{
	font-size: 30px;
	margin-bottom: 10px;
}
.top_message #name{
	width: 80vw;
	margin-bottom: 15px;
}
.top_message .top_tag #con{
	font-size: 20px;
	margin-bottom: 5px;
	letter-spacing: 0.5px;
}
}
@media (min-width: 769px) {
	.top_message{
		margin-left: 10%;
		height: 70vh;
		padding-top: 10vh;
		position: relative;
		z-index: 10;
	}
.top_message #sub_title{
	font-size: 3vw;
	margin-bottom: 0.5vw;
	font-weight: 600;
	letter-spacing: 0.2vw;

}
.top_message #name{
	width: 50vw;
	margin-bottom: 2vw;
}
.top_message .top_tag #con{
	font-size: 2.2vw;
	margin-bottom: 0.2vw;
	letter-spacing: 0.2vw;
}
}
@media (max-width: 760px) {
	.scroll-container {
		width: 55vw;
		height: 80vw;
		right: 0;
		top: 100px;
		position: absolute;
		overflow: hidden;
		white-space: nowrap;
		box-sizing: border-box;
		z-index: 1;
	  }
  
	  .scroll-track {
		display: inline-block;
		animation: scrollLeft 30s linear infinite;
	  }
  
	  .scroll-track img {
		width: 55vw;
		height: 80vw;
		object-fit: cover;
		/* margin-right: 10px; */
		vertical-align: middle;
	  }
  
	  @keyframes scrollLeft {
		0% {
		  transform: translateX(0%);
		}
		100% {
		  transform: translateX(-50%);
		}
	  }
}
@media (min-width: 769px) {
	.scroll-container {
		width: 60%;
		height: 90vh;
		right: 0;
		top: 100px;
		position: absolute;
		overflow: hidden;
		white-space: nowrap;
		box-sizing: border-box;
		z-index: 1;
	  }
  
	  .scroll-track {
		display: inline-block;
		animation: scrollLeft 30s linear infinite;
	  }
  
	  .scroll-track img {
		width: 60vw;
		height: 90vh;
		/* height: auto; */
		object-fit: cover;
		margin: 0;
		vertical-align: middle;
	  }
  
	  @keyframes scrollLeft {
		0% {
		  transform: translateX(0%);
		}
		100% {
		  transform: translateX(-50%);
		}
	  }
}

@media (max-width: 768px) {
	.red_box{
		position: absolute;
		background-color: #E7E1D1;
		width: 30vw;
		height: 100vw;
		right: 0;
		z-index: 0;
		top: 50vh;
	}
}
@media (min-width: 769px) {
	.red_box{
		position: absolute;
		background-color: #E7E1D1;
		width: 30vw;
		height: 50vw;
		right: 0;
		z-index: 0;
		top: 60vh;
	}
}

@media (max-width: 768px) {
	.section_second{
		padding: 30px 0;
		background-color: #fafafa;
	}
	.today{
		width: 94%;
		text-align: end;
		margin: 0 auto;
		font-size: 14px;
		padding-bottom: 5px;
	}
	.ex_box{
		width: 96%;
		padding: 30px 0 0 0;
		margin: 0 auto;
		z-index: 1;
		position: relative;
		background-color: #fff;
	}
	.ex_box_top{
		border: #221F20 1px solid;
		width: 90vw;
		align-items: stretch;
		margin: 0 auto;
		text-align: center;
		padding: 10px 0;
		font-size: 18px;
	}
	.ex_box_top_flex{
		display: flex;
		/* width: 100%; */
		align-items: center;
		gap: 10px;
		justify-content: center;
		margin-top: 2px;
		/* align-items: center; */
	}
	.ex_box_top #bun{
		font-size: 15px;
		margin-bottom: 2px;
		color: #b6a391;
	}
	.ex_box_top #img{
		width: 60px;
	}
	.ex_box_flex{
		display: flex;
		width: 90vw;
		align-items: stretch;
		margin: 0 auto;
	}
	.ex_box_flex .ex_l #title{
		font-size: 20px;
	}
	.ex_box_flex .ex_r_top{
		border: #221F20 1px solid;
		width: 50%;
		border-left: none;
		height: 100%;
		text-align: center;
		padding: 10px 0;
		letter-spacing: 0.5px;
	}
	.ex_box_flex .ex_r_top #bun{
		font-size: 15px;
		margin-bottom: 2px;
	}
	.ex_box_flex .ex_r_top #img{
		width: 80px;
		margin: 0 auto;
	}
	.ex_box_flex .ex_l_top{
		display: flex;
		padding: 0 5%;
		border: #221F20 1px solid;
		width: 40%;
		gap: 5%;
		align-items: center;
	}
	.ex_box_flex .ex_l_top #title{
		text-align: center;
		width: 100%;
	}
	
	.ex_box_flex .ex_l{
		display: flex;
		padding: 0 5%;
		border: #221F20 1px solid;
		border-top: none;
		width: 40%;
		gap: 5%;
		align-items: center;
	}
	.ex_box_flex .ex_l #img{
		width: 35%;
		border: #ccc 0.5px solid;
	}
	.ex_box_flex .ex_l #name{
		width: 65%;
		font-size: 12px;
	}
	.ex_box_flex .ex_r{
		border: #221F20 1px solid;
		border-top: none;
		width: 50%;
		border-left: none;
		height: 100%;
		text-align: center;
		padding: 20px 0;
		font-size: 20px;
		letter-spacing: 0.5px;
	}
}

@media (min-width: 769px) {
	.section_second{
		margin-top: 200px;
		padding: 30px 0;
		background-color: #fafafa;
	}
	.today{
		width: 100%;
		text-align: end;
		margin: 0 auto;
		font-size: 14px;
		padding-bottom: 5px;
	}
	.ex_box{
		width: 60%;
		padding: 100px 10% 0 10%;
		margin: 0 auto;
		background-color: #fff;
		z-index: 1;
		position: relative;
	}
		.ex_box_top{
		border: #221F20 1px solid;
		width: 90vw;
		align-items: stretch;
		margin: 0 auto;
		text-align: center;
		padding: 10px 0;
		font-size: 18px;
	}
	.ex_box_top_flex{
		display: flex;
		align-items: center;
		/* width: 100%; */
		align-items: center;
		gap: 10px;
		justify-content: center;
		margin-top: 3px;
	}
	.ex_box_top #img{
		width: 80px;
	}
	.ex_flex_dt{
		display: flex;
	}
	.ex_box_top{
		width: 100%;
	}
	.ex_box_top #bun{
		font-size: 15px;
		margin-bottom: 2px;
		color: #b6a391;
	}
	.ex_box_top #img{
		width: 60px;
		padding: 0;
		margin: 0;
	}
	.ex_box_flex{
		display: flex;
		width: 100%;
		align-items: stretch;
		margin: 0 auto;
	}
	.ex_box_flex .ex_l #title{
		font-size: 20px;
		margin: 0 auto;
	}
	.ex_box_flex .ex_r_top{
		border: #221F20 1px solid;
		width: 50%;
		border-left: none;
		text-align: center;
		padding: 10px 0;
		letter-spacing: 0.5px;
		display: flex;
		gap: 10px;
		align-items: center;
		justify-content: center;
	}
	.ex_box_flex .ex_r_top #bun{
		font-size: 15px;
		margin-bottom: 2px;
	}
	.ex_box_flex .ex_r_top #img{
		width: 80px;
		padding: 0;
		margin: 0;
	}
	.ex_box_flex .ex_l_top{
		display: flex;
		padding: 0 5%;
		border: #221F20 1px solid;
		width: 40%;
		text-align: center;
		gap: 5%;
		align-items: center;
	}
	.ex_box_flex .ex_l_top #title{
		text-align: center;
		width: 100%;
	}

	
	.ex_box_flex .ex_l{
		display: flex;
		padding: 0 5%;
		border: #221F20 1px solid;
		border-right: none;
		border-top: none;
		width: 40%;
		gap: 5%;
		align-items: center;
	}
	.ex_box_flex .ex_l #img{
		width: 35%;
		border: #ccc 0.5px solid;
	}
	.ex_box_flex .ex_l #name{
		width: 65%;
		font-size: 12px;
	}
	.ex_box_flex .ex_r{
		border: #221F20 1px solid;
		border-top: none;
		width: 50%;
		text-align: center;
		padding: 15px 0;
		font-size: 25px;
		letter-spacing: 0.5px;
	}
}



@media (max-width: 768px) {
	.map_section{
		width: 96%;
		padding: 50px 0;
		margin: 0px auto;
		background-color: #fff;
	}
	.google_map{
		width: 90vw;
		height: 300px;
		overflow: hidden;
		margin: 0 auto;
	}
	.google_map iframe{
		border: none;
		width: 100%;
		height: calc(100% + 76px);
		margin-top: -76px;
		/* filter:grayscale(50%);-webkit-filter:grayscale(50%) */
	}
	.map_list_btn{
		width: fit-content;
		margin: 30px auto;
	}
	.map_list_btn #btn{
		width: fit-content;
		border: #d75455 2px solid;
		border-radius: 100px;
		padding: 10px 30px;
		font-size: 15px;
		color: #fff;
		background-color: #d75455;
		letter-spacing: 1px;
		transition: 0.7s;
	}
	.map_list_btn #btn:hover{
		opacity: 0.7;
		transition: 0.7s;
	}
	.address_list{
		width: 94%;
		margin: 0 auto;
		margin-top: 30px;
	}
	.address_list_box{
		margin-top: 20px;
		width: 100%;
		display: flex;
		gap: 10px;
		align-items: center;
	}
	.address_list_box #img{
		width: 20px;
	}
	.address_list_box #name{
		font-size: 13px;
	}
	
	.info_labels{
	      flex-wrap: wrap;      /* レスポンシブで折り返す場合 */
          gap: 2px 5px;        /* 上下・左右の間隔 */
          margin-top: 3px;
	}
	.info_label{
	    display: inline-block;
	    width: fit-content;
		border: #d3a83a 2px solid;
		border-radius: 100px;
		padding: 1.5px 5px;
		font-size: 13px;
		color: #fff;
		background-color: #d3a83a;
		letter-spacing: 1px;
		transition: 0.7s;
	}
}
@media (min-width: 769px) {
	.map_section{
		width: 80%;
		padding: 50px 0;
		margin: 0px auto;
		background-color: #fff;
	}
	.google_map{
		width: 70vw;
		height: 350px;
		overflow: hidden;
		margin: 0 auto;
	}
	.google_map iframe{
		border: none;
		width: 100%;
		height: calc(100% + 56px);
		margin-top: -56px;
		filter:grayscale(50%);-webkit-filter:grayscale(50%)
	}
	.info_labels{
	      flex-wrap: wrap;      /* レスポンシブで折り返す場合 */
          gap: 2px 5px;        /* 上下・左右の間隔 */
          margin-top: 3px;
	}
	.info_label{
	    display: inline-block;
	    width: fit-content;
		border: #d3a83a 2px solid;
		border-radius: 100px;
		padding: 2px 10px;
		font-size: 15px;
		color: #fff;
		background-color: #d3a83a;
		letter-spacing: 1px;
		transition: 0.7s;
	}
	.map_list_btn{
		width: fit-content;
		margin: 50px auto;
		margin-bottom: 0;
	}
	.map_list_btn #btn{
		width: fit-content;
		border: #d75455 2px solid;
		border-radius: 100px;
		padding: 15px 50px;
		font-size: 16px;
		color: #fff;
		background-color: #d75455;
		letter-spacing: 1px;
		transition: 0.7s;
	}
	.map_list_btn #btn:hover{
		opacity: 0.7;
		transition: 0.7s;
	}
	.address_list{
		width: 80%;
		margin: 0 auto;
		margin-top: 50px;
		display: flex;
		flex-wrap: wrap;
	}
	.address_list_box{
		width: 50%;
		display: flex;
		gap: 10px;
		align-items: center;
	}
	.address_list_box #img{
		width: 20px;
	}
	.address_list_box #name{
		font-size: 18px;
	}
	.info_labels {
        display: flex;
        flex-wrap: wrap;      /* レスポンシブで折り返す場合 */
        gap: 8px 10px;        /* 上下・左右の間隔 */
        margin-top: 8px;
    }
    .info_label {
        display: inline-block;
	    width: fit-content;
		border: #d3a83a 2px solid;
		border-radius: 100px;
		padding: 2px 10px;
		font-size: 15px;
		color: #fff;
		background-color: #d3a83a;
		letter-spacing: 1px;
		transition: 0.7s;
    }
}

@media (max-width: 768px) {
	.form_sen{
		margin: 50px auto;
		height: 2px;
		background-color: #221F20;
		width: 90%;
	}
	.system{
		position: absolute;
		width: 20vw;
		right: 2%;
		top: 20px;
	}
.form_section{
	padding-top: 70px;
	padding-bottom: 50px;
	width: 96%;
	margin: 0 auto;
	background-color: #fff;
	z-index: 0;
	position: relative;
}
.form_section #logo{
	width: 250px;
	margin-bottom: 40px;
	margin-left: 3%;
}
.form_main_box{
	width: 90%;
	margin: 0 auto;
}
.form_title_flex{
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 5px;
}
.form_title_flex #num{
	background-color: #d75455;
	padding: 5px 12px;
	font-size: 15px;
	border-radius: 100px;
	color: #fff;
}
.form_title_flex #title{
	font-size: 25px;
}
.form_bun_box_01{
	margin-bottom: 50px;
}
.form_bun_box_01 #bun_01{
	color: #d75455;
	font-size: 15px;
	margin-bottom: 30px;
}
.form_bun_box_01 #bun_02{
	font-size: 15px;
	margin-bottom: 8px;
	text-decoration: underline;
	text-underline-offset: 4px;

}
.form_bun_box_01 #bun_03{
	font-size: 15px;
	margin-bottom: 20px;
	margin-left: 35px;
}
.form_bun_box{
	margin-bottom: 50px;
}
.form_bun_box #bun_01{
	color: #d75455;
	font-size: 15px;
	margin-bottom: 30px;
}
.form_bun_box #bun_02{
	font-size: 15px;
	margin-bottom: 8px;
	text-decoration: underline;
	text-underline-offset: 4px;


}
.form_bun_box #bun_03{
	font-size: 15px;
	margin-bottom: 20px;
	margin-left: 35px;
}

.form_title_02{
	color: #d75455;
	margin-top: 50px;
	font-size: 20px;
	font-weight: 600;
	margin-left: 5%;
	margin-bottom: 20px;
}
.form_flex_dt {
	display: block;
  }
  
.form-row{
	width: 100%;
	margin: 0 auto;
	margin-bottom: 20px;
}
.form-label{
	margin-bottom: 5px;
}
.form-row #name{
	font-size: 15px;
}
.form-row #tag{
	font-size: 12px;
	color: #d3a83a;
	vertical-align: top;
}
.form-row #input_01{
	width: 96%;
	padding: 15px 2%;
	font-size: 16px;
	color: #ccc;
}
.form-row #currency{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	padding: 15px 2%;
	font-size: 16px;
	/* background-color: #E7E1D1; */
	background-color: #fff;
	border-radius: 5px;
	color: #6f6f6f;
	border: #6f6f6f 1px solid;

}
.form-row #inputAmount{
	width: 95%;
	padding: 15px 2%;
	font-size: 16px;
}
.form-row #resultAmount{
	width: 95%;
	padding: 15px 2%;
	font-size: 16px;
}
.form_check{
	width: 90%;
	padding: 15px 0;
	margin: 0 5%;
	margin-bottom: 30px;
}
.form_check #name{
	font-size: 13px;
}
.form_check #tag{
	font-size: 10px;
	color: #d3a83a;
	vertical-align: top;
}
form input[type="checkbox"] {
	display: inline-block;
	margin-right: 2px;
	transform: scale(1.2);
	accent-color: pink;
  }
.form_btn{
	width: 90%;
	padding: 20px 2%;
	margin: 0 5%;
	background-color: #E7E1D1;
	color: #fff;
	transition: 0.5s;
	font-size: 16px;
	border: 0;
	border-radius: 3px;
}
.form_btn:hover{
	opacity: 0.7;
	transition: 0.5s;
}
.total{
	width: 90%;
	margin: 0 auto;
	font-size: 18px;
	color: #d75455;
	margin-bottom: 50px;
}
.form_subtitle{
	width: 90%;
	margin: 0 auto;
	font-size: 25px;
	margin-bottom: 30px;
}


/* ファイルボタン */
.file-upload{
	padding-bottom: 50px;
}
.file-upload #name{
	padding-bottom: 20px;
}
  .file-upload input[type="file"] {
    display: none;
  }

  .file-upload-label {
    background-color: #d75455;
    color: #fff;
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: bold;
    transition: background-color 0.3s ease;
  }

  .file-upload-label:hover {
    background-color: #0056b3;
  }
/* ファイルボタン */
}
@media (min-width: 769px) {
	.form_sen{
		margin: 50px auto;
		height: 1px;
		background-color: #221F20;
		width: 100%;
	}
	.system{
		position: absolute;
		width: 250px;
		right: 2%;
		top: 100px;
	}
.form_section{
	padding-top: 30px;
	width: 60%;
	padding: 50px 10%;
	margin: 0 auto;
	background-color: #fff;
	z-index: 0;
	position: relative;
}
.form_section #logo{
	width: 250px;
	margin-bottom: 50px;
}
.form_title_flex{
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 5px;
}
.form_title_flex #num{
	background-color: #d75455;
	padding: 5px 14px;
	font-size: 20px;
	border-radius: 100px;
	color: #fff;
}
.form_title_flex #title{
	font-size: 25px;
}
.form_bun_box_01{
	margin-left: 55px;
	margin-bottom: 50px;
	width: 70%;
}
.form_bun_box_01 #bun_01{
	color: #d75455;
	font-size: 20px;
	margin-bottom: 10px;
}
.form_bun_box_01 #bun_02{
	font-size: 20px;
	margin-bottom: 5px;
	text-decoration: underline;
	text-underline-offset: 4px;

}
.form_bun_box_01 #bun_03{
	font-size: 18px;
	margin-bottom: 15px;
	margin-left: 50px;
}
.form_bun_box{
	margin-left: 55px;
	margin-bottom: 50px;
}
.form_bun_box #bun_01{
	color: #d75455;
	font-size: 20px;
	margin-bottom: 10px;
}
.form_bun_box #bun_02{
	font-size: 20px;
	margin-bottom: 5px;
	text-decoration: underline;
	text-underline-offset: 4px;

}
.form_bun_box #bun_03{
	font-size: 18px;
	margin-bottom: 15px;
	margin-left: 50px;
}

.form_title_02{
	color: #d75455;
	margin-top: 50px;
	margin-left: 5%;
	margin-bottom: 20px;
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 20px;
}
.form_flex_dt{
	display: flex;
	gap: 50px;
	width: 90%;
	margin-left: 5%;
}
.form-row{
	width: 100%;
	margin: 0 auto;
	margin-bottom: 20px;
}
.form-label{
	margin-bottom: 5px;
}
.form-row #name{
	font-size: 15px;
	font-weight: 600;
}
.form-row #tag{
	font-size: 12px;
	color: #d3a83a;
	vertical-align: top;
}
.form-row #input_01{
	width: 95%;
	padding: 18px 2%;
	color: #ccc;
}
.form-row #currency{
	width: 100%;
	padding: 18px 0%;
}
.form-row #inputAmount{
	width: 95%;
	padding: 18px 2%;
}
.form-row #resultAmount{
	width: 95%;
	padding: 18px 2%;
}
.form_check{
	width: 100%;
	padding: 10px 0;
	margin: 0 0%;
	margin-bottom: 30px;
	font-size: 13px;
}
.form_check #name{
	font-size: 17px;
}
.form_check #tag{
	font-size: 12px;
	color: #d3a83a;
	vertical-align: top;
}
form input[type="checkbox"] {
	display: inline-block;
	margin-right: 8px;
	transform: scale(1.5);
	accent-color: pink;
  }
.form_btn{
	width: 50%;
	padding: 20px 0;
	margin: 0 25%;
	background-color: #d75455;
	color: #fff;
	transition: 0.5s;
	font-size: 16px;
	font-weight: bold;
	border: 0;
	border-radius: 3px;
}
.form_btn:hover{
	opacity: 0.7;
	transition: 0.5s;
}
}

/* 共通 */
.contact_form_input {
	width: 95%;
	padding: 15px 2%;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 4px;
  }
  
  .required-tag {
	font-size: 12px;
	color: #d3a83a;
	vertical-align: top;
  }
  
  .form-label label {
	font-size: 15px;
	font-weight: 600;
  }
  
  .form-row {
	width: 90%;
	margin: 0 auto 20px;
  }
  
  .form_btn {
	width: 90%;
	padding: 20px 2%;
	margin: 0 5%;
	background-color: #d75455;
	color: #fff;
	font-size: 16px;
	border: 0;
	border-radius: 3px;
	cursor: pointer;
	transition: opacity 0.5s;
	font-weight: bold;
  }
  
  .form_btn:hover {
	opacity: 0.7;
  }
  
  /* メディアクエリ（レスポンシブ対応） */
  @media (min-width: 769px) {
	.form_section {
	  width: 60%;
	  padding: 50px 10%;
	  margin: 0 auto;
	  background-color: #fff;
	}
  
	.form_btn {
	  width: 50%;
	  margin: 0 25%;
	}
	.total{
		width: 90%;
		margin: 0 auto;
		font-size: 18px;
		color: #d75455;
		margin-bottom: 50px;
	}
	.form_subtitle{
		width: 90%;
		margin: 0 auto;
		font-size: 25px;
		margin-bottom: 30px;
	}
	
	
	/* ファイルボタン */
	.file-upload{
		padding-bottom: 50px;
	}
	.file-upload #name{
		padding-bottom: 20px;
	}
	  .file-upload input[type="file"] {
		display: none;
	  }
	
	  .file-upload-label {
		background-color: #d75455;
		color: #fff;
		padding: 10px 16px;
		border-radius: 6px;
		cursor: pointer;
		font-size: 14px;
		font-weight: bold;
		transition: background-color 0.3s ease;
	  }
	
	  .file-upload-label:hover {
		background-color: #0056b3;
	  }
	/* ファイルボタン */
  }
  
  
  /* 小さな画面でのレスポンシブ対応 */
  @media (max-width: 768px) {
	#account_type{
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;

		padding: 15px 2%;
		font-size: 15px;
		border: 1px solid #ccc;
		border-radius: 4px;
		/* min-width: 180px; */
		width: 100.5%;
		background-color: #fff;
		color: #ccc;
	}
	#currency-fields .form-row {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px;
		margin-bottom: 15px;
		/* flex-direction: column; */
		align-items: flex-start;
		align-items: center;
	}
  
		  /* セレクトボックスのスタイル */
	#currency-fields select{
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		padding: 15px 2%;
		font-size: 16px;
		border: 1px solid #ccc;
		border-radius: 4px;
		/* min-width: 180px; */
		width: calc(100.5% - 46.055px - 4vw);
		background-color: #fff;
		color: #221F20;
	}

	#currency-fields input[type="number"] {
		padding: 15px 2%;
		font-size: 16px;
		border: 1px solid #ccc;
		border-radius: 4px;
		/* width: 150px; */
		width: 40%;
	}
  
	#currency-fields span[id^="unit_"] {
		font-weight: bold;
		min-width: 50px;
		text-align: left;
	  }
  
	#currency-fields span[id^="converted_"] {
	font-weight: bold;
	color: #E7E1D1;
	min-width: 130px;
	margin-left: 0;
	  margin-top: 5px;
	}
  }

    /* 通貨選択 */
  /* 通貨選択ブロックの基本スタイル */
  @media (min-width: 769px) {
	#account_type{
		width: 53.7vw;
	}
	#currency-fields .form-row {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px;
		margin-bottom: 15px;
	  }
	  
	  /* セレクトボックスのスタイル */
	  #currency-fields select {
		
		padding: 10px;
		font-size: 15px;
		border: 1px solid #ccc;
		border-radius: 4px;
		min-width: 180px;
	  }
	  
	  /* 金額入力欄のスタイル */
	  #currency-fields input[type="number"] {
		padding: 10px;
		font-size: 15px;
		border: 1px solid #ccc;
		border-radius: 4px;
	  }
	  
	  /* 単位（ドル、元など）の表示 */
	  #currency-fields span[id^="unit_"] {
		font-weight: bold;
		min-width: 50px;
		text-align: left;
	  }
	  
	  /* 換算結果（→〇〇円）の表示 */
	  #currency-fields span[id^="converted_"] {
		font-weight: bold;
		color: #E7E1D1;
		margin-left: 10px;
		min-width: 130px;
	  }
	}
  

@media (max-width: 768px) {
	.qa_section{
		width: 100%;
		margin: 50px auto;
	}
	.qa_section .qa_main_box{
		width: 90%;
		margin: 0 auto;
		padding: 40px 0;
		border-radius: 5px;
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
	}
	.qa_title{
		font-size: 25px;
		border-bottom: #d75455 3px solid;
		width: fit-content;
		margin: 0 auto;
		margin-bottom: 30px;
	}
	.qa_box{
		width: 80vw;
		padding: 25px 2vw;
		border-radius: 10px;
		margin: 0 auto;
		margin-top: 10px;
		background-color: #f7f8f8;
	}
	.q_flex{
		display: flex;
		align-items: center;
		gap: 10px;
		margin-bottom: 15px;
	}
	.a_flex{
		display: flex;
		align-items: center;
		gap: 10px;
	}
	.q_flex #num{
		background-color: #d75455;
		border: #d75455 1px solid;
		padding: 4px 8px;
		font-size: 10px;
		border-radius: 100px;
		color: #fff;
	}
	.a_flex #num{
		background-color: #fff;
		border: #d75455 1px solid;
		padding: 4px 8px;
		font-size: 10px;
		border-radius: 100px;
		color: #d75455;
	}
	.q_flex #bun_q{
		font-size: 15px;
	}
	.a_flex #bun_a{
		font-size: 12px;
		letter-spacing: 1px;
	}
}
@media (min-width: 769px) {
	.qa_section{
		width: 100%;
		margin: 100px auto;
	}
	.qa_section .qa_main_box{
		width: 80%;
		margin: 0 auto;
		padding: 80px 0;
		border-radius: 20px;
		box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.45);
	}
	.qa_title{
		font-size: 30px;
		border-bottom: #d75455 5px solid;
		width: fit-content;
		margin: 0 auto;
		margin-bottom: 30px;
	}
	.qa_box{
		width: 56vw;
		padding: 25px 2vw;
		border-radius: 10px;
		margin: 0 auto;
		margin-top: 20px;
		background-color: #f7f8f8;
	}
	.q_flex{
		display: flex;
		align-items: center;
		gap: 10px;
		margin-bottom: 15px;
	}
	.a_flex{
		display: flex;
		align-items: center;
		gap: 10px;
	}
	.q_flex #num{
		background-color: #d75455;
		border: #d75455 2px solid;
		padding: 4px 10px;
		font-size: 15px;
		border-radius: 100px;
		color: #fff;
	}
	.a_flex #num{
		background-color: #fff;
		border: #d75455 2px solid;
		padding: 4px 10px;
		font-size: 15px;
		border-radius: 100px;
		color: #d75455;
	}
	.q_flex #bun_q{
		font-size: 20px;
	}
	.a_flex #bun_a{
		font-size: 15px;
		letter-spacing: 1px;
	}
}

@media (max-width: 760px) {
.banner{
	width: 90%;
	margin: 0 auto;
	margin-bottom: 50px;
}
}
@media (min-width: 769px) {
.banner{
	width: 80%;
	max-width: 700px;
	margin: 0 auto;
	margin-bottom: 50px;
}
}
@media (max-width: 768px) {
footer{
	background-color: #E7E1D1;
	width: 90%;
	padding: 50px 5% 10px 5%;
}
footer #logo{
	width: 200px;
	margin-bottom: 20px;
}
.footer_flex{
	color: #221F20;
	font-size: 13px;
	margin-bottom: 50px;
	line-height: 30px;
}
footer .copy{
	font-size: 13px;
	margin: 0 auto;
	width: fit-content;
	color: #221F20;
	letter-spacing: 1px;
}
}
@media (min-width: 769px) {
footer{
	background-color: #E7E1D1;
	width: 80%;
	padding: 50px 10% 10px 10%;
}
footer #logo{
	width: 200px;
	margin-bottom: 20px;
}
.footer_flex{
	display: flex;
	justify-content: space-between;
	color: #221F20;
	font-size: 15px;
	margin-bottom: 50px;
	line-height: 30px;
}
footer .copy{
	font-size: 13px;
	margin: 0 auto;
	width: fit-content;
	color: #221F20;
	letter-spacing: 1px;
}
}