
/* :::::::::::::::::: mainVisual :::::::::::::::::: */
#mainVisual.top .textBox {
	background-image: url(/images/mv-bg.svg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	padding: 20px 0;
}
#mainVisual.top h1 {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-size: 15px;
	line-height: 1.6;
}
#mainVisual.top h1 span {
	font-size: 18px;
}
#mainVisual.top h2 {
	font-weight: 600;
	line-height: 1.6;
	font-size: 16px;
	padding: 15px 0;
}
#mainVisual.top .imageBox > div {
	position: relative;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}
#mainVisual.top .imageBox > div:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
	margin: auto;
}
#mainVisual.top .imageBox img {
	position: relative;
	z-index: 2;
	padding: 50px 20px 20px;
}

#mainVisual .toptitle1{
	font-size:26px;
	font-family:serif;
	line-height: 1;
	color:#0B5930;
	margin-bottom:10px;
	font-weight:bold;
}
#mainVisual .toptitle2{
	font-size:47px;
	font-family:serif;
	line-height: 1;
	color:#0B5930;
	font-weight:bold;
	margin-bottom: 20px ;
	margin-top: 16px ;
}
#mainVisual.top .deductible{
	font-size: 1rem;
	line-height: 20px;
	margin: 10px 0 0;
	display: inline-block;
}

#mainNav {
	font-feature-settings: "palt";
	position: relative;
	z-index: 2;
}
#mainNav .topBtns ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
#mainNav .topBtns li{
	margin-bottom: 8px;
	max-width: inherit;
}
#mainNav .innerNav ul{
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
#mainNav .innerNav .btnBase {
	width: calc((100% - 5px) / 2);
	min-width: inherit;
	margin: inherit;
}
#mainNav .innerNav .btnBase:nth-child(n+3) {
	margin-top: 5px;
}
.bgContent {
	background-image: url(/images/content-bg.svg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: auto 40%;
}
.btnBase {
	position: relative;
	text-align: center;
	min-width: 300px;
	margin: auto;
}
.btnBase:before {
	top: 50%;
	transform: translateY(-50%);
	right: 4px;
	position: absolute;
	content: "";
	background-image: url(/images/arrow-w.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 12px;
	height: 8px;
	transition: all 0.3s ease;
}
.btnBase a {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	background-color: #0B5930;
	color: #fff;
	line-height: 1.4;
	font-weight: 600;
	display: block;
	padding: 10px 0;
	border: 1px solid #0B5930;
}
.btnBase.type02 a {
	color: #0B5930;
	background-color: #fff;
}
.btnBase.type02:before {
	background-image: url(/images/arrow-g.svg);
}
.btnBase.gray a {
	background-color: #999;
	border: 1px solid #999;
}

.ec_induct{
	margin-bottom:30px;
}
.ec_induct a{
	color:#0000ee;
	text-decoration: underline;
}
/* :::::::::::::::::: productBox :::::::::::::::::: */
#productBox .productLineup > div {
	background-color: #fff;
	padding: 20px;
}
#productBox .productLineup > div + div {
	margin-top: 20px;
}
#productBox .productName {
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6;
	padding-bottom: 5px;
}
#productBox .productName span {
	display: block;
	font-weight: 600;
}
#productBox .productDetail {
	padding: 20px 0;
}
#productBox .productDetail dt {
	font-size: 18px;
	font-weight: 600;
	color: #0B5930;
	padding-bottom: 10px;
}
#productBox .productDetail dd p {
	font-size: 16px;
	padding-bottom: 10px;
}
#productBox .btnBase + .btnBase {
	margin-top: 10px;
}
#productBox .note {
	line-height: 1.4;
	padding: 15px 0;
}
#productBox .productDetail dd .product-txt1 {
	display: block;
	padding-bottom: 10px;
	font-size: 13px;
}
#productBox .productDetail dd .product-txt2 {
	display: block;
	padding-bottom: 5px;
	font-size: 13px;
	font-weight: bold;
}

.bg-white {
	background: #FFFFFF;
}
.bg-red {
	background: #bc0000;
}
.border-red {
	border: 1px solid #bc0000;
}
.txt-white {
	display: inline-block;
	color: #FFFFFF;
	font-weight: bold;
}
.txt-red {
	display: inline-block;
	color: #bc0000;
	font-weight: bold;
}
.txt-green {
	display: inline-block;
	color: #0B5930;
	font-weight: bold;
}

.tableStyle.priceTable dl dt,
.tableStyle.priceTable dl dd {
	display: flex;
	justify-content: center;
	align-items: center;
}


#productBox > div {
	padding: 0;
}
.intro {
	padding: 30px;
}
.intro-inner {
	display: flex;
	justify-content: space-between;
	align-items: start;
	flex-direction: column;
}

.intro .intro-inner .product-wrapper .productName {
	margin-top: 0;
}
#productBox h2.productName{
	font-weight: 500;
	margin-bottom: 0;
}
.embox{
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	background-color: #C59535;
	color: #fff;
	position: relative;
	padding: 10px 20px;
	margin-bottom: 5px;
	display: inline-block;
	width: 100%;
}

.intro .intro-inner .product-wrapper .discount-box {
	display: flex;
	justify-content: start;
	align-items: center;
	margin-top: 20px;
}
.intro .intro-inner .product-wrapper .discount-box .discount {
	display: inline-block;
}
.intro .intro-inner .product-wrapper .discount-box .discount p {
	line-height: 1;
	display: block;
	padding: 5px 10px;
	margin: 0;
}
.intro .intro-inner .product-wrapper .discount-box .discount .discount1 {
	color: #FFFFFF;
        text-align: center;
}
.intro .intro-inner .product-wrapper .discount-box .discount .discount2 {
	color: #bc0000;
}
.intro .intro-inner .product-wrapper .discount-box .price {
	margin-left: 20px;
	font-size: 40px;
	font-weight: bold;
}
.intro .tel-btn {
	max-width: 600px;
	margin-top: 30px;
}
.intro .tel-btn .info {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 10px;
}
.intro .tel-btn .info .info-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
}
.intro .tel-btn .info .info-wrapper svg {
	width: 30px;
}
.intro .tel-btn .info .info-wrapper .text {
	margin-left: 20px;
	text-align: left;
}
.intro .tel-btn .info .info-wrapper .text .small-txt {
	font-size: 10px;
}
.intro .tel-btn .info .tel {
	margin-left: 20px;
	padding: 5px 20px;
}

.intro .deductible{
	margin: 0 0 -22px;
	padding-top: 10px;
}

/*
priceList
---------------------------*/
#priceList {
	text-align: center;
	background-color: #fff;
	margin-bottom: 40px;
}
#priceList > div {
	background-color: rgba(197, 149, 53, 0.1);
	padding: 30px;
	margin-top: 20px;
	border-top: 2px solid #C59535;
}
#priceList .captionName,
#priceList .captionDetail {
	font-weight: 600;
	line-height: 1.6;
}
#priceList .captionName {
	font-size: 1.125rem;
	padding-bottom: 0.5em;
}
#priceList .captionDetail {
	font-size: 0.875rem;
	line-height: 1.6;
	padding-bottom: 1em;
}

#priceList .inner03 .columnTableWrap {
	margin-top: 50px;
}
#priceList .inner03 .columnTableWrap dd {
	margin-left: 0;
}
.price-annotation {
	text-align: left;
}
#priceList div.detail .tr{
	flex-direction: row;
}
#priceList div.detail .td{
	text-align: center;
}
.columnTableWrap > div + div {
	margin-top: 30px;
}

#priceList h3.addDeductible{
	position: relative;
}
#priceList .deductible{
	display: block;
	position: absolute;
	top: -12px;
	left: calc(50% + 70px);
}
/*
component
---------------------------*/
#component {
	margin-bottom: 40px;
}
#component > div {
	text-align: center;
	background-color: #fff;
}
#component > div > div {
	background-color: rgba(239, 250, 240, 0.3);
	padding: 20px 0;
	margin-top: 20px;
	border-top: 2px solid #0B5930;
}
#component .captionName,
#component .captionDetail {
	font-weight: 600;
	line-height: 1.6;
}
#component .captionName {
	font-size: 1.125rem;
	padding-bottom: 0.5em;
}
#component .captionDetail {
	font-size: 0.875rem;
	line-height: 1.6;
	padding-bottom: 1em;
}
#component div.detail{
	width: 600px;
	margin-top: 15px;
}
#component div.detail .tr{
	flex-direction:row;
	column-gap: 40px;
}
#component div.detail .th,
#component div.detail .td{
	flex: inherit;
}
#component div.detail .th,
#component div.detail .td{
	width: calc(100% - 270px);
}

#component div.detail .th.dark,
#component div.detail .td.dark{
	width: 230px;
}
#component div.detail .th{
	padding: 15px 0;
}
#component div.detail .td{
	padding: 20px 24px;
}
#component div.detail .td.dark{
	display: flex;
	align-items: center;
}
/* :::::::::::::::::: newsContent :::::::::::::::::: */
#newsContent {
	padding-bottom: 40px;
}
/* :::::::::::::::::: contactBox :::::::::::::::::: */
.contactBox .noBorder .tr{
	column-gap: 0;
}
.contactBox .noBorder .td{
	flex: 1;
}
.contactBox .noBorder .textBox {
	padding: 20px 4%;
	border: 1px solid #0B5930;
}
.contactBox hr{
	border: none;
	border-top: 1px solid #0B5930;
	padding-top: 15px;
	margin-top: 15px;
}
.contactBox .infoText {
	color: #1A3320;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	padding-bottom: 10px;
}
.contactBox .tel {
	font-size: 24px;
	color: #0B5930;
	margin-bottom: 10px;
}
.contactBox .tel a {
	position: relative;
	font-weight: 600;
	padding-left: 32px;
}
.contactBox .tel a:before {
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: auto;
	position: absolute;
	content: "";
	background-image: url(/images/tel-icon.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 22px;
	height: 24px;
}
.contactBox p {
	line-height: 1.6;
}
.contactBox .note {
	padding-top: 1em;
}
/* :::::::::::::::::: other :::::::::::::::::: */
#other .contentTitleWrap{
	padding:0;
}

/* オーバーレイ：非表示 */
#modal_overlay {
	opacity: 0;
	background-color: rgba(54, 56, 51, .5);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	display: none;
	width: 100%;
	height: 100%;
	-webkit-transition: opacity .5s ease-in-out;
	transition: opacity .5s ease-in-out;
}
/* オーバーレイ：表示 */
.show {
	opacity: 1 !important;
	display: block !important;
	overflow-y: hidden;
}

/* オーバーレイ：セクション */
.moadl-section {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	margin: 0;
	padding: 10px;
	max-width: 100%;
	width: 670px;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	text-align: center;
}

/* オーバーレイ：閉じる */
#moadl__close {
	border-radius: 14.5px;
	background: url(/antroquinonol/user_data/packages/senjudo2022/assets/img/top/icon_modal_close.svg) no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -29px;
	right: 10px;
	display: block;
	width: 29px;
	height: 29px;
	cursor: pointer;
}

/* オーバーレイ：モーダル */
.modal__body {
	-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .5);
	box-shadow: 0 2px 4px rgba(0, 0, 0, .5);
	position: relative;
	display: block;
}

/* モーダル：画像 */
.moadl-section img {
	max-width: 100%;
	width: auto;
	height: auto;
}
/* :::::::::::::::::: smartphone :::::::::::::::::: */

/* 575px smartphone*/
@media (max-width: 575px) {
	
}
/* 320px smartphone*/
@media (max-width: 320px) {
	
}
@media (max-width: 360px) {
	.btnBase {
		min-width: 200px;
	}
	#priceList .captionName {
		font-size: 16px;
	}
	#priceList .captionDetail {
		font-size: 11px;
	}
	#component .captionName {
		font-size: 16px;
	}
	#component .captionDetail {
		font-size: 11px;
	}
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
	

}
/* 767px smartphone*/
@media (max-width: 768px) {
	#mainVisual .toptitle1{
		font-size:20px;
	}
	#mainVisual .toptitle2 {
		font-size:27px;
	}
	.intro {
		padding: 15px;
	}
	#productBox h2.productName{
		font-feature-settings: "palt";
	}
	#productBox .h2-txt{
		font-size: 1.125rem;
	}
	.intro .tel-btn .info {
		display: block;
		padding: 10px 10px;
	}
	.intro .intro-inner .product-wrapper{
		width: 100%;
	}
	.intro .intro-inner .product-wrapper .discount-box .price{
		font-size: 26px;
	}
	.intro .tel-btn .info .info-wrapper .text {
		margin-left: 10px;
	}
	.intro .tel-btn .info .tel {
		margin-top: 10px;
		margin-left: 0;
		padding: 10px 20px;;
		font-size: 18px;
	}
	.intro .deductible{
		margin: 0 0 -12px;
	}
	#priceList > div {
		padding: 30px 10px;
	}
	.columnTableWrap .btnBase {
		min-width: 100%;
	}
}
/* Medium devices (tablets, 768px and up) */
@media (min-width: 769px) {
	#mainVisual {
		background-image: url(/images/mv-bg.svg);
		background-repeat: no-repeat;
		background-position: left top;
		background-size: cover;
		padding-top: 80px;
	}
	#mainVisual .minVisualInner {
		background: transparent;
		padding-bottom: 0;
	}
	#mainVisual .mvBg {
		background: linear-gradient(rgba(239, 250, 240, 0.1), rgba(239, 250, 240, 0.3));
	}
	#mainVisual.top h1 {
		font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
		font-size: 24px;
	}
	#mainVisual.top h1 span {
		font-size: 32px;
	}
	#mainVisual.top h2 {
		font-size: 20px;
		padding: 40px 0;
	}
	#mainVisual.top .textBox {
		position: relative;
		background-image: none;
		width: 49%;
		padding: 100px 0 152px;
	}
	
	#mainVisual.top .imageBox {
		position: absolute;
		top: 80px;
		bottom: 0;
		right: 0;
		width: 47%;
		text-align: center;
		padding: 0;
	}
	#mainVisual.top .imageBox > div:after {
		background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
	}
	#mainVisual.top .imageBox img {
		width: 524px;
		padding: 50px 20px 80px;
	}
	
	
	#mainNav {
		font-feature-settings: inherit;
		margin-top: -35px;
		padding: 30px;
		background-color: rgba(255, 255, 255, 0.8);
		box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
	}
	#mainNav .topBtns .btnBase{
		margin-bottom: 14px;
	}
	#mainNav .innerNav .btnBase {
		width: calc((100% - 20px) / 3);
		max-width: inherit;
	}
	#mainNav .innerNav .btnBase:nth-child(n+3) {
		margin-top: 0;
	}
	.btnBase {
		width: 100%;
		max-width: 418px;
	}
	.btnBase:before {
		right: 15px;
	}
	.btnBase:hover:before {
		right: 8px;
	}
	.btnBase a {
		height: auto;
		font-size: 18px;
		padding: 12px 0;
	}
	.btnBase + .navBtn {
		margin-left: 2px;
	}
	.embox{
		margin-bottom: 10px;
	}
	.bgContent {
		background-size: auto 50%;
	}
	#mainNav {
		margin-top: 0 !important;
	}
	.intro-inner {
		flex-direction: row;
	}
	.intro .intro-inner .product-thumb{
		width: 30%;
	}
	.intro .intro-inner .product-wrapper {
		width: 65%;
	}
	#productBox .productLineup {
		display: flex;
		justify-content: space-between;
	}
	#productBox .productLineup > div {
		width: calc((100% - 32px) / 2);
		padding: 30px 40px 40px;
	}
	#productBox .productLineup > div + div {
		margin-top: 0;
	}
	#productBox .productName {
		font-size: 1.375rem;
		padding-bottom: 10px;
	}
	#productBox .productDetail dt {
		font-size: 24px;
		font-weight: 600;
		padding-bottom: 10px;
		padding-bottom: 15px;
	}
	#productBox .productDetail dd p {
		font-size: 18px;
		padding-bottom: 15px;
	}
	#productBox .productDetail dd span {
		font-size: 14px;
	}
	#priceList > div {
		margin-top: 40px;
		padding: 30px 0;
	}
	#priceList .captionName {
		font-size: 24px;
	}
	#priceList .captionDetail {
		font-size: 18px;
	}
	#priceList div.detail{
		margin-bottom: 100px;
	}
	
	#priceList .columnTableWrap > div{
		position: relative;
	}
	#priceList .btnBase{
		position: absolute;
		bottom: 0;
	}
	.columnTableWrap {
		display: flex;
		justify-content: space-between;
	}
	.columnTableWrap > div {
		width: 48%;
	}
	.columnTableWrap > div + div {
		margin-top: 0;
	}
	#component {
		margin-bottom: 80px;
	}
	#component > div > div {
		margin-top: 40px;
		padding: 30px 0;
	}
	#component .captionName {
		font-size: 24px;
	}
	#component .captionDetail {
		font-size: 18px;
	}
	#component div.detail{
		width: 100%;
		margin-top: 30px;
	}
	
	#newsContent {
		padding-bottom: 140px;
	}
	.contactBox .imageBox {
		background-color: #0B5930;
		padding: 10px;
	}
	.contactBox .infoText {
		font-size: 20px;
	}
	.contactBox .tel {
		font-size: 30px;
	}
	.contactBox .note {
		font-size: 12px;
	}
	#other .merits{
		margin-bottom: 60px;
	}
	#other .merits .tr{
		justify-content: space-between;
	}
}

@media (min-width: 1000px) {
	header #contentNav {
		display: none !important;
	}
	header.is-fixed #contentNav {
		display: block!important;
	}
}
