.disclaimer {
	padding-left: 1em;
    font-size: 12px;
    line-height: 1.33;
    text-indent: -1em;
	text-align: left;
}
.visid .button.critical {
	background: #024AD8;
}

.btn {
	text-align: center;
}
.btn a {
	color: #fff;
	font-size: 1.5rem!important;
	border-radius: 10px!important;
}


.btn2 {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
}
.btn2 a {
	color: #fff;
	font-size: 1.4rem!important;
	border-radius: 10px!important;
	display: block;
}

.btn3 {
	text-align: center;
    margin-top: 20px;
}
.btn3 a {
	color: #fff;
	font-size: 1.4rem!important;
	border-radius: 10px!important;
}

.btn4 {
	text-align: center;
    margin-top: 5px;
}
.btn4 a {
	color: #fff;
font-size: 1.3rem !important;
    border-radius: 5px !important;
	padding: .5em 1.2em!important;
}


.btn5 {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	padding: 10px;
}
.btn5 a {
	color: #fff;
	font-size: 1.4rem!important;
	border-radius: 10px!important;
	display: block;
}
.btn6 {
	text-align: center;
    margin-top: 5px;
}
.btn6 a {
	color: #fff;
font-size: 1.3rem !important;
    border-radius: 5px !important;
	padding: .5em 1.2em!important;
}
.btn7 {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	    padding: 10px;
}
.btn7 a {
	color: #fff;
	font-size: 1.4rem!important;
	border-radius: 10px!important;
	display: block;
}


.btn8 {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	    padding: 10px;
}
.btn8 a {
	color: #fff;
	font-size: 1.4rem!important;
	border-radius: 10px!important;
	display: block;
}


.mt15 {
	margin-top: 15px;
}
@media screen and (min-width: 768px) {
	.btn2 {
		grid-template-columns: 1fr 1fr;
	}
	.btn5 {
		grid-template-columns: 1fr 1fr;
	}
	.btn7 {
		grid-template-columns: 1fr 1fr 1fr;
	}
	.btn8 {
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (min-width: 1024px) {
	.mt60_lg {
    margin-top: 60px;
}	
	.mt30_lg {
	margin-top: 30px;
}
}	
@media screen and (min-width: 1280px) {

.btn a {
	font-size: 2.5rem!important;
}
	.btn2 {
    grid-template-columns: 1fr 1fr;
}
	.btn2 a {
	font-size: 2.3rem!important;
}
	.btn3 a {
	font-size: 2.3rem!important;
}
	.btn5 {
    
	    padding: 10px 100px 30px;
}
	.btn5 a {
	font-size: 2.3rem!important;
}
	.btn6 {
		margin-top: 30px;
	}
	.btn6 a {
		font-size: 2.3rem!important;
	}
	.btn7 {
	display: grid;
    gap: 10px;
    
	    padding: 10px 60px 30px;
}
	.btn7 a {
		font-size: 2.3rem!important;
		}	
	.btn8 {
    	gap:100px;
	    padding: 10px 100px 30px;
}
	.btn8 a {
		font-size: 2.3rem!important;
		border-radius: 25px!important;
	}
}

.table_scroll {
	display: block;
	overflow-x: auto;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}
.table_scroll::-webkit-scrollbar {
	height: 6px;
}
.table_scroll::-webkit-scrollbar-track {
	background: #f5f5f5;
}
.table_scroll::-webkit-scrollbar-thumb {
	background: #0096d6;
	border-radius: 3px;
}
.table_scroll table {
	min-width: 100%;
}	
@media screen and (min-width: 480px) {
.table_scroll_none_sm {
	overflow-x: visible;
	white-space: normal;
}
.table_scroll_none_sm table {
	width: auto;
}
}
@media screen and (min-width: 1280px) {
.table_scroll_none_lg {
	overflow-x: visible;
	white-space: normal;
}
.table_scroll_none_lg table {
	width: auto;
}
}



.cta_button {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.cta_button .button-outline {
    justify-content: space-between;
    color: #fff;
    font-size: 18px;
    letter-spacing: normal;
    background: #000;
}
.cta_button .button-outline:hover {
    color: #000;
    background: #fff;
}
.cta_button .button-outline::after {
    content: "";
    height: 24px;
    width: 24px;
    background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2222%22%20height%3D%2223%22%20viewBox%3D%220%200%2022%2023%22%20fill%3D%22none%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M13.5325%2011.5125C13.622%2011.423%2013.622%2011.2779%2013.5325%2011.1884L8.25019%205.90606C7.98171%205.63757%207.98171%205.20227%208.25019%204.93379C8.51868%204.6653%208.95398%204.6653%209.22246%204.93379L15.315%2011.0264C15.494%2011.2054%2015.494%2011.4956%2015.315%2011.6745L9.22246%2017.7671C8.95398%2018.0356%208.51868%2018.0356%208.25019%2017.7671C7.98171%2017.4986%207.98171%2017.0633%208.25019%2016.7948L13.5325%2011.5125Z%22%20fill%3D%22white%22/%3E%3C/svg%3E") no-repeat center/cover;
}
.cta_button .button-outline:hover::after {
    filter: invert(1);
}

@media screen and (min-width: 1280px) {
    .cta_button {
        flex-wrap: nowrap;
    }
    .cta_button .button-outline {
        min-width: 330px;
        font-size: 20px;
    }
}


.arrow a {
	position: relative;
}

.arrow a::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 17px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 1280px) {
	.arrow a::after {
		right: 27px;
}
}
.visid .button {
	    padding: .5em 2em .5em 1.2em;
}


/* hLine -------------------- */

.hLine {
	overflow: hidden;
	font-weight: normal;
	text-align: center;
	font-size: 1.5rem;
	color: #767676;
	margin-top: 10px;
}
.hLine > span {
	display: inline-block;
	position: relative;
	padding: 0 .5em;
}
.hLine > span::before,
.hLine > span::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 99em;
	border-top: 1px solid #000;
	opacity: .3;
}
.hLine > span::before {
	right: 100%;
}
.hLine > span::after {
	left: 100%;
}







/*=====================================

仕事で使うPCだから、保証・保守まで含めて選びたい

======================================*/
.box01 {
	background: #e4eefa;
	    padding-bottom: 30px;
	padding-top: 30px;
}
.box01_text {

	background-image: url(/content/dam/jp-ext-hp-com/jp/ja/techdevice/business/business_pc_carepack/images/01_2.jpg);
	    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 20%;
}


@media screen and (min-width: 1280px) {
	.box01 {
		padding-bottom: 60px;
	}
.box01_text {
	width: 1220px;
    margin: 0 auto;
    padding: 30px 0;
	}
}








.box02 {
	background: #f4f4f4;
	text-align: center;
}


.box03 {
	text-align: center;
    margin: 30px auto;
}
.box03_box {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	margin-top: 30px;
	padding: 0 10px;
}
.box03_box .h3 {
	color: #002a7e; 
	font-weight: bold;
	margin-bottom: 20px;
}
.box03_box2 {
	background: #fff8eb; 
	padding: 30px 10px;
	border-radius: 30px;
}
.pack_list a {
	background: #002a7e;
	color: #fff;
	margin-bottom: 10px;
	font-size: 1.6rem;
    font-weight: bold;
	border-radius: 10px;
	display: block;
	line-height: 2.4;
}
.list01 img {
	width: 40px;
    margin-right: 10px;
}

@media screen and (min-width: 480px) {
	.box03 {
    margin: 60px auto;
}
}
@media screen and (min-width: 768px) {
.box03_box {
    grid-template-columns: 1fr 1fr;
}
}
@media screen and (min-width: 1280px) {
.box03 {
	width: 1220px;
	margin: 100px auto;
	}
	.box03_box {
		padding: 0;
}
	.pack_list li {
		font-size: 2rem;
	}
	.list01 img {
	width: 52px;
}
	.box03_box2 {
	padding: 30px;
}
	.pack_list a {
		font-size: 2.3rem;
	}
}




.box04 {
	text-align: center;
	padding: 10px;
}
@media screen and (min-width: 480px) {
	.box04 {
    margin: 60px auto;
}
}
@media screen and (min-width: 1280px) {
.box04 {
	width: 1220px;
    margin: 100px auto 0;
	padding: 0;
	}
}






.box05 {
	background: #fff8eb;
	text-align: center;
	margin-top: 30px;
}
.box05_text {
	text-align: center;
	padding-bottom: 60px;
}

@media screen and (min-width: 480px) {
	.box05 {
    margin: 60px auto;
}
}
@media screen and (min-width: 1280px) {
.box05_text {
	width: 1220px;
    margin: 100px auto 0;
	}
	.box05_text {
	padding-bottom: 100px;
}
}




.box06 {
	text-align: center;
	margin-top: 30px;
}
.box06_box {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
}
.box06_box p {
	margin-top: 5px;
}

@media screen and (min-width: 480px) {
	.box06 {
    margin: 60px auto;
}
}
@media screen and (min-width: 768px) {
	.box06_box {
    grid-template-columns: 1fr 1fr;
}
}
@media screen and (min-width: 1280px) {
.box06 {
	width: 1220px;
    margin: 100px auto 0;
	}
	
}







.box07 {
	text-align: center;
	margin-top: 60px;
}
.guide {
	margin-top: 10px;
}
.guide ul{
	display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, 1fr);
}
@media screen and (min-width: 480px) {
	.box07 {
    margin: 60px auto;
}
}
@media screen and (min-width: 1280px) {
.box07 {
	width: 1220px;
    margin: 100px auto 0;
	}
}

.guide li {
	border-bottom: 3px solid #ccc;
}
.guide a{
	display: block;
	width: 100%;
	text-decoration: none;
	color: #555;
}
.guide li:hover{
	color: #E7DA66;
	border-bottom: 3px solid #0096d6;
}
@media screen and (min-width: 1280px) {
.guide {
	width: 1220px;
    margin: 60px auto 10px;
}
}


.guide2 ul{
	display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, 1fr);
	padding-top: 5px;
}






.box08 {
	text-align: center;
	border: 2px #002a7e solid;
	margin: 30px 10px 0;
}
.box08_box {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	padding-top: 5px;
}
.box08_text {
	padding: 30px 10px 0;
}
.box08_text .h1{
    color: #024AD8;
    font-weight: bold;
}
.sab_title {
	background: #024AD8;
    color: #fff;
    border-radius: 29px;
    padding: 5px;
}
@media screen and (min-width: 480px) {
	.box08 {
    margin: 60px 10px;
}
}
@media screen and (min-width: 768px) {
	.box08_box {
    grid-template-columns: 1.5fr 1fr 1fr;
}
		.sab_title {
		font-size: 2rem;
}
}
@media screen and (min-width: 1280px) {
.box08 {
	width: 1220px;
    margin: 100px auto 0;
	}
	
}

.diagnosis {
	display: flex;
  flex-direction: column;
  gap: 10px;
	    padding-top: 45px;
}
.diagnosis_box01 {
	background: #cfe2c2;
	padding: 10px;
    border-radius: 20px;
}
.diagnosis_box02 {
	background: #c0ddfb;
	padding: 10px;
    border-radius: 20px;
}
.diagnosis_box03 {
	background: #c0ddfb;
	padding: 10px;
    border-radius: 20px;
}
.diagnosis_box04 {
	background: #fed966;
	padding: 10px;
    border-radius: 20px;
}

.diagnosis p {
	font-size: 1.3rem;
	color: #006699;
}
.diagnosis .pack {
	color: #000;
    font-size: 1.5rem;
}
.qa_box {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
	text-align: left;
	margin: 30px 0;
}
.qa_box > img {
	width: 30%;
	margin: 0 auto;
}
.qa_box div {
	border: 2px #024AD8 dashed;
    padding: 10px;
}
.qa_box .h4 {
	color: #024AD8;
	text-align: center;
	font-weight: bold;
}
.qa_box .h4 img {
	width: 45px;
    vertical-align: bottom;
    margin-right: 10px;
} 
.qa_box .h4 img:last-child {
	width: 30px;
} 
@media screen and (max-width: 767px) {
.diagnosis {
padding: 10px;
}
	
}
@media screen and (min-width: 768px) {
	.qa_box {
    grid-template-columns: 1fr 1fr;
}
}
@media screen and (min-width: 1280px) {
	.qa_box {
    grid-template-columns: .5fr 1.5fr 1.5fr 1.5fr;
}
	.qa_box > img {
		width: auto;
	}
}


.box09 {
	text-align: center;
	border: 2px #002a7e solid;
	margin: 30px 10px 0;
}

.box09 .table_basic {
	border: 2px solid #000;
	text-align: left;
	margin-top: 20px;
}
.box09 .table_basic th {
	padding: 10px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	vertical-align: middle;
}
.box09 .table_basic th img {
	width: 40%;
	    margin-bottom: 5px;
}
.box09 .table_basic td {
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	padding: 10px;
}
.box09 .table_basic td:last-child {
	border-right: none;
}
.box09_text {
	padding: 30px 10px 0;
}
.box09_text .h1{
    color: #024AD8;
    font-weight: bold;
}
.sab_title_img {
	    width: 60%;
    margin-top: 10px;
} 
@media screen and (min-width: 480px) {
	.box09 {
    margin: 60px 10px;
}
}
@media screen and (min-width: 768px) {
.sab_title_img {
	    width: 40%;
}
}
@media screen and (min-width: 1024px) {
.box09_titlebox {
	   display: grid;
    gap: 10px;
    grid-template-columns: 3fr 1fr;
}
	.sab_title_img {
		margin-top: 0;
		width: auto;
	}
}
@media screen and (min-width: 1280px) {
.box09 {
	width: 1220px;
    margin: 100px auto 0;
	}
	.box09_titlebox .sab_title {
		padding-top: 35px;
	}
}






.box10 {
	text-align: center;
	margin: 30px 10px 0;
}

.box10 .box10_text {
	border: 2px solid #000;
    padding: 30px 10px 0;
}
.box10_box {
	margin-top: 30px;
}
.box10_list {
	display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
}
.box10_list li:nth-child(n+2) {
	margin-top: 30px;
}
.point li:nth-child(n+2) {
	margin-top: 10px;
}
.checkmark li:nth-child(n+2) {
	margin-top: 10px;
}
.box10_text .h1{
    color: #024AD8;
    font-weight: bold;
}
@media screen and (min-width: 480px) {
	.box10 {
    margin: 60px 10px;
}
}
@media screen and (min-width: 1024px) {
	.box10_list {
		    grid-template-columns: 1fr 1fr 1fr;
	}
	.box10_list li:nth-child(n+2) {
	margin-top: 0;
}
	.box10_list li:nth-child(n+4) {
	margin-top: 20px;
}
}
@media screen and (min-width: 1280px) {
	.box10_list li:nth-child(n+2) {
	margin-top: 0;
}
.box10 {
	width: 1220px;
    margin: 100px auto 0;
	}
	.box10_list {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
}


.list_title {
	font-weight: bold;
    font-size: 1.8rem;
}
.list_tag {
	text-align: right;
	margin-bottom: 5px;
}
.list_tag .tag1 {
	background: #0071c4;
    color: #fff;
    text-align: right;
    display: inline-block;
    padding: 3px 10px;
    font-size: 1.2rem;
    border-radius: 4px;
	vertical-align: middle;
}
.list_tag .tag2 {
	background: #00b44b;
    color: #fff;
    text-align: right;
    display: inline-block;
    padding: 3px 10px;
    font-size: 1.2rem;
    border-radius: 4px;
	vertical-align: middle;
}

.list_tag .tag3 {
	background: #ed7f32;
    color: #fff;
    text-align: right;
    display: inline-block;
    padding: 3px 10px;
    font-size: 1.2rem;
    border-radius: 4px;
	vertical-align: middle;
}

.list_tag .tag4 {
	background: #ffbd00;
    text-align: right;
    display: inline-block;
    padding: 3px 10px;
    font-size: 1.2rem;
    border-radius: 4px;
	vertical-align: middle;
}
.list1 {
    background: #eef1f6;
    padding: 10px 8px;
    border-radius: 10px;
}
.list2 {
    background: #dfebf7;
    padding: 10px 8px;
    border-radius: 10px;
	border: 2px solid #002a7e;
}
.list3 {
    background: #dfebf7;
    padding: 10px 8px;
    border-radius: 10px;
}
.list_text {
	margin: 10px 0; 
}
.list_text a {
	color: #0071c4; 
	font-weight: bold;
}
.point_list {
	text-align: left; 
	font-size: 1.4rem; 
	margin: 10px 0;
}
.example {
	text-indent: -4em; 
	padding-left: 4em;
}
.checkmark{
   list-style:none;
	margin-top: 20px;
 }
 .checkmark li{ 
   position:relative;
	 padding-left: 1.5rem;
  }
 .checkmark li:before{
	 position: absolute;
    content: "";
    width: 5px;
    height: 10px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    display: inline-block;
    left: .5rem;
    top: .5rem;
    transform: rotateZ(45deg);
  }
.point {
	margin-top: 20px;
}

.list_box {
	margin-bottom: 10px;
}







.box11 {
	text-align: center;
	margin: 30px 10px 0;
}

.box11 .box11_text {
	border: 2px solid #000;
    padding: 10px;
}
.sheet {
	background: #e4eefa;
	padding: 30px 10px;
	border-radius: 30px;
}


.checkmark2 li{
	padding-left:35px;
	position:relative;
	text-align: left;
	font-size: 1.8rem;
}
.checkmark2 li:before,
.checkmark2 li:after{
	content:"";
	display:block;
	position:absolute;
}
.checkmark2 li:before{
width: 25px;
    height: 25px;
    background: #ffffff;
    border: 2px solid #000000;
    left: 0;
    top: 12%;
}
.checkmark2 li:after{
    border-left: 2px solid #000;
    border-bottom: 2px solid #000;
    width: 17px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 5px;
    top: 10px;
}

.recommendation {
	    background: #002a7e;
    color: #fff;
    margin: 25px 0;
    padding: 10px;
    font-size: 2rem;
    font-weight: bold;
    display: inline-block;
    border-radius: 25px;
    width: 100%;
}

@media screen and (min-width: 480px) {
	.box11 {
    margin: 60px 10px;
}
}
@media screen and (min-width: 1280px) {
.box11 {
	width: 1220px;
    margin: 100px auto 0;
	}
	.sheet {
	padding: 30px;
}
	
.checkmark2_box {
	width: 60%;
	margin: 0 auto;
}
	.checkmark2 li{
		font-size: 2.5rem;
}
	.recommendation {
		width: 70%;
	}
}








.box12 {
	text-align: center;
	margin-top: 60px;
	padding: 10px;
}

.buy {
	background: #e4eefa;
	margin-top: 30px;
	    padding: 30px;
    text-align: left;
	text-indent: -2rem;
    padding-left: 4rem;
}
.buy li:nth-child(n+2) {
	margin-top: 20px;
}
.buy p {
	font-size: 1.8rem;
}
.buy img {
	margin-top: 10px;
}
@media screen and (min-width: 480px) {
	.box12 {
    margin: 60px auto;
}
}
@media screen and (min-width: 1280px) {
.box12 {
	width: 1220px;
    margin: 100px auto 0;
	padding: 0;
	}
	.buy {
    padding-left: 5rem;
}
}




.box13 {
	text-align: center;
	margin-top: 60px;
}
.box13 img {
	padding: 10px;
}
@media screen and (min-width: 480px) {
	.box13 {
    margin: 60px auto;
}
}
@media screen and (min-width: 1280px) {
.box13 {
	width: 1220px;
    margin: 100px auto 0;
	}
	.box13 img {
	padding: 0;
}
}

.box14 {
	background: #f4f4f4;
}
.box14_text {
text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
    margin-top: 30px;
	
}
.img14 {
	width: 30%;
}
@media screen and (min-width: 480px) {
	.box14_text {
    margin: 60px auto;
}
}
@media screen and (min-width: 768px) {
.img14 {
	width: auto;
}
}
@media screen and (min-width: 1280px) {
.box14_text {
	width: 1220px;
    margin: 100px auto 0;
	}
}






/* リストの見た目 */
#result-container {
	margin-bottom: 20px;
}
.custom-check {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 8px 0;
}

.custom-check input {
  display: none; /* 本物のチェックボックスを隠す */
}

/* 自作の四角い箱 */
.checkmark3 {
  width: 22px;
  height: 22px;
  border: 2px solid #333;
  border-radius: 4px;
  margin-right: 12px; /* 項目の前の余白 */
  position: relative;
  display: inline-block;
  transition: all 0.2s;
	padding: 10px;
}

/* チェックが入った時の色 */
.custom-check input:checked + .checkmark3 {
  background-color: #e4eefa;
  border-color: #000;
}

/* 白いレ点（チェックマーク）の作成 */
.checkmark3::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 11px;
  border: solid #000;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
  display: none; /* 最初は隠す */
}

.custom-check input:checked + .checkmark3::after {
  display: block; /* チェックされたら表示 */
}

/* 診断ボタン */
#shindanBtn {
  padding: 10px 20px;
  background: #024AD8;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}
#shindanBtn:hover {
  background: #555;
}

.label-text {
	font-size: 1.5rem;
}

.result-content div {
	border: 1px solid #ccc;
    padding: 20px;
	text-align: left;
}
@media screen and (min-width: 768px) {
	#result-container {
		margin: 20px 0 30px;
	}
.check-list {
	width: 70%;
    margin: 0 auto 20px;
}
.label-text {
	font-size: 2rem;
}
}
@media screen and (min-width: 1024px) {
.check-list {
	width: 50%;
}
	#shindanBtn {
		font-size: 2.3rem;
		padding: 10px 20px;
	}
}
@media screen and (min-width: 1280px) {
.label-text {
	font-size: 2.3rem;
}
}