/* ==================================================
	color
================================================== */

:root {
	--color100: #024ad8;
	--color90: #1b5cdc;
	--color80: #356ee0;
	--color70: #4e80e4;
	--color60: #6792e8;
	--color50: #81a5ec;
	--color40: #9ab7ef;
	--color30: #b3c9f3;
	--color20: #ccdbf7;
	--color10: #e6edfb;
	--color_gray: #e6e6e6;
}

.bg100 {background-color: var(--color100) !important;}
.bg90 {background-color: var(--color90) !important;}
.bg80 {background-color: var(--color80) !important;}
.bg70 {background-color: var(--color70) !important;}
.bg60 {background-color: var(--color60) !important;}
.bg50 {background-color: var(--color50) !important;}
.bg40 {background-color: var(--color40) !important;}
.bg30 {background-color: var(--color30) !important;}
.bg20 {background-color: var(--color20) !important;}
.bg10 {background-color: var(--color10) !important;}

.bge6e6e6 {
	background-color: var(--color_gray) !important;
}



/* ----------------------------------------
	main
---------------------------------------- */

.hero {
	display: flex;
	flex-direction: column;
	max-width: 1920px;
	margin: 0 auto;
}

.hero .cont .inner {
	padding: 30px 20px 15px;
}

@media screen and (min-width: 1024px) {
	.hero .cont .inner {
		padding: 30px 20px 50px;
	}
}

.hero .media img {
	object-fit: cover;
	width: 100%;
	height: auto;
}

@media screen and (min-width: 768px) {
	.hero .cont .inner {
		padding-right: 30px;
		padding-left: 30px;
	}
}

@media screen and (min-width: 1280px) {
	.hero {
		flex-direction: row;
		max-height: 480px;
	}

	.hero .cont {
		width: calc(50% - 193px);
	}

	.hero .cont .inner {
		max-width: calc(416px + 30px);
		margin-left: auto;
		padding-top: 60px;
	}

	.hero .cont h2 {
		position: relative;
		width: max-content;
	}

	.hero .media {
		width: calc(50% + 193px);
	}
}

@media screen and (min-width: 1920px) {
	.hero .cont {
		width: calc(50% - 93px);
	}

	.hero .cont .inner {
		max-width: calc(516px + 30px);
	}

	.hero .media {
		width: calc(50% + 93px);
	}
}



/* ----------------------------------------
	chara
---------------------------------------- */

.chara_swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 50px 40px;
}


/* ----------------------------------------
	dj_merit
---------------------------------------- */

.dj_merit_title {
	color: #fff;
	background: var(--color100);
}



/* ----------------------------------------
	ink
---------------------------------------- */

#contents_ink {
	background: var(--color10);
}



/* ----------------------------------------
	モデル一覧
---------------------------------------- */

.model_flag {
	background: var(--color100);
	color: #fff;
}

.model_cta .button.campaign-button::before{
	content: "";
}


/* ----------------------------------------
	ご購入に関する注意
---------------------------------------- */

.read_before_purchase .acco_content {
	background: var(--color10);
}


/* ----------------------------------------
	HP DesignJet Z6 PS PEシリーズの詳細
---------------------------------------- */

.chara_swiper_v2 .title_area._t {
    align-items: self-start !important;
}


/* ----------------------------------------
  dj_solution_parent
---------------------------------------- */

.dj_solution_parent_cont {
	padding: 40px 0px;
	background-color: #fff;
}
.dj_solution_parent_list .text_area {
	margin-top: 30px;
}
.dj_solution_parent_list {
	display: grid;
	grid-template-columns: repeat(1,1fr);
	gap: 50px 0;
	margin-top: 40px;
}
.dj_solution_parent_list .btn_area {
	margin-top: 30px;
}
@media screen and (min-width: 480px) {
	.dj_solution_parent_list {
		grid-template-columns: repeat(2,1fr);
		gap: 20px;
        margin-top: 40px;
	}
}
@media screen and (min-width: 768px) {
	.dj_solution_parent_title {
		padding: 20px 30px;
	}
	.dj_solution_parent_cont {
		padding: 40px 30px;
	}
}
@media screen and (min-width: 1024px) {
	.dj_solution_parent_cont {
		padding-top: 50px;
		padding-bottom: 75px;
	}
}


/* ==================================================
	disclaimer
================================================== */

.disclaimer {
	padding: 30px 20px;
	background: #e6e6e6;
}
.disclaimer a {
	color: #000;
	text-decoration: underline;
}
.disclaimer a:hover {
	background: rgba(0,0,0,.1);
}
.disclaimer .inner {
	padding: 20px;
	background: #fff;
	border-radius: 4px;
}
.disclaimer .acco_trigger {
	position: relative;
	padding: 20px 0;
	font-size: 16px;
	line-height: 24px;
}
.disclaimer .acco_trigger::after {
	display: inline-block;
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 12px;
	height: 6px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6"><path d="m455.465 769.707-1.847-.974 3.478-5.054-3.475-4.989 1.841-.983 4.156 5.966z" transform="rotate(90 611.663 158.045)" fill="%23000"></path></svg>');
}
.disclaimer .acco_trigger.acco_open::after {
	transform: translateY(-50%) rotate(180deg);
}
.disclaimer .acco_content {
	padding-bottom: 20px;
}
.disclaimer .acco_content > * + * {
	margin-top: 20px;
}
.disclaimer .notes_num > li:nth-child(n+2) {
	margin-top: 16px;
}

@media screen and (min-width: 768px) {
	.disclaimer {
		padding-right: 30px;
		padding-left: 30px;
	}
}
