/*
Theme Name: artmed Theme
Description: artmed WordPressテーマ
Version: 1.0
*/





:root{
	--am-gold: #94824F;
	--am-gold-rgb: 94,82,55;
	--am-white: #fff;
	--am-text: #666;
	--am-text-strong: #4F4F4F;
	
	--am-font-jp:
		"Hiragino Mincho ProN",
		"Yu Mincho",
		"YuMincho",
		"Noto Serif JP",
		"MS Mincho",
		serif;
	
	--am-font-sans:
		"Hiragino Kaku Gothic ProN",
		"Hiragino Sans",
		"Yu Gothic",
		"YuGothic",
		"Noto Sans JP",
		"Meiryo",
		sans-serif;
	
	--u: min(96vw, 750px);   /* ← 基準長さ（これが“縮尺”） */
	
	--compare-border: #9b8f6a;
	--compare-bg: #fbf5f2;
	--compare-cell: #f3f1ee;
	--compare-text: #4b4b4b;
	
	--compare-fixer: #f6a2b4;
	--compare-fixer-head: #f08aa1;
	--compare-fixer-text: #ffffff;
	--compare-fixer-accent: #ffd400;
	
	
}

html, body{
	margin:0; padding:0; background:var(--am-white);
}

main {
	width: var(--u);
	margin: 0 auto;
	position: relative;
	background: #fff;
}

header {
	width: var(--u);
	margin: 0 auto;
	position: relative;
	background: #fff;
}

footer {
	width: var(--u);
	margin: 0 auto;
	position: relative;
	background: #fff;
	padding-bottom:calc(var(--u) * (80/750));
}





.fv02 {
	background-image: url("__asset_url__/fv-02-bg.jpg");
	text-align: center;
}
.amBef{
	position:relative;
	display:inline-block;
	width:70%;
}
.amBef::before {
	content:"Before";
	position:absolute;
	bottom:calc(var(--u) * (40/750));
	left:calc(var(--u) * (30/750));
	font-size:calc(var(--u) * (60/750));
	color:var(--am-white);
	font-weight:900;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.6);
}
.amAft{
	position:relative;
	display:inline-block;
	width:70%;
}
.amAft::before {
	content:"After";
	position:absolute;
	bottom:calc(var(--u) * (40/750));
	left:calc(var(--u) * (30/750));
	font-size:calc(var(--u) * (60/750));;
	color:var(--am-white);
	font-weight:900;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.6);
}


/* ------------------------------------------------------------ */
/* ボタン                                                       */
/* ------------------------------------------------------------ */
.reserve-btn,
.case-ladies-btn,
.case-mens-btn,
.link-btn
{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:calc(100vw * 12 / 750);

	width:80%;
	margin:0 auto;
	padding:calc(100vw * 40 / 750) calc(100vw * 24 / 750);

	position:relative;
	text-decoration:none;

	color:#fff;
	font-weight:700;
	font-family:
		"Hiragino Mincho ProN",
		"Yu Mincho",
		"YuMincho",
		"Noto Serif JP",
		serif;

	/*font-size:calc(100vw * 30 / 750);*/
	font-size:calc(var(--u) * (30/750));
	line-height:1.2;
	letter-spacing:0.04em;
	text-align:center;

	border-radius:14px;

}
.reserve-btn{
	background:linear-gradient(to bottom, #fcaf4a 0%, #e28d1e 38%, #cf7f17 100%);
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,0.18),
		0 0 0 1px rgba(255,255,255,0.06);
}
.case-ladies-btn{
	background:linear-gradient(to bottom, #f7a3ae 0%, #f4839a 38%, #f27f98 100%);
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,0.18),
		0 0 0 1px rgba(255,255,255,0.06);
}
.case-mens-btn{
	background:linear-gradient(to bottom, #17c0cf 0%, #11a3b0 38%, #0e8b96 100%);
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,0.18),
		0 0 0 1px rgba(255,255,255,0.06);
}
.link-btn{
	background:linear-gradient(to bottom, #c8b997 0%, #ac9d7c 38%, #7e7258 100%);
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,0.18),
		0 0 0 1px rgba(255,255,255,0.06);
}

.reserve-btn__text,
.case-ladies-btn__text,
.case-mens-btn__text,
.link-btn__text
{
	display:block;
	white-space:nowrap;
}

.reserve-btn__arrow,
.case-ladies-btn__arrow,
.case-mens-btn__arrow,
.link-btn__arrow
{
	width:0;
	height:0;
	border-top:calc(100vw * 12 / 750) solid transparent;
	border-bottom:calc(100vw * 12 / 750) solid transparent;
	border-left:calc(100vw * 18 / 750) solid #fff;
	flex:0 0 auto;
	transform:translateY(1px);
}

#fixdBtn{
	position:fixed;
	left:0;
	bottom:0;
	width:100%;
	padding:10px 0;
	/*background:#f06f8d;*/
	z-index:9999;
}
#fixdBtn .fixed_inner{
	width:min(100%, 750px);
	margin:0 auto;
}
#pageBtn{
	/*position:fixed;*/
	left:0;
	bottom:0;
	width:100%;
	padding:10px 0;
	/*background:#f06f8d;*/
	/*z-index:9999;*/
}
#pageBtn .page_inner{
	width:min(100%, 750px);
	margin:0 auto;
}



@media (min-width: 750px){
	.reserve-btn{
		gap:12px;
		padding:20px 24px;
		font-size:30px;
	}
	.reserve-btn__arrow{
		border-top:12px solid transparent;
		border-bottom:12px solid transparent;
		border-left:18px solid #fff;
	}
}

















/* ------------------------------------------------------------ */
/* amHero 見出し                                                */
/* ------------------------------------------------------------ */
.amHero {
	width: 100%;
	margin: 0 auto;
	position: relative;
	background: #fff;
}
.amHero_bg{
	width: 100%;
	height: auto;
	display: block;
	user-select: none;
	pointer-events: none;
}
.amHero_layer{
	position: absolute;
	inset: 0;
}
.amHero_layer_center {
	display: flex;
	justify-content: center;
	align-items: center;
}
.amHero_image {
	width:100%;
	margin: 0 auto;
}
.amHero_image img {
	width:100%;
	display: block;
}
.amHero_image video {
	display: block;
	margin: 0 auto;
	width: calc(500 / 750 * 100%);
	max-width: 100%;
}

/* ------------------------------------------------------------ */
/* amText 文章                                                  */
/* ------------------------------------------------------------ */
.amText{
	width: 100%;
	margin:5% 0 5% 0;
}
.amText p{
	margin: 0 5% 0 10%;
	font-family: var(--am-font-sans);
	font-size: calc(var(--u) * (30/750)) !important;
	line-height: 1.8;
	letter-spacing: 0.01em;
	color: var(--am-text);
	text-align: left;
	overflow-wrap: anywhere;
	word-break: normal;
	font-weight: 500;
}
.amText strong{
	font-weight: 800;
	color: var(--am-text-strong);
}
.amText p + p{
	margin-top: 18px;
}
.amText small{
	font-size: calc(var(--u) * (25/750)) !important;
}


/* ------------------------------------------------------------ */
/* amTitleType01                                                */
/* ------------------------------------------------------------ */
.amTitleType01,
.amTitleType02 {
	width: 100%;
	margin: 0 auto;
	position: relative;
	background: #fff;
	margin: 10px 0px;
}
.amTitleType01 .amLine01,
.amTitleType01 .amLine02 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-white);
}
.amTitleType01 .amLine01 {
	left: calc(var(--u) * (32/750));
	font-size: calc(var(--u) * (60/750));
}
.amTitleType01 .amLine02 {
	left: calc(var(--u) * (150/750));
	font-size: calc(var(--u) * (35/750));
	line-height: calc(var(--u) * (50/750));
}

/* ------------------------------------------------------------ */
/* amTitleType02                                                */
/* ------------------------------------------------------------ */
.amTitleType02 {
	height:calc(var(--u) * (150/750));
}
.amTitleType02 .amLine01 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-gold);
	white-space: nowrap;
	font-size: calc(var(--u) * (48/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	line-height: calc(var(--u) * (60/750));
	text-align: center;
}



/* ------------------------------------------------------------ */
/* amStaff スタッフ紹介                                         */
/* ------------------------------------------------------------ */
.amStaffImage {
	width:70% !important;
}
.amStaffTitle {
	position: relative;
	height: calc(var(--u) * (100/750));
	text-align: left;
}
.amStaffTitle::after {
	content: "";
	position: absolute;
	top:65%;
	left:8%;
	right:8%;
	height:1px;
	background: color-mix(in srgb, var(--am-gold) 85%, transparent);
	transform: translateY(-50%);
	z-index: 0;
}
.amStaffTitle p {
	position: relative;
	display:inline-block !important;
	margin: 5% 0 0 8% !important;
	background:#fff;
	padding-right: 10px;
	z-index:1;
	color: var(--am-gold);
	font-size: calc(var(--u) * (55/750)) !important;
	font-family: var(--am-font-sans);
	font-weight: 600;
	line-height: calc(var(--u) * (60/750)) !important;
	text-align: center;
}
.amStaffText p {
	margin: 0 5% 10% 8% !important;
	font-family: var(--am-font-sans);
	font-size: calc(var(--u) * (30/750)) !important;
	line-height: 1.8 !important;
	letter-spacing: 0.01em;
	color: var(--am-text);
	text-align: left;
	overflow-wrap: anywhere;
	word-break: normal;
	font-weight:600;
}




/* ------------------------------------------------------------ */
/* amCase 施術例                                                */
/* ------------------------------------------------------------ */
.amCase {
	text-align: center;
}
.amCase::before {
	content:"Before";
	position:absolute;
	bottom:calc(var(--u) * (40/750));
	left:calc(var(--u) * (70/750));
	font-size:calc(var(--u) * (40/750));;
	color:var(--am-white);
	font-weight:900;
}
.amCase::after {
	content:"After";
	position:absolute;
	bottom:calc(var(--u) * (40/750));
	left:calc(var(--u) * (400/750));
	font-size:calc(var(--u) * (40/750));;
	color:var(--am-white);
	font-weight:900;
}
.amCase img {
	display: inline-block !important;
	width: 40%;
	margin: 2%;
}
.amCaseTitle {
	position: relative;
	height: calc(var(--u) * (100/750));
	text-align: left;
}
.amCaseTitle::after {
	content: "";
	position: absolute;
	top:65%;
	left:8%;
	right:8%;
	height:1px;
	background: color-mix(in srgb, var(--am-gold) 85%, transparent);
	transform: translateY(-50%);
	z-index: 0;
}
.amCaseTitle p {
	position: relative;
	display:inline-block !important;
	margin: 5% 0 0 8% !important;
	background:#fff;
	padding-right: 10px;
	z-index:1;
	color: var(--am-gold);
	font-size: calc(var(--u) * (35/750)) !important;
	font-family: var(--am-font-sans);
	font-weight: 600;
	line-height: calc(var(--u) * (60/750)) !important;
	text-align: center;
}
.amCaseText p {
	margin: 0 5% 0 8% !important;
	font-family: var(--am-font-sans);
	font-size: 15px !important;
	line-height: 1.8 !important;
	letter-spacing: 0.01em;
	color: var(--am-text);
	text-align: left;
	overflow-wrap: anywhere;
	word-break: normal;
	font-weight:600;
}











/* ------------------------------------------------------------ */
/* amDesign001                                                  */
/* ------------------------------------------------------------ */
.amDesign001 .amLine01,
.amDesign001 .amLine02,
.amDesign001 .amLine03,
.amDesign001 .amLine04 {
	position: absolute;
	margin: 0;
	white-space: nowrap;
	color: var(--am-gold);
}
.amDesign001 .amLine01 {
	top: calc(var(--u) * (14/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-jp);
	font-weight: 500;
	line-height: 1.1;
}
.amDesign001 .amLine02 {
	top: calc(var(--u) * (48/750));
	font-size: calc(var(--u) * (50/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	line-height: 1.0;
}
.amDesign001 .amLine03 {
	top: calc(var(--u) * (110/750));
	width: 100%;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	column-gap: calc(var(--u) * (14/750));
}
.amDesign001 .amLine03::before,
.amDesign001 .amLine03::after {
	content: "";
	height: 1px;
	background: color-mix(in srgb, var(--am-gold) 85%, transparent);
}
.amDesign001 .amLine03 span {
	position: static;
	transform: none;
	font-family: var(--am-font-jp);
	font-size: calc(var(--u) * (35/750));
}
.amDesign001 .amLine04 {
	top: calc(var(--u) * (160/750));
	font-size: calc(var(--u) * (44/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* amDesign002                                                  */
/* ------------------------------------------------------------ */
.amDesign002 .amLine01,
.amDesign002 .amLine02,
.amDesign002 .amLine03 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-white);
	white-space: nowrap;
}
.amDesign002 .amLine01 {
	top: calc(var(--u) * (80/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
}
.amDesign002 .amLine02 {
	top: calc(var(--u) * (165/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
}
.amDesign002 .amLine03 {
	top: calc(var(--u) * (250/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* amDesign003                                                  */
/* ------------------------------------------------------------ */
.amDesign003 {
	height:calc(var(--u) * (230/750));
}
.amDesign003 .amLine01,
.amDesign003 .amLine02,
.amDesign003 .amLine03 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-gold);
	white-space: nowrap;
}
.amDesign003 .amLine01 {
	top: calc(var(--u) * (60/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}
.amDesign003 .amLine02 {
	top: calc(var(--u) * (90/750));
	font-size: calc(var(--u) * (55/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}
.amDesign003 .amLine03 {
	top: calc(var(--u) * (160/750));
	font-size: calc(var(--u) * (50/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* amDesign004                                                  */
/* ------------------------------------------------------------ */
.amDesign004 {
	height:calc(var(--u) * (260/750));
}
.amDesign004 .amLine01,
.amDesign004 .amLine02,
.amDesign004 .amLine03 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
}
.amDesign004 .amLine01 {
	top: calc(var(--u) * (0/750));
	font-size: calc(var(--u) * (40/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
	color: var(--am-text-strong);
}
.amDesign004 .amLine02 {
	top: calc(var(--u) * (60/750));
	font-size: calc(var(--u) * (40/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
	color: var(--am-text-strong);
}
.amDesign004 .amLine03 {
	top: calc(var(--u) * (120/750));
	font-size: calc(var(--u) * (70/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
}

/* ------------------------------------------------------------ */
/* amDesign005                                                  */
/* ------------------------------------------------------------ */
.amDesign005 .amLine01,
.amDesign005 .amLine02,
.amDesign005 .amLine03 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
	text-align: center;
}
.amDesign005 .amLine01 {
	top: calc(var(--u) * (60/750));
	font-size: calc(var(--u) * (40/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-text-strong);
	line-height: calc(var(--u) * (50/750));
}
.amDesign005 .amLine02 {
	top: calc(var(--u) * (170/750));
	font-size: calc(var(--u) * (70/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
	line-height: calc(var(--u) * (80/750));
}
.amDesign005 .amLine03 {
	top: calc(var(--u) * (340/750));
	font-size: calc(var(--u) * (32/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-text-strong);
}

/* ------------------------------------------------------------ */
/* amDesign006                                                  */
/* ------------------------------------------------------------ */
.amDesign006 .amLine01,
.amDesign006 .amLine02,
.amDesign006 .amLine03 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
	text-align: center;
}
.amDesign006 .amLine01_div {
	position:relative;
	left: calc(var(--u) * (-350/750));
}
.amDesign006 .amLine01 {
	top: calc(var(--u) * (-200/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-white);
	line-height: calc(var(--u) * (50/750));
}
.amDesign006 .amLine02 {
	top: calc(var(--u) * (270/750));
	font-size: calc(var(--u) * (40/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-text-strong);
	line-height: calc(var(--u) * (50/750));
}

/* ------------------------------------------------------------ */
/* amDesign007                                                  */
/* ------------------------------------------------------------ */
.amDesign007 .amLine01,
.amDesign007 .amLine02,
.amDesign007 .amLine03,
.amDesign007 .amLine04,
.amDesign007 .amLine05,
.amDesign007 .amLine06 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
}
.amDesign007 .amLine01 {
	top: calc(var(--u) * (100/750));
	left: calc(var(--u) * (300/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
}
.amDesign007 .amLine02 {
	top: calc(var(--u) * (170/750));
	left: calc(var(--u) * (300/750));
	font-size: calc(var(--u) * (50/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
	line-height: calc(var(--u) * (60/750));
}
.amDesign007 .amLine03 {
	top: calc(var(--u) * (420/750));
	left: calc(var(--u) * (50/750));
	font-size: calc(var(--u) * (30/750));
}
.amDesign007 .amLine04 {
	top: calc(var(--u) * (720/750));
	left: calc(var(--u) * (300/750));
	font-size: calc(var(--u) * (30/750));
}
.amDesign007 .amLine05 {
	top: calc(var(--u) * (1020/750));
	left: calc(var(--u) * (50/750));
	font-size: calc(var(--u) * (30/750));
}
.amDesign007 .amLine06 {
	top: calc(var(--u) * (1350/750));
	left: calc(var(--u) * (50/750));
	font-size: calc(var(--u) * (50/750));
	font-family: var(--am-font-jp);
	color: var(--am-gold);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* amDesign008                                                  */
/* ------------------------------------------------------------ */
.amDesign008 .amLine01,
.amDesign008 .amLine02,
.amDesign008 .amLine03,
.amDesign008 .amLine04,
.amDesign008 .amLine05 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
	color: var(--am-gold);
	font-weight: 600;
	font-family: var(--am-font-sans);
}
.amDesign008 .amLine01 {
	top: calc(var(--u) * (230/750));
	font-size: calc(var(--u) * (40/750));
}
.amDesign008 .amLine02_div {
	position:relative;
	top: calc(var(--u) * (-790/750));
	left: calc(var(--u) * (-100/750));
}
.amDesign008 .amLine02 {
	top: calc(var(--u) * (470/750));
	font-size: calc(var(--u) * (28/750));
	line-height: calc(var(--u) * (40/750));
}
.amDesign008 .amLine03 {
	top: calc(var(--u) * (550/750));
	font-size: calc(var(--u) * (40/750));
}
.amDesign008 .amLine04 {
	top: calc(var(--u) * (710/750));
	font-size: calc(var(--u) * (40/750));
}
.amDesign008 .amLine05 {
	top: calc(var(--u) * (800/750));
	font-size: calc(var(--u) * (22/750));
}

/* ------------------------------------------------------------ */
/* amDesign009                                                  */
/* ------------------------------------------------------------ */
.amDesign009 {
	height:calc(var(--u) * (260/750));
	text-align: center;
}
.amDesign009 .amLine01,
.amDesign009 .amLine02 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
}
.amDesign009 .amLine01 {
	top: calc(var(--u) * (40/750));
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
	color: var(--am-text-strong);
	line-height: calc(var(--u) * (50/750));
}
.amDesign009 .amLine01 strong {
	font-size: calc(var(--u) * (60/750));
	font-family: var(--am-font-jp);
	font-style: italic;
}
.amDesign009 .amLine02 {
	top: calc(var(--u) * (140/750));
	font-size: calc(var(--u) * (70/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
}

/* ------------------------------------------------------------ */
/* amDesign011                                                  */
/* ------------------------------------------------------------ */
.amDesign011 .amLine01 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
}
.amDesign011 .amLine01 {
	top: calc(var(--u) * (70/750));
	font-size: calc(var(--u) * (50/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	color: var(--am-gold);
	line-height: calc(var(--u) * (80/750));
}

/* ------------------------------------------------------------ */
/* amDesign013                                                  */
/* ------------------------------------------------------------ */
.amDesign013 {
	height:calc(var(--u) * (100/750));
	background-color: var(--am-gold);
}
.amDesign013 .amLine01 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-white);
	white-space: nowrap;
	top: calc(var(--u) * (20/750));
	font-size: calc(var(--u) * (48/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* amDesign014                                                  */
/* ------------------------------------------------------------ */
.amDesign014 {
	height: calc(var(--u) * (300/750));
}
.amDesign014 .div01,
.amDesign014 .div02,
.amDesign014 .div03 {
	position: absolute;
	top: calc(var(--u) * (30/750));
	width: calc(var(--u) * (250/750));
	height: calc(var(--u) * (250/750));
	border-radius: 50%;
	background: rgba(var(--am-gold-rgb),0.3);
	/* opacity: 0.3; */
	text-align: center;
}

.amDesign014 .div01 {
	left: calc(var(--u) * (30/750));
}
.amDesign014 .div02 {
	left: calc(var(--u) * (250/750));
}
.amDesign014 .div03 {
	left: calc(var(--u) * (470/750));
}
.amDesign014 .amLine01,
.amDesign014 .amLine02,
.amDesign014 .amLine03,
.amDesign014 .amLine04,
.amDesign014 .amLine05,
.amDesign014 .amLine06 {
	position: relative;
	color: var(--am-text-strong);
}
.amDesign014 .amLine01,
.amDesign014 .amLine03,
.amDesign014 .amLine05 {
	font-family: var(--am-font-sans);
	font-weight: 600;
	line-height: calc(var(--u) * (35/750));
	font-size: calc(var(--u) * (22/750));
}
.amDesign014 .amLine02,
.amDesign014 .amLine04,
.amDesign014 .amLine06 {
	font-size: calc(var(--u) * (28/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
	line-height: calc(var(--u) * (38/750));
}
.amDesign014 .amLine01 {
	top: calc(var(--u) * (0/750));
}
.amDesign014 .amLine02 {
	top: calc(var(--u) * (-20/750));
}
.amDesign014 .amLine03 {
	top: calc(var(--u) * (30/750));
}
.amDesign014 .amLine04 {
	top: calc(var(--u) * (30/750));
}
.amDesign014 .amLine05 {
	top: calc(var(--u) * (10/750));
}
.amDesign014 .amLine06 {
	top: calc(var(--u) * (-8/750));
}

/* ------------------------------------------------------------ */
/* amDesign015                                                  */
/* ------------------------------------------------------------ */
.amDesign015 .amLine01 {
	position: absolute;
	top: calc(var(--u) * (20/750));
	left: calc(var(--u) * (400/750));
	margin: 0 0 0 3%;
	color: var(--am-text);
	white-space: nowrap;
	font-size: calc(var(--u) * (35/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
}
.amDesign015 img {
	position: relative;
	left: calc(var(--u) * (30/750));
	width: 50%;
}

/* ------------------------------------------------------------ */
/* amDesign016                                                  */
/* ------------------------------------------------------------ */
.amDesign016 {
	height:calc(var(--u) * (200/750));
	text-align: center;
}
.amDesign016 .amLine01,
.amDesign016 .amLine02 {
	position: absolute;
	margin: 0;
	white-space: nowrap;
}
.amDesign016 .amLine01 {
	top: calc(var(--u) * (30/750));
	color: var(--am-text-strong);
	font-size: calc(var(--u) * (30/750)) !important;
	font-family: var(--am-font-sans);
	font-weight: 600;
}
.amDesign016 .amLine02 {
	top: calc(var(--u) * (80/750));
	color: var(--am-gold);
	font-size: calc(var(--u) * (48/750)) !important;
	font-family: var(--am-font-jp);
	font-weight: 600;
	line-height: calc(var(--u) * (55/750)) !important;
}

/* ------------------------------------------------------------ */
/* amDesign018                                                  */
/* ------------------------------------------------------------ */
.amDesign017 {
	height:calc(var(--u) * (350/750));
}

/* ------------------------------------------------------------ */
/* amDesign018                                                  */
/* ------------------------------------------------------------ */
.amDesign018 .amLine01 {
	position: absolute;
	margin: 0 0 0 3%;
	white-space: nowrap;
	top: calc(var(--u) * (340/750));
	font-size: calc(var(--u) * (42/750));
	font-family: var(--am-font-sans);
	font-weight: 600;
	color: var(--am-white);
	line-height: calc(var(--u) * (60/750));
	text-align: center;
}

/* ------------------------------------------------------------ */
/* amDesign019                                                  */
/* ------------------------------------------------------------ */
.amDesign019 {
	height:calc(var(--u) * (150/750));
	background-color: var(--am-gold);
}
.amDesign019 .amLine01 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-white);
	white-space: nowrap;
	top: calc(var(--u) * (15/750));
	font-size: calc(var(--u) * (48/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}
.amDesign019 .amLine02 {
	position: absolute;
	margin: 0 0 0 3%;
	color: var(--am-white);
	white-space: nowrap;
	top: calc(var(--u) * (70/750));
	font-size: calc(var(--u) * (48/750));
	font-family: var(--am-font-jp);
	font-weight: 600;
}

/* ------------------------------------------------------------ */
/* compare 比較テーブル                                         */
/* ------------------------------------------------------------ */

.compare-wrap{
	max-width: 750px;
	margin: auto;
	padding: 16px;
	background: #fff;
	font-family: var(--am-font-sans);
}

/* 外枠の丸み（table自体にradiusが効きにくいのでラッパーで） */
.compare-frame{
	background: var(--compare-bg);
	border: 2px solid var(--compare-border);
	border-radius: 18px;
	overflow: hidden;
}

table.compare{
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
}

/* 列幅調整 */
table.compare col.col-label{ width: 22%; }
table.compare col.col-fixer{ width: 18%; }
table.compare col.col-oth{ width: 15%; }

/* 共通セル */
.compare th,
.compare td{
	background: var(--compare-cell);
	padding: 18px 0px;
	text-align: center;
	vertical-align: middle;
	border-right: 2px solid var(--compare-border);
	border-bottom: 2px solid var(--compare-border);
	font-weight: 700;
}

/* 右端・最下段の罫線処理 */
.compare tr > *:last-child{ border-right: 0; }
.compare tbody tr:last-child > *{ border-bottom: 0; }

/* 左側行見出し */
.compare th.rowhead{
	font-weight: 800;
	font-size:calc(var(--u) * (28/750));
	letter-spacing: 0.02em;
}

/* 上ヘッダー */
.compare thead th{
	font-size:calc(var(--u) * (19/750));
	padding: 22px 8px;
	line-height: 1.3;
}

.compare thead th.blank{
	background: var(--compare-cell);
}

/* FIXER列 */
.compare .fixer{
	background: var(--compare-fixer);
	color: var(--compare-fixer-text);
	border-right: 2px solid var(--compare-border);
}

.compare thead th.fixer{
	background: var(--compare-fixer-head);
	color: #fff;
	font-weight: 900;
	line-height: 1.15;
	padding: 18px 10px 20px;
}

.compare tbody td.fixer{
	font-weight: 900;
}

/* 記号 + 説明文 */
.cell-inner{
	display: grid;
	gap: 10px;
	place-items: center;
}

.symbol{
	font-size:calc(var(--u) * (40/750));
	line-height: 1;
	font-weight: 900;
}

.desc{
	font-size:calc(var(--u) * (22/750));
	line-height: 1.2;
	font-weight: 800;
	word-break: keep-all;
}

.desc.small{
	font-size:calc(var(--u) * (16/750));
	font-weight: 800;
	line-height: 1.25;
}

/* FIXER列リング */
.fixer .symbol{
	position: relative;
	width: 44px;
	height: 44px;
	font-size: 0;
}

.fixer .symbol::before,
.fixer .symbol::after{
	content:"";
	position:absolute;
	inset: 0;
	border-radius: 999px;
	border: 3px solid var(--compare-fixer-accent);
}

.fixer .symbol::after{
	inset: 7px;
	border-width: 3px;
}

/* 他列記号 */
td:not(.fixer) .symbol{
	color:#3f3f3f;
}

/* 注釈 */
.compare-note{
	font-size:calc(var(--u) * (14/750));
	color: #333;
	margin: 10px 4px 0;
	text-align: right;
	font-weight: 700;
}

.compare-hero {
	font-size:calc(var(--u) * (25/750));
}

/* スマホ微調整 */
@media (max-width: 520px){
	.fixer .symbol{
		width: 38px;
		height: 38px;
	}
}





.price_body {
    display: flex;
    flex-direction: column-reverse;
    width:100%;
}
.price_list {
    width: 100%;
    margin-right: 20px;
}
ul, li {
    padding: 0;
    margin: 0;
    list-style: none;
}
.price_list > li {
    border-top: 1px solid #ddd;
}
.price_list li dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
}
.price_list .moniter .list_column dt {
    /* color: #d3a53a; */
    color:#4F4F4F;
}
.price_list li dl.list_column dt {
    display: flex;
    flex-direction: column;
}
.price_list li dl dt {
    /* width: 30%; */
    font-size: 4vw;
}
.price_list li dd ul {
    display: flex;
    justify-content: space-between;
	line-height: 1.8;
}
.price_list li dl.list_column dd ul li span.list_label {
/*.price_list .list_label { */
    color: #4F4F4F;
    /* background-color: #d3a53a; */
    /* border-radius: 5px; */
    background-color:transparent;
    padding: 1px 5px;
    /* margin-top: 5px; */
    text-align: center;
}
.price_list .monitor_label {
    color: #d3a53a;
    background-color:transparent;
    padding: 1px 5px;
    text-align: center;
}

.price_list .monitor_price {
    font-size: 5vw;
    color: #d3a53a;
    line-height: 1.4;
    text-align: right;
}
.price_list .normal_price {
    font-size: 5vw;
    color:#4F4F4F;
    line-height: 1.4;
    text-align: right;
}

.price_list .list_column ul li span {
    display: block;
}
.price_list_right {
    width: 100%;
}
figure {
	display: block;
}
/*.price_list .list_column li:nth-child(1) {
    width: 48%;
}*/
.price_list li dl.list_column dd ul li {
    font-size:4vw;
}
.price_list li small {
    font-size: 2vw;
}
.price_list li dl dd {
    width: 60%;
}
.price_list .list_column li:nth-child(2) .price_reg {
    text-align: right;
}
.price_list_right img {
    display: block;
}
.price_list ul li:nth-child(1) .price_reg {
    text-align: center;
}

@media screen and (min-width: 650px) {
	.price_body {
	    flex-direction: row;
	    width:80%;
	}
	.price_list {
	    width: 100%;
	}
	.price_list li dl dt {
	    width: 50%;
	    font-size: calc(var(--u) * (30/750)) !important;
	}
/*	.price_list .list_column li:nth-child(1) {
	    width: 32%;
	}*/
	.price_list li dl dd {
	    font-size: 1.4vw;
	}
	.price_list li dl.list_column dd ul li {
	    font-size: calc(var(--u) * (18/750)) !important;
	}
	.price_list .monitor_price {
	    font-size: 25px;
	    line-height: 1;
	}
	.price_list .normal_price {
	    font-size: 25px;
	    line-height: 1;
	}
	.price_list li small {
	    font-size: 1vw;
	}
	.price_list li dl dd {
	    width: 55%;
	}
	.price_list_right {
	    width: 30%;
	}


}
.price_title {
	color:#4F4F4F;
	font-size: calc(var(--u) * (30/750)) !important;
}
.price_hero {
	font-family: var(--am-font-jp);
	color:var(--am-gold);
	font-size:calc(var(--u) * (50/750)) !important;
	font-weight:900;
}



.secFaqText {
	margin: 0 8% 0 8%;
}
.secFaqText td,
.secFaqText p {
	white-space: normal !important;
}
.secFaqText p {
	padding-top: 10px;
	padding-bottom: 10px;
}
.secFaqText td {
	vertical-align:top;
	padding-left: 10px;
}
.q_tag {
	font-family: var(--am-font-jp);
	color: var(--am-gold);
	font-size: calc(var(--u) * (60/750)) !important;
	font-weight: 600;
	line-height: 1.6 !important;
	margin:0 3% !important;
}
.q_text {
	font-family: var(--am-font-sans);
	color: var(--am-gold);
	font-size: calc(var(--u) * (45/750)) !important;
	font-weight: 600;
	line-height: 1.6 !important;
	margin:auto !important;
	text-align: left;
}
.a_tag {
	font-family: var(--am-font-jp);
	color: var(--am-text-strong);
	font-size: calc(var(--u) * (60/750)) !important;
	font-weight: 600;
	line-height: 1.6 !important;
	margin:0 3%  !important;
}
.a_text {
	font-family: var(--am-font-sans);
	color: var(--am-text-strong);
	font-size: calc(var(--u) * (30/750)) !important;
	font-weight: 600;
	line-height: 1.6 !important;
	margin:auto !important;
	text-align: left;
}

