@media print, screen and (min-width: 769px) {
/* common ---------------------------------------------------------------*/
.Green-line01{border-bottom: 1px solid var(--main-color02);	margin: 40px auto;}	
.white-line{border-bottom: 1px solid #FFFFFF;	margin: 10px auto;}	
.orenge{color: #ea6800;}	
.yerrow{color: #ffff5d}	
.s-greentxt{color: var(--main-color01);}	
.SVfooter_box{background-color:#D7EBD7;}
	
	#MainContent { overflow: hidden;}
	
/* TitleStyle ---------------------------------------------------------------*/
	
	.service--lead  { position: relative;}
	.service--lead::after { content:''; position: absolute; left:50%; bottom:0; transform:translateX(214px);
		height:900px; width:799px; mix-blend-mode: multiply;
		background:url("../images/bg_top_03.svg") right bottom no-repeat; background-size: 100% auto;
	}
	.service--lead .InnerBox { position: relative; overflow: hidden; z-index: 3;}
	.service--lead .TitleStyle_SV_small { text-align: center;}
	.service--lead .TitleStyle_SV_small span { position: relative;}
	.service--lead .TitleStyle_SV_small span::after { content:''; position:absolute; left: -2px; right: -2px; bottom: -4px;
		width:100%; height: 2px; background: #00a300;
	}
	
.TitleStyle_SV01{font-size: /*3.5rem*/ 6rem; color: black; font-weight:900; letter-spacing: 2px; line-height: 1.1;}
.TitleStyle_SV02{ margin-bottom:.7em; font-size: 3rem; font-weight:600;letter-spacing:.08em; line-height: 1.5; text-align: center; color: #fff;}
	.TitleStyle_SV02 span { color: #e8ed35;}
	
	.contactBox01 { padding: 70px 0 70px; background: #009600;}
	.contactBox01--footer { padding: 20px 0 40px; }
	.contactBox01 .inner { max-width:1000px; margin:0 auto;}
	.contactBox01 p { color: #fff; line-height: 1.72222;}
	
	.btn--contact { position: relative; margin-top: 20px; padding:20px 0 0;}
	.btn--contact img { display: block; max-width:100%; height: auto; transition:.4s all;}
	.btn--contact a { display: block; max-width:580px; margin:0 auto; 
		background: url("../images/btn_contact_02_on.svg") center center no-repeat; 
		background-size:100% auto; transition:.4s all;}
	.btn--contact a:hover img { opacity: 0; mix-blend-mode:screen;}
	.btn--contact::before, .btn--contact::after { content:''; position: absolute;}
	.btn--contact::before { 
		left: 0; top:0; transform: translateX(0);
		width:125px; height:177px; background: url("../images/img_top_01_01.png") left top no-repeat; background-size:100% auto;
	}
	.btn--contact::after { 
		right: 0; top:0; transform: translateX(0);
		width:140px; height:190px; background: url("../images/img_top_01_02.png") right top no-repeat; background-size:100% auto;
	}
	
	.service--feature { position: relative;}
	.service--feature::after { content:''; position: absolute; top:0; left: 50%; transform:translateX(138px);
		height:839px; width:794px; mix-blend-mode: screen;
		background: url("../images/back_rleft.svg") left top no-repeat; background-size: 100% auto;
	}
	.service--feature .InnerBox { position: relative; overflow: hidden; z-index: 3;}
	
	.service--feature--subTtl { position: relative; margin: 60px 0 20px; padding-left: 63px; 
		font-size:4rem; font-weight: 900; letter-spacing: .08em;}
	.service--feature--subTtl::before { content:''; position: absolute; left: 0; top: 50%; transform: translateY(0);
		width:50px; height:3px; background: #000;
	}
	.service--feature--inner { padding: 40px 60px 30px; border-radius:20px; background: #fff;}
	.service--feature--inner dl { display: flex; padding: 20px 0 10px; border-bottom:1px solid #45ab35;}
	.service--feature--inner dl:last-of-type { border: none;}
	.service--feature--inner dt { width:290px;}
	.service--feature--inner dt img { display: block; height: 43px; }
	.service--feature--inner dd { width:calc(100% - 290px); padding: 20px 0;}
	.service--feature--inner dd p { font-weight: 500;}
	.service--feature--inner dd .link--service--right { margin-top: 20px; text-align: right;}
	.service--feature--inner dd .link--service--right a { display: block; padding-right:2em; 
		font-size:1.8rem; font-weight: 700; color: #45ab35; letter-spacing: 0.08em; line-height: 2;
		background:url("../images/arrow_r_green.svg") right center no-repeat;
		background-size: 28px auto;
	}
	
	
.TitleStyle_SV03{
	font-family:"Noto Sans JP", serif;
	font-size:6rem; 
	font-weight: 900; 
	line-height: 1.5;
	letter-spacing:2.5px;
	color:black;
	}
.TitleStyle_SV03 .EN{
    font-family: "Jost", serif;
    font-optical-sizing: auto;
    font-style: normal;
    etter-spacing: 2px;
	font-size:3.6rem; 
	font-weight: 600; 
	line-height: 1.5;
	color:black;
	}	
	
.TitleStyle_SV03  .smallgreen{
    font-family: "Jost", serif;
    font-optical-sizing: auto;
    font-style: normal;
	font-size:20px; 
	font-weight:500;
	line-height: 1.5;
	color: var(--main-color02);	
	margin-bottom: 20px;
	margin-left: 8px;
	letter-spacing:1px;
	}
	
.TitleStyle_SV_small { font-size: 3.2rem;font-weight: 900; padding: 10px 0 20px;line-height: 1.5; letter-spacing: .08em;}
	.TitleStyle_SV_small span { position: relative; color: #00a300;}
	.TitleStyle_SV_small span::after { content: ''; position: absolute; left: 0; bottom:-6px; width:100%; height: 0; background: #00a300;}
	
.SVfooterTitle{font-size: 2.7rem;font-weight:800; padding-bottom: 15px;line-height: 1.5; letter-spacing: 2px;text-align: center;}
.SVfooterTitle span{position: relative;padding-left: 35px;}	
.SVfooterTitle span::before{
		position: absolute;
		content: "";
		display: block;
		background-image: url("../images/mony_icon.svg");
		background-size: cover;
		background-repeat: no-repeat;
		width: 25px;
		height: 25px;
		top: 8px;
		left: 0;
	}	
	
	
.smallgreen{
    font-family: "Jost", serif;
    font-optical-sizing: auto;
    font-style: normal;
	font-size:20px; 
	font-weight:500;
	line-height: 1.5;
	color: var(--main-color02);	
	letter-spacing: 1.5px;
	padding-bottom: 5px;
	}	

.TitleStyle_SV04{position: relative; font-size: 2.7rem; color: black;font-weight:600;letter-spacing: 2px; padding-left: 40px;}	
.TitleStyle_SV04::before{
	content: "";
	position: absolute;
	display: block;
	background-image: url("../images/checkbox.svg");
	background-repeat: no-repeat;
	background-size:cover;
	width: 31px;
	height: 23px;
	bottom: 13px;
	left: 0;
	
	}	
	
	

/* Liststyle ---------------------------------------------------------------*/	
.Liststyle_SV{
  display: grid;
  width: fit-content;
  column-gap: 4em;
  grid-auto-flow: column;
  grid-template-rows: repeat(3, auto);
	}

.Liststyle_SV li{position: relative;font-size: 2rem;line-height: 1.3; padding: 5px 0; padding-left: 1.1em; }	
.Liststyle_SV li::before{
	display: block;
	position: absolute;
	content: "";
	width: 9px;
	height: 9px;
	border: 2px solid black;
	top:13.5px;
	left: 0;
	}
	
.Liststyle_SV02{ width: 1200px; max-width:96%; margin:0 auto; display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 27px; grid-row-gap: 40px;}	
.Liststyle_SV02 li{ 
	position: relative;
	display: flex; min-height: 221px;
	flex-direction: column; justify-content: center; align-items:center; 
	font-size:25px; line-height: 1.6; text-align: center;
	border:6px solid #dfe3e2;
	border-radius: 20px;
	background: #fff;
}	
	.Liststyle_SV02 li span { display: inline; color: #dd3c09;}	
	.Liststyle_SV02 li span span { color: #000;}
	
.Liststyle_SV02 li::before{
	display: block;
	position: absolute;
	content: "";
	width: 35px;
	height: 35px;
	top:0; left: 50%; transform: translate(-50%, -50%);
	background:#fff url("../images/icn_check_01.svg") center center no-repeat; background-size:100%; z-index: 2;
	}
	
	.google--il01 { position: absolute; right: 0; bottom:0; max-width:200px !important; height:204px; transform: translate(-50%, 5%);}
	.google--il02 { transform: translate(-55%, 5%);}
	.google--il03 { transform: translate(-50%, 5%);}
	
	.google--il01 img { max-height: 100% !important;}
	
/* FlexBox ---------------------------------------------------------------*/		
.SVflex{display: flex;justify-content: space-between; gap:30px;}	
.SVflex_r{width: 55%}
.SVflex01{ display: grid; grid-template-columns: repeat(2, 1fr); gap:24px;}
	
	.service--reason--inner { display: flex; flex-direction: column; gap: 45px;}
	.SVflex02 { display: flex; justify-content: center; align-items: flex-start; gap:40px;
		padding: 47px 50px;
		background: #f0f0f0; border-radius: 20px;
	}
	.SVflex02.even { flex-direction: row-reverse;}
	
.SVflex03{display: flex;justify-content: center;align-items: flex-start; flex-wrap: wrap; gap:30px;}	
.SVflex04{display: flex;justify-content: center;align-items: flex-start;gap:40px; margin-top: 20px;}
.SVflex04_r{width: 63%;}		
.SVflex02 img{width: 100%; max-width: 450px; border-radius: 20px; }
	.SVflex02 p { font-weight: 500;}

.SVflex_r p{font-weight: 500;}	
	
.CyberLogo-img img{width: 100%; max-width: 100px;padding-top: 10px;}	
	
/* main ---------------------------------------------------------------*/	
	
.Scontent01{position: relative;}	
.Scontent01::after{
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	/*border-bottom: 1px solid black;*/
	bottom: -40px;
		
	}	
.illustBox{
	position: absolute;
	right: 0;
	bottom: 0;
    width: 100%; 
	max-width: 300px!important;	
	}		  
	
	.QuBox{
		width: 83.333333333333%;
		display: flex;
		flex-direction: column;
	    gap:30px;
	}	

.Qtitle { display: flex; justify-content: flex-start;}
	.Qtitle img { width:54px; height:54px;}
.QuBox {margin: 80px auto;}	
.QuBox h3{display: block;font-size: 27px; font-weight: 700; padding-left: 20px; letter-spacing: 2px;width: 310px;}
	
	.Scontent02 { padding:35px 50px; border-radius: 20px; background: #fff;}
	.Scontent02 .li--innerFx { display: flex; justify-content:space-between;}
	.Scontent02 .li--innerFx .li--tag { width:168px; height:37px; transform:translateX(-50px); padding: 0 37px; font-weight: 700; line-height: 37px; color: #fff; background: #45ab35; box-sizing: border-box; border-radius: 0 20px 20px 0;}
	.Scontent02 .TitleStyle_SV_small { margin:25px 0 25px; padding: 0; font-size:2.4rem; font-weight: 700; text-align: left;}
	.Scontent02 .li--innerFx img { width:185px; margin-left: 25px;}
	
.Scontent04{background-color: #FFFFFF; padding: 40px; border-radius: 30px;}
.Scontent05{width: 100%; max-width: 250px;background-color:var(--main-color02); border-radius: 15px; padding: 20px 40px;}	
.Scontent05 p{color: #FFFFFF; font-size: 1.75rem; font-weight: 500;text-align: center;}	
.Scontent05 h3{color: #FFFFFF; font-size: 2.2rem; font-weight: 600;text-align: center;}		

.SVtitle_l{width: 30%;}	
.SVtitle_r{width: 90%; font-weight: 500px!important;}	
	
	
	
	
	
/* SVfotter ---------------------------------------------------------------*/	
.SVFtable{width: 100%; max-width: 650px; margin: 20px auto;}
.SVFtable th , .SVFtable td	{padding: 10px;}
.SVFtable th{width: 50%; background-color:  var(--main-color01); color: #FFFFFF; text-align:center; border-bottom: 1px solid #FFFFFF;font-size: 2rem; font-weight: 600;}		
.SVFtable td{width: 50%; background-color:  #F3F3F3; color: black; text-align:center; border-bottom: 1px solid #CCC9C9;font-size: 2rem; font-weight: 600;}		
.SVFlistBox{text-align: center; width: 100%;max-width: 716px; margin: 0 auto;}
.SVFlist{text-align: left;}	
.SVFlist li{line-height: 1.4;padding: 5px 0; padding-left: 15px;}	
.SVFlist li::before{display: inline; content: "※";  }	
	
	/* service--index
	-------------------------------------------------- */
	.service--index--lead { position: relative; overflow-x: hidden;}
	.service--index--lead {}
	.service--index--lead::after { content: ''; position: absolute; left: 0; bottom:0; transform: translateX(-12%);
		width:518px; height:458px;
		background: url("../images/bg_tre_04.png") left bottom no-repeat;
		background-size: 100% auto; background-blend-mode:  multiply;
	}
	.service--index--lead .InnerBox { position: relative; z-index: 3;}
	.service--index--lead .InnerBox .fx { 
		display: flex; justify-content: space-between; flex-direction: row-reverse; max-width:1200px; gap:50px;
	}
	.service--index--lead .InnerBox .ph { width:38%;}
	.service--index--lead .InnerBox .txt { width:57.1666666%;}
	.service--index--lead .InnerBox .txt .ttl {
		margin-bottom: 20px;
		font-size:3.5rem; font-weight: 900; letter-spacing: .08em; text-align: center; color: #fff;
		background: #009600;
	}
	.service--index--lead .InnerBox .txt p { font-size:18px;}
	
	.service--index--list01 { background: #d7ebd7;}
	.list01--wrap { margin-bottom: 50px; padding:20px 50px 30px; background: #fff; border-radius: 20px;}
	.list01--wrap .CheckboxTitle02::before {
		top:27px;
		background: url("../images/checkbox.svg") left center no-repeat;
		background-size: 100% auto;
	}
	.serviceflex { display: flex; gap:50px;}
	.serviceflex .txt { width:calc(100% - 255px);}
	.serviceflex .img { display: flex; justify-content: center; align-items: flex-end;
		width:225px; max-height: 210px;}
	.serviceflex .img img { display: block; margin:0 auto; object-fit: contain;}
	
	
	
	.service--guide--ttl {}
	.service--guide--ttl h3 { padding: 50px 12.63% 15px; 
		font-size:18px; font-weight: 700; line-height: 1.72;}
	.flexBox05.service--guide--list { justify-content: center;}
	.flexBox05.service--guide--list .img { width:100%; max-width:380px;}
	.flexBox05.service--guide--list .img img { display: block; max-width:308px; margin:60px auto 0;}
	
	
	/* service--price
	-------------------------------------------------- */
	.service--price { position: relative; background: #d7ebd7;}
	.service--price::after { content:''; position: absolute; left: 0; bottom:0; transform: translate(-18.125%,0);
		width:805px; height:839px; mix-blend-mode: multiply;
		background: url("../images/back_rleft.svg") left bottom no-repeat; background-size: 100% auto; z-index: 1;
	}
	.service--price .ttl--area { position: relative; margin-bottom: 1.3em; font-family:"Noto Sans JP", serif; text-align: center;}
	.service--price .ttl--area .ttl { font-size:1.88em; font-weight: 900;}
	.service--price .ttl--area .ttl--sub { margin-top: 20px; font-weight: 500;}
	.service--price .ttl--area .note { margin-top: 15px;}
	
	
	.service--price--cost {
		 margin-top: 40px; padding:75px 16.3333%; background: #fff; border-radius: 20px;
	}
	.service--price--cost .ttl--area .ttl span { position: relative; padding-left: 1.05em;}
	.service--price--cost .ttl--area .ttl span::before { content:''; position: absolute; left: 0; top:50%; transform: translateY(-44%);
		width:26px; height:26px; background: url("../images/mony_icon.svg") center center no-repeat; background-size:100% auto;
	}
	.service--price--cost .dl--cost { display:grid; grid-template-columns: repeat(2, 1fr);}
	.service--price--cost .dl--cost dt,
	.service--price--cost .dl--cost dd { padding: .15em 0;
		font-size:1.36em; text-align: center; font-weight: 700; letter-spacing: 0.08em;
	}
	.service--price--cost .dl--cost dt { background: #009600; border-bottom:1px solid #4bb54b; color: #fff;}
	.service--price--cost .dl--cost dd { background: #f3f3f3; border-bottom:1px solid #ccc9c9;}
	.service--price--cost .ul--cost { margin-top: 20px; font-size:0.823em;}
	
	
	.service--price--simulation { padding:160px 0 0;}
	.service--price--simulation .ttl--area::after { content:''; position: absolute; left: 50%; top:0; transform:translate(220px, -66%);
		width:155px; height:150px; background: url("../images/service/img_03_01.svg") left bottom no-repeat; background-size:100% auto;
	}
	
	.ul--cost--simulation { display:grid; grid-template-rows:subgrid; grid-template-columns: repeat(3, 1fr); gap:35px;	margin-top: 125px;}
	.ul--cost--simulation li { 
		display: grid; grid-template-rows: subgrid; grid-row:span 3; gap:8px;
		position: relative; padding: 92px 20px 30px; text-align: center; background: #fff;}	
	.ul--cost--simulation li .type { position: absolute; top:0; left: 50%; transform:translate(-50%, -55%);
		display: flex; align-items: center; justify-content: center; flex-direction: column;		
		width:170px; height:170px; border-radius: 90px;
		font-size:1.4em; font-weight: 700; color: #fff; line-height: 1.2; }
	.ul--cost--simulation li:nth-child(1) .type { background: #74c06b;}
	.ul--cost--simulation li:nth-child(2) .type { background: #45ab35;}
	.ul--cost--simulation li:nth-child(3) .type { background: #009600;}
	.ul--cost--simulation li .type .price { font-size:1.66em;}
	.ul--cost--simulation li .type .price span { font-size:.8em;}
	.ul--cost--simulation li .type small { display: block; font-size:.59333em;}
	
	.ul--cost--simulation .dl--sim { display: flex; align-items: center; padding: 22px 0; border-radius: 10px; background: #f1f8f1;}
	.ul--cost--simulation .dl--sim dt { width:50%; 
		font-size:1.4em; font-weight: 700; letter-spacing: .08em; text-align: center;}
	.ul--cost--simulation .dl--sim dd { width:50%;
		font-size:1.76em; font-weight: 900; letter-spacing: .08em; text-align: center; line-height: 1.3; border-left:1px solid #b2dcab;}
	.ul--cost--simulation .dl--sim dd small { font-size:.6em; font-weight: 500;}
	.ul--cost--simulation .dl--sim dd .sub { display: block; font-size:.45em; font-weight: 400;}
	.ul--cost--simulation .dl--sim dd .note { display: block; font-size:.4em; font-weight: 400; letter-spacing: 0;}
	
	.ul--cost--simulation .dl--sim.total { color: #fff; background: #404040;}
	.ul--cost--simulation .dl--sim.total dt { border-color: #787878;}
	.ul--cost--simulation + .note { margin-top: 15px;}
	
	
	.service--price--flow { position: relative; padding:155px 0 100px; overflow: hidden; z-index: 3;}
	.service--price--flow .InnerBox { position: relative; z-index: 3;}
	.service--price--flow .ttl--area::after { content:''; position: absolute; left: 50%; top:0; transform: translate(-280px, -69%);
		width:107px; height:150px; background: url("../images/service/img_03_02.svg") left bottom no-repeat; background-size:100% auto;
	}
	.ul--flow--wrap { padding:60px 0; background: #fff; border-radius: 20px;}
	.ul--flow { max-width:1000px; margin:0 auto;}
	.ul--flow li { display: flex; align-items: center; margin-bottom: 30px;}
	.ul--flow li .step { position: relative; display: flex; justify-content: center; align-items: center;
		width:157px; height: 112px; margin-right: 22px;
		background: #009600 url("../images/bg_tre_03.svg") right bottom no-repeat; background-size:auto 90%; /*background-blend-mode: multiply;*/
	}
	.ul--flow li .step::after { content: ''; position: absolute; left: 50%; bottom:0; transform:translate(-50%, 20px);
		width:0; height:0; border-top:12px solid #006133; border-left: 7px solid transparent; border-right:7px solid transparent; 
	}
	.ul--flow li:last-of-type .step::after { border-top-width:0;}
	
	.ul--flow li .step p { font-size:1.17647em; font-weight: 700; color: #fff; text-align: center; letter-spacing: .08em;}
	.ul--flow li .step p small { display: block; font-size:.9em;}
	.ul--flow li .txt { width:calc(100% - 157px - 22px);}
	.ul--flow li .txt .note {}
	
	
/* レスポンシブ ---------------------------------------------------------------*/	
@media print, screen and (min-width: 1231px) {	
.SVflex04{display: flex;justify-content: flex-start;align-items: flex-start; flex-wrap: wrap; gap:70px;}		
}
	
@media print, screen and (max-width: 1230px) {	
.marginBox180{padding-bottom: 180px;}	
.SVflex04{display: flex;justify-content:flex-start!important;align-items: flex-start;gap:20px;}	
.Liststyle_SV{
  width: 100%;
  display: block;
padding-bottom:190px!important;	
	}	
.illustBox{
	position: absolute;
	left: 0;
	bottom:-20px!important;
    width: 100%; 
	max-width: 200px!important;	
	}	
	
.Liststyle_SV02{ 
  width: 100%;
  display: block!important;
  margin: 0;	
max-width: 430px;
}		
	}
	
	
	
@media print, screen and (max-width: 1164px) {	
.QuBox{
		width: 100%;
		background-color: #FFFFFF;
		border-radius: 30px;
		padding: 40px;
		display:block;
		justify-content: center;
		align-items: center;
	}	
.Qtitle{display: flex;align-items: center;width:60%; margin-bottom: 20px;}		
	
	}	
	
/* レスポンシブ ここまで---------------------------------------------------------------*/		
	

/* アニメーション ---------------------------------------------------------------*/
.c-marker {
	background: -webkit-linear-gradient(bottom, rgb(255,250,153) 50%, transparent 50%);
	background: -moz-linear-gradient(bottom, rgb(255,250,153) 50%, transparent 50%);
	background: linear-gradient(bottom, rgb(255,250,153) 50%, transparent 50%);
	background-repeat: no-repeat;
	background-size: 200% .8em; 
	background-position: 100% .5em;
	transition: 2s;
}
.c-marker.is-active{
    background-position: 0% .5em;
}
	
	
	
}




