@charset "UTF-8";
/*
Theme Name: PICmii
Author: picmii.studio
Version: 2.0
*/

/*wpforms追加css*/

main article .ls-inquiry li .read {
  margin-bottom:0;
	padding-bottom:0;
}

.contact .thanks_img{
	text-align:center;
	margin-bottom:2em;
}

.contact .thanks_img img{
	max-width:320px;
	width:100%;
}

.contact p{
	margin: 2em 0;
}

.contact .red{
	color:red!important;
}

.contact .contactform{
	max-width:800px;
	width:100%;
	margin:auto;
	margin-bottom:-200px;
	text-align:left;
}

.contact .contactform hr {
  border: none;
  border-top: 1px solid #ccc;
}

.wpforms-container.wpf-center-button .wpforms-submit-container {
    text-align: center;
    padding: 30px 0;
}

/* WPForms reCAPTCHA v2 を中央寄せ */
.wpforms-container .wpforms-recaptcha-container {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 1024px) {
	.contact .contactform{
	margin-bottom:-100px;
}
}



/* Modaal 画像を「画面内(95vh)」に収める：強制版 */
body .modaal-wrapper .modaal-content-container,
body .modaal-wrapper .modaal-content {
  max-height: 95vh !important;
  height: auto !important;
}

/* Modaalが .modaal-image を使うケースが多い */
body .modaal-wrapper img,
body .modaal-wrapper img.modaal-image {
  max-height: 95vh !important;           /* まずは95vhで固定 */
  max-width: 95vw !important;
  width: auto !important;
  height: auto !important;
}

/* 上下の余白を確保したい場合（×ボタン分など） */
body .modaal-wrapper img,
body .modaal-wrapper img.modaal-image {
  max-height: calc(95vh - 60px) !important;
}


/* single テーブルcss */

/* テーブルスタイル01 */
.single .wp-block-table.tb-style-01 {
	width: 100%;
	margin: 2em 0;
	overflow-x: auto;
}

.single .wp-block-table.tb-style-01 table {
	display: table;
	width: 100% !important;
	max-width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
}

.single .wp-block-table.tb-style-01 thead {
	display: table-header-group;
}

.single .wp-block-table.tb-style-01 tbody {
	display: table-row-group;
}

.single .wp-block-table.tb-style-01 tr {
	display: table-row;
}

.single .wp-block-table.tb-style-01 th,
.single .wp-block-table.tb-style-01 td {
	display: table-cell;
	width: auto !important;
	min-width: 0;
	padding: 10px 12px;
	border: 1px solid #666;
	background: #fff;
	color: #333;
	text-align: left;
	vertical-align: middle;
	font-weight: normal;
	box-sizing: border-box;
}

.single .wp-block-table.tb-style-01 tr::before,
.single .wp-block-table.tb-style-01 tr::after,
.single .wp-block-table.tb-style-01 td::before,
.single .wp-block-table.tb-style-01 td::after {
	display: none;
	content: none;
}

/* スマホ */
/* スマホ：横スクロールを視覚的にわかりやすく */
@media screen and (max-width: 767px) {

	.single .wp-block-table.tb-style-01 {
		position: relative;
		overflow-x: auto;
		padding-bottom: 8px;
		-webkit-overflow-scrolling: touch;
	}

	/* 右側にグラデーション */
	.single .wp-block-table.tb-style-01::after {
		content: "横にスクロールできます →";
		position: sticky;
		right: 0;
		display: block;
		width: 100%;
		margin-top: 6px;
		padding: 6px 10px;
		background: linear-gradient(to right, transparent, rgba(0,0,0,.08));
		color: #666;
		font-size: 12px;
		text-align: right;
		pointer-events: none;
	}

	.single .wp-block-table.tb-style-01 table {
		min-width: 600px;
	}
}