
/*-----------------------------------------*/
#main_content.visid.w_100vw {
	overflow-x: clip;
}

#main_content.visid > div {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
    text-align: center;
}


/*------------------------------------------ */
.visid img{
	height: auto;
}

@media screen and (max-width: 1023px){
	.main_ttl img{
		width: 100%;
	}
}

h2.title {
    font-size: 24px;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 20px;
    color: #333;
}
h3.title_b {
    text-align: center;
    color: #4759f5;
    margin-top: 15px;
}
h3.title_b a {
    color: #4759f5;    
}

@media screen and (min-width: 768px) {
    h2.title {
        font-size: 28px;
        margin-bottom: 32px;
    }
}



/*--------------------------------- 
	main
--------------------------------------- */

.main_logo {
    display: flex;
    justify-content: space-between;
    padding: 0 10px 15px;
}
.main_logo > div:first-child {
    margin-right: 20px;
}

@media screen and (min-width: 768px) {
    .main_logo {
        padding: 0 15px 20px;
    }
}


/* slider -------------------- */

.main_slider_area {
	margin-bottom: 0;
	padding-bottom: 2.5rem;
}
.main_slider {
	display: none;
    position: relative;
}
.main_slider.slick-initialized {
	display: block;
}
.main_slider .slick-dots {
    position: absolute;
    bottom: 42px;
    left: 0;
    right: 0;
    display: flex;
    gap: 12px;
    padding: 0 28px;
}
.slick-dots,
.slick-dotted.slick-slider {
	margin: 0;
}
.slick-dots li {
	position: relative;
    height: 2px;
    flex: 1;
	background: #ffffffbf;
    overflow: hidden;
    margin: 0;
}
.slick-dots li button {
	padding: 0;
}
.slick-dots li button:after {
	content: "";
	position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background: #00a0e9;
}
.slick-dots li.slick-active button:after {
    transition: width var(--dur, 4s) linear;
    width: 100%
}
.slick-dots li button:before {
    position: static;
}
/*.slick-dots li button:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1rem;
	height: 1rem;
	background: #000;
	border-radius: 50%;
	opacity: .3;
	transform: translate(-50%,-50%);
}*/



/*--------------------------------- 
	recco_product
--------------------------------------- */

.recco_product {
    margin-top: 40px;
}



/*--------------------------------- 
	sub_cont
--------------------------------------- */

.sub_cont {
    margin-top: 40px;
}


/*--------------------------------- 
	cam_message
--------------------------------------- */

.cam_message {
    margin-top: 40px;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 16px;
}
.cam_message > div > div:first-child {
    margin-bottom: 20px;
}

.cam_message p {
    color: #333;
    font-weight: bold;
    font-size: 15px;
}

@media screen and (max-width: 767px) {
    .cam_message  {
        background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/intro_bg_01_sp.png);
    }
}

@media screen and (min-width: 768px) {
    .cam_message  {
        background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/intro_bg_01.png);
        padding: 20px;
    }
    
    .cam_message p {
        font-size: 16px;
    }
}

@media screen and (min-width: 1024px) {
    .cam_message {
        padding: 40px;
    }
    .cam_message > div  {
        display: flex;
    }
    .cam_message > div > div:first-child {
        width: 50%;
        margin-bottom: 0;
    }
    .cam_message > div > div:last-child {
        width: calc(50% - 30px);
        margin-left: 30px;
    }
    
    .cam_message p {
        font-weight: normal;
    }
}



/*--------------------------------- 
	tab_cont
--------------------------------------- */

.tab_area {
    margin: 40px 16px;
}
.tab_area .tab_trigger {
    display: flex;
}
.tab_area .tab_trigger > li {
    width: calc((100% - 10px) / 3);
}
.tab_area .tab_trigger > li:nth-child(n+2) {
    margin-left: 5px;
}
.tab_area .tab_trigger li > div {
    background: #00a0e9;
    margin-bottom: 10px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 9px 5px 8px;
    line-height: 1;
    letter-spacing: 1px;
}
.tab_area .tab_trigger li.tab_current > div {
    background: #00a0e91a;
    color: #00a0e9;
}
.tab_area .tab_trigger li.tab_current img {
    border: solid 2px #00a0e9;
}
.tab_area .tab_trigger li > div span.tab_icon {
    position: relative;    
    padding-right: 20px;
}
.tab_area .tab_trigger li > div span.tab_icon::after {
    position: absolute;
    font-family: HPIcons;
    content: "\E90c";
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
}

@media screen and (min-width: 768px) {
    .tab_area .tab_trigger {
        width: 60%;
        margin: 0 auto;
    }
}

@media screen and (min-width: 1024px) {
    .tab_area .tab_trigger {
        width: 50%;
    }
    .tab_area .tab_trigger > li:nth-child(n+2) {
        margin-left: 10px;
    }
}
    
.tab_content_area {
    margin-top: 40px;
}

.tab_area .num, .tab_area .t_bk {
    margin: 0;
    letter-spacing: 1px;
}
.tab_area .num span {
    background: #fcc800;
    color: #fff;
    padding: .3em .5em .1em;
    line-height: 1.2;
    font-size: 13px;
}
.tab_area .num.one span {
    background: #fcc800;
}
.tab_area .num.two span {
    background: #8fc31f;
}
.tab_area .num.three span {
    background: #eb6100;
}
.tab_area .t_bk > span {
    background: #333;
    color: #fff;
    padding: .3em .5em .1em;
    line-height: 1.2;
    font-size: 13px;
}

/*@media screen and (min-width: 768px) {
    .tab_area .t_bk > span {
        font-size: 14px;
    }
}*/



/*--------------------------------- 
	case
--------------------------------------- */

.case {
    position: relative;
    padding: 30px;
    width: 100%;
    margin-top: 15px;
}

.case::before, .case::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    border-top: 1px solid #333;
}
.case::before {
    top: 0;
    left: 0;
    border-left: 1px solid #333;
}
.case::after {
    top: 0;
    right: 0;
    border-right: 1px solid #333;
}
.case > div::before, .case > div::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    bottom: 0;
    border-bottom: 1px solid #333;
}
.case > div::before {
    left: 0;
    border-left: 1px solid #333
}
.case > div::after {
    right: 0;
    border-right: 1px solid #333;
}


.case .prof {
    margin-bottom: 20px;
}
.case .prof .name {
    font-size: 26px;
}
.case .prof .name + p span {
    background: #f2f2f2;
    padding: 0 5px;
    font-size: 16px;
}

.case .prof ul {
    margin-top: 15px;
}
.case .prof ul li span {
    background: #333;
    color: #fff;
    padding: 0 5px;
    letter-spacing: 1px;
}

@media screen and (min-width: 768px) {
    .case .prof {
        display: flex;
        justify-content: space-between;
    }
    .case .prof .name {
        font-size: 38px;
    }
    .case .prof .name + p span {
        font-size: 18px;
    }
    .case .prof ul {
        margin-top: 0;
    }
    .case .prof ul li span  {
        padding: 2px 8px 1px;
    }
}

@media screen and (min-width: 1024px) {
    .case {
        padding: 50px;
    }
    .case .prof .name {
        font-size: 48px;
    }
    .case .prof .name + p span {
        font-size: 20px;
    }
    .case .prof ul li span {
        font-size: 16px;
    }
}


.case .prof_img .txt {
    margin-top: 20px;
}
.case .prof_img .txt p {
    font-weight: bold;
    line-height: 1.8;
}

@media screen and (min-width: 768px) {
    .case .prof_img .txt {
        margin-top: 40px;
    }
    .case .prof_img .txt p {
        text-align: center;
    }
    .case .prof_img {
        display: flex;
    }
    .case .prof_img > div:first-child {
        width: 42%;
    }
    .case .prof_img > div:last-child {
        width: calc(58% - 20px);
        margin-left: 20px;
    }
}

@media screen and (min-width: 1024px) {
    .case .prof_img > div:first-child {
        width: 34%;
    }
    .case .prof_img > div:last-child {
        width: calc(66% - 40px);
        margin-left: 40px;
    }
    
    .case .prof_img .txt {
        margin-top: 40px;
    }
    .case .prof_img .txt {
        font-size: 17px;
    }
}

.img_area {
    margin-top: 25px;
}
.img_area > div:last-child {
    margin-top: 5px;
    display: flex;
    flex-wrap: wrap;
}
.img_area > div:last-child > div {
    width: 50%;
}

@media screen and (min-width: 768px) {
    .img_area {
        display: flex;
    }
    .img_area > div:first-child {
        order: 2;
        width: 67%;
    }
    .img_area > div:last-child {
        margin-top: 0;
        order: 1;
        width: 33%;
    }
    .img_area > div:last-child > div {
        width: 100%;
    }
}

.message {
    margin-top: 80px;
    position: relative;
}
.message .icon {
    display: flex;
    position: absolute;
    width: 100%;
    top: -3.5em;
    padding-left: 15px;
}
.message a.btn_bl {
    display: inline-block;
    vertical-align: bottom;
    padding: .6em .5em;
    font-size: 14px;
    line-height: 1.2;
    background-color: #00a0e9;
    color: #fff;
    transition: .2s;
    margin-top: 15px;
    width: 100%;
    text-align: center;
    text-decoration: none;
}
.message a.btn_bl span {
    position: relative;
    font-family: HPIcons;
    padding-right: 1.25em;
    font-weight: bold;
}
.message a.btn_bl span:after {
    position: absolute;
    content: "\E90a";
    right: 0;
}

.message .txt {
    background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/case_bg_01_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 30px 20px 20px;
    border-radius: 5px;
}

@media screen and (min-width: 768px) {
    .message .txt {
        background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/case_bg_01.png);
        padding: 30px 30px 20px;
    }
    .message .icon {
        top: -6em;
        padding: 40px 30px 20px;        
    }
    .message .icon img {
        margin-right: 20px;
    }
    .message a.btn_bl {
        margin-top: 0;
        padding: .6em 1em;
    }
}

@media screen and (min-width: 1024px) {
    .message .icon {
        top: -6.5em;
    }
}



/*--------------------------------- 
	bg_office
--------------------------------------- */

.bg_office {
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.bg_office .txt {
    padding: 0 28px;
    position: absolute;
    top: 30px;
    left: 0;
}
.bg_office .title {
    color: #333;
    font-size: 24px;
    line-height: 1.4;
    margin-bottom: 15px;
}

@media screen and (min-width: 480px) {
    .bg_office .txt {
        padding: 0 40px;
        top: 40px;
    }
}

@media screen and (min-width: 768px) {
    .bg_office {
        margin: 60px auto;
    }
    .bg_office .txt {
        width: 54%;
    }
}

@media screen and (min-width: 1024px) {
    .bg_office {
        margin: 100px auto;
    }
    .bg_office .title {
        font-size: 32px;
        margin-bottom: 20px;
    }
    .bg_office .txt {
        top: 50%;
        transform: translateY(-50%);
    }
    .bg_office .txt p {
        font-size: 16px;
        line-height: 1.7;
    }
}



/*--------------------------------- 
	copilot
--------------------------------------- */

.copilot {
    padding: 40px 15px;
}
.copilot h4 {
    text-align: center;
    margin-top: 15px;
    font-size: 18px;
}
.copilot h4 + p {
    margin-top: 10px;
}



/*--------------------------------- 
	apps
--------------------------------------- */

.apps {
    padding: 40px 15px;
}
.apps .badge {
    text-align: center;
}
.apps .badge span {
    background: #333;
    color: #fff;
    border-radius: 20px;
    padding: .6em .9em;
    font-size: 15px;
}

.app_box {
    padding: 24px;
    border-radius: 8px;
    background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/apps_bg_01_sp.png) ;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

@media screen and (min-width: 768px) {
    .app_box {
        padding: 30px;
        border-radius: 12px;
        background-image: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/office365/style/images/apps_bg_01.png);
    }
}



/*--------------------------------- 
	bnr
--------------------------------------- */

.bnr {
    text-align: center;
    padding: 40px 15px;
}



/*--------------------------------- 
	plan
--------------------------------------- */

.plan {
    padding: 40px 15px;
    background: linear-gradient(116.47deg, #00a0e91a 16.76%, #64cdfc1a 83.24%);
}

@media screen and (min-width: 768px) {
    .plan {
        padding: 60px 40px;
    }    
}    



/*--------------------------------- 
	note
--------------------------------------- */

.note {
    padding: 40px 15px;
}
.list_note > li {
	position: relative;
	padding-left: 1.4em;
	line-height: 1.6;
}
.list_note > li:nth-child(n+2) {
	margin-top: .5em;
}
.list_note > li::before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
}

@media screen and (min-width: 768px) {
    .note {
        padding: 60px 40px;
    }    
}    



/*--------------------------------- 
	product
--------------------------------------- */

.xxl, .h2 {
	font-weight: normal;
}

.xxl { font-size: 40px; line-height: 46px; }
.h2 { font-size: 24px; line-height: 26px; }

@media screen and (min-width: 768px) {
	.xxl { font-size: 60px; line-height: 66px; }
	.h2 { font-size: 32px; line-height: 36px; }
}

@media screen and (min-width: 1024px) {
	.xxl { font-size: 70px; line-height: 74px; }
	.h2 { font-size: 34px; line-height: 40px; }
}

@media screen and (min-width: 1920px) {
	.xxl { font-size: 80px; line-height: 84px; }
	.h2 { font-size: 38px; line-height: 42px; }
}



/* ----------------------------------------
	margin
---------------------------------------- */

.xxl + p { margin-top: 20px; }
.h2 + p { margin-top: 16px; }




/*----------------------------------------- ctg__area */
.ctg__area {
    padding-bottom: 4rem;
    margin-top: 2rem;
    background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series_s.png) no-repeat 150% top;
}

@media screen and (min-width: 480px) {
	.ctg__area {
		background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series_s.png) no-repeat 110% top;
	}
}

@media screen and (min-width: 640px) {
	.ctg__area {
		background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series.png) no-repeat 280% top;
	}
}
@media screen and (min-width: 768px) {
	.ctg__area {
		background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series.png) no-repeat 200% top;
	    padding-bottom: 80px;
	}
}
@media screen and (min-width: 1024px) {
	.ctg__area {
		background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series.png) no-repeat 120% top;
	}
}
@media screen and (min-width: 1280px) {
	.ctg__area {
		background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series.png) no-repeat right top;
	}
}



/*------------------------------------------------------------------  ttl_area  */
.ctg__area .ttl_area {
    background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series_right.png) -170px top no-repeat;
	padding: 4rem 2rem 2rem;
}
@media screen and (min-width: 768px) {
	.ctg__area .ttl_area {
	    background: url(/content/dam/jp-ext-hp-com/jp/ja/ec/campaign/personal/others/27th_anniversary/sale/style/images/series_right.png) 0 top no-repeat;
	}
}




/* -------------------------------------------------------------  ctgr_pro_ttl_area */

.ctgr_pro_ttl_area{
    padding: 1rem 1rem 0;
    background: #d5dded;
}

.ctgr_pro_ttl_area.subbox {
	padding: 2rem 1rem 0;
}

@media screen and (min-width: 768px) {
	.ctgr_pro_ttl_area{
	    padding: 10px 10px 0;
	}
	.ctgr_pro_ttl_area.subbox {
		padding: 20px 10px 0;
	}
}



/* -------------------------------------------------------------  chara_area   */

.chara_area {
	background: #fff;
	display: grid;
	gap: 5px;
}
@media screen and (min-width:1024px) {
	.chara_area {
		gap: 0 5px;
	    grid-template-columns: repeat(2, 1fr);
	    grid-template-rows: max-content max-content 1fr auto;
	}
	.chara_area .prod {
		grid-row: span 2 / span 2;
	    align-content: center;
	}
}
@media screen and (min-width:1220px) {
	.chara_area {
	    grid-template-columns: 1fr 620px;
	}
}

/*------------------------------------------------------------------  catch_box  */
.chara_area .catch_box {
	padding: 3rem 2rem 1rem;
}

/*------------------------------------------------------------------  prod  */
.chara_area .prod {
    text-align: center;
    padding: 0 1rem .5em;
}
@media screen and (min-width:1024px) {
	.chara_area .prod {
	    text-align: center;
	    padding: 0;
	}
}

/*------------------------------------------------------------------  txt_area  */
.chara_area .txt_area {
	padding: .5rem 2rem;
	text-align: center;
}


/*-------------------------------------- 
	linkarrow_other_page_box
--------------------------------------- */

.linkarrow_other_page_box {
	background: #fff;
	padding: 2rem;
}

.linkarrow_other_page {
    background: #fff;
    box-shadow: 1px 1px 4px #b3c8f3 inset;
    border-radius: 1rem;
    border: 1px #568393 dotted;
    color: #568393;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	padding: 1em 1rem;
}

@media screen and (min-width: 1024px) {
	.linkarrow_other_page {
		border-radius: 80px;
	}

}


/* ==================================================
	button
================================================== */

.product .button {
	padding: .5em 1.2em;
	font-size: 16px;
	border-radius: 0;
}

/* critical -------------------- */

.product .button.critical {
	background: #165dba;
}
.product .button.critical:hover {
	background: #114a94;
}






/*------------------------------------------- 
  cam_model 
-------------------------------------------  */

.cam_model {
	background: #d5dded;
    padding: 3rem 1rem;
}

.cam_model > div {
    background: #fff;
	padding: 1rem 2rem 2rem;
}

@media screen and (max-width: 767px) {
	.cam_model .hpj-pim:nth-child(n+2) {
		margin-top: 30px;
	}
}

@media screen and (min-width: 768px) {
	.cam_model {
	    padding: 15px 10px;
	}

	.cam_model > div {
		padding: 10px 20px 20px;
	}
	.cam_model > div > div > div.aem-Grid {
		margin: 0 -10px;
	}
	.cam_model .hpj-pim {
		padding: 0 10px;
	}


	/* column2 -------------------- */
	.column2 .hpj-pim {
		width: 50% !important;
	}
	.column2 .hpj-pim:nth-child(n+3) {
		margin-top: 20px;
	}

	/* column3 -------------------- */
	.column3 .hpj-pim {
		width: 50% !important;
	}
	.column3 .hpj-pim:nth-child(n+3) {
		margin-top: 20px;
	}
}

@media screen and (min-width: 1024px) {
	.cam_model > div {
		padding: 10px 10px 20px;
	}
	.cam_model > div > div > div.aem-Grid {
		margin: 0 -8px;
	}
	.cam_model .hpj-pim {
		padding: 0 8px;
	}
	
	/* column3 -------------------- */
	.column3 .hpj-pim {
		width: 33.33333% !important;
	}
	.column3 .hpj-pim:nth-child(n+3) {
		margin-top: 0;
	}
	.column3 .hpj-pim:nth-child(n+4) {
		margin-top: 20px;
	}
}


/* model_box -------------------- */

.model_box {
	background: #fff;
	text-align: center;
    border: 1px #000 solid;
    border-radius: 1rem;
}


/* cam_model_name ---------------------------------------------------------- */

.cam_model_name {
	background:#000;
	border-radius: 1rem 1rem 0 0;
	color: #fff;
	padding: .5rem 1rem;
	position: relative;
	text-align: center;
}
.prod_name {
	padding: .3rem 0 .5rem;
	text-align: center;
	font-size: 19px;
	font-weight: normal;
	line-height: 1.2;
}
.cam_name {
	padding: 0 10px 5px 10px;
	line-height: 1.4;
	font-weight: normal;
}

@media screen and (max-width: 479px) {
	.cam_name {
		text-align: left;
	}

	.cam_name br {
		display: none;
	}
}

.cam_name br{
	display: none;
}
@media screen and (min-width: 768px) {
	.cam_name br{
		display: block;
	}
}



/* prod_img -------------------- */

.prod_img {
	display: block;
	margin: 20px auto 0;
	padding: 1rem 1rem 0;
	text-align: center;
}

@media screen and (min-width: 480px) {
	.prod_img {
		padding: 1em .5rem 0;
	}
}
@media screen and (min-width: 768px) {
	.prod_img {
		padding: 10px 10px 0;
	}
}
@media screen and (min-width: 1024px) {
	.prod_img {
		padding: 10px 5px 0;
	}
}




/* ======================================  

	price_area 

====================================== */

.price_area {
    padding: 0 1rem 2rem;
    text-align: center;
}

@media screen and (min-width: 1024px) {
	.price_area > div:first-of-type {
		flex-shrink: 0;
	}
}

@media screen and (min-width: 1024px) {
	.price_area > div:nth-child(1) {
		flex-shrink: 0;
	}
}

.price_area * + * {
	margin-top: 5px;
}
@media screen and (min-width: 1024px) {
	.price_area * + * {
		margin-top: 0;
	}
}
.price_area .bold {
	margin-top: 10px;
	line-height: 35px;
}
.price_area .price_off {
	color: #d7410b;
	font-size: 14px;
	padding-bottom: 10px;
	font-weight: normal;
	line-height: 1;
}
.price_area .price_off span {
	font-size: 160%;
}
.price_area .price_off > span:first-child {
	margin:0 -3px;
}

.price_area .price_off > span:last-child {
	letter-spacing: -3px;
	font-size: 145%;
}

.price_area .button.critical {
	margin-top: 10px;
    font-size: 20px;
    width: 80%;
}

/*------------------------------------- */
.price_area .price {
	color: #ff5050;
	font-size: 1.7rem;
}
.price_area .price > span {
    font-size: 3.8rem;
}



/*----------------------------------------------------------------*/

.hpj-pim .regular_price_text_cam {
	display: inline-block;
}
.hpj-pim.general-tax-price .regular_price_taxed {
	display: inline-block;
}



/*----------------------------------------------  point_area */
.point_area {
	position: absolute;
	top: -25px;
	left: -20px;
}
@media screen and (min-width: 480px) {
	.point_area {
		top: -40px;
		left: -15px;
	}
}

.point {
	background: #024ad8;
	border-radius: 50%;
	border: 2px #fff solid;
	color: #fff;
	font-size: 19px;
	line-height: 1.0;
	letter-spacing: -.3rem;
	text-align: center;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 65px;
	height: 65px;

}
.point span {
	font-size: 2.4rem;
	margin-right: -.5rem;
	line-height: 1.0;
	letter-spacing: 0;
}

@media screen and (min-width: 480px) {
	.point {
		width: 84px;
		height: 84px;
		font-size: 24px;
        line-height: .7;
	}
	.point span {
		font-size: 34px;
	}
}



/*------------------------------------------ */

.product .hpj-pim .button.critical {
	background: #ff5050;
}
.product .hpj-pim .button.critical:hover {
	background: #ff4040;
}


/* ----------------------------------------------------------- */

.cam_review {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 10px;
}
[data-bv-show="rating_summary"] .bv_main_container .bv_ratings_summary {
    pointer-events: none;
    padding: 0 !important;
    margin: 0 !important;
}
[data-bv-show="rating_summary"] .bv_main_container .bv_ratings_summary + .bv_main_container_row_flex {
    display: none !important;
}
.cam_review_link {
    font-size: 14px;
}

[data-bv-show="rating_summary"] .bv_main_container .bv_button_buttonMinimalist {
	display: none!important;
}


@media screen and (min-width: 480px) {
    .cam_review {
        gap: 30px;
    }
}



/* list_basic -------------------- */


.cam_model .list_basic {
	font-size: 13px;
	text-align: left;
}
.cam_model.column1 .list_basic {
	padding: 0 1rem;
}


.cam_model .list_basic > li::before {
	color: #547c52;
}
.cam_model .list_basic > li > * {
	float: none;
}
.cam_model .list_basic .model_spec_title {
	display: none;
}
.cam_model .list_basic .model_spec_text {
	width: 100%;
}
.cam_model .list_basic .icon_customize::after {
	content: none;
	background: none;
}


@media screen and (max-width: 767px) {
	.cam_model .acco_basic {
		margin: 15px 10px 5px;
	}
	.cam_model .acco_trigger {
		font-size: 14px;
		background: #f2f2f2;
	}
}

@media screen and (min-width: 768px) {

	.model_box .acco_basic.acco_mobile{
		border-top: none;
	}
	
	.cam_model .acco_trigger {
		display: none;
	}
	.acco_mobile .acco_content{
		display: block !important;
	}
	.acco_basic .acco_content{
		padding: 1rem .5rem 0;
		border-bottom: none;
	}

	.cam_model .list_basic {
		margin-top: 0;
		padding: 5px 15px;
	}

}


/* link_area -------------------- */

.link_area{
	display: flex;
	flex-flow: wrap;
    align-items: center;
	padding: 15px 10px;
}

@media screen and (min-width: 480px) {
	.link_area{
	    justify-content: center;
		text-align: center;
	}
}

.link_area > a {
	font-size: 13px;
	margin-top: 5px;
}
.link_area > a.campaign-link {
	margin-right: 15px;
}


.hpj-pim .model_delivery .deliveryDate {
    font-size: 125%;
}






