/* CSS Document */
@charset "UTF-8";

@media(min-width:768px){
	.mobile{
		display: none !important;
	}
	.mb25{
		margin-bottom:25px !important;
	}
	.mb50{
		margin-bottom:50px !important;
	}
    a#totop{
        width:50px;
        height: 50px;
        position: fixed;
        bottom:50px;
        right:24px;
        background-image:url("../images/totop.svg");
        background-repeat: no-repeat;
        background-size:50px;
        background-position: center top;
        display: none;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		z-index: 1;
    }
    a#totop:hover{
        background-position: center bottom;
    }
	div.youtube{
		width:100%;
		height: 550px;
	}
	div.sidepop{
		position: fixed;
		right:0;
		bottom:300px;
		margin:auto;
		background-image:url("../images/mainvisual.webp") no-repeat;
		background-position: left top;
		background-size:auto;
		background-color:#003;
		width:260px;
		height: 190px;
		box-sizing: border-box;
		z-index: 10;
		box-shadow: -3px 3px 9px rgba(0,0,0,0.35);
		border-top-left-radius: 12px;
		border-bottom-left-radius: 12px;
	}
	div.sidepop a{
		display: block;
		width:100%;
		font-size:16px;
		height: 3em;
		line-height: 1.25em;
		padding-top:125px;
		background:url("../images/logo_nebulashift_pop.png") center top 25px no-repeat;
		color:#fff;
		text-align: center;
	}
	div.sidepop p.close{
		width:25px;
		height: 25px;
		background:url("../images/icon_close.svg") no-repeat;
		background-size:25px;
		position: absolute;
		top:10px;
		right:10px;
		text-indent: 100%;
		overflow: hidden;
		white-space: nowrap;
		cursor: pointer;
		z-index: 20;
	}
	div.sidepop:hover{
		background-color:#000;
	}
}
@media(max-width:767.99px){
	.desktop{
		display: none !important;
	}
	.mb25{
		margin-bottom:15px !important;
	}
	.mb50{
		margin-bottom:25px !important;
	}
	div.sidepop{
		display: none;
	}
    a#totop{
        width:30px;
        height: 30px;
        position: fixed;
        bottom:30px;
        right:10px;
        background-image:url("../images/totop.svg");
        background-repeat: no-repeat;
        background-size:30px;
        background-position: center top;
        display: none;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		z-index: 2;
    }
    a#totop:hover{
        background-position: center bottom;
    }
	div.youtube{
		width:100%;
		height: 200px;
	}
}
@media(min-width:768px){
	body.topimage{
		background:url("../images/scsk_bg.jpg") 50% 50% no-repeat;
		width:100%;
		background-size:cover;
		background-attachment: fixed;
		min-width: var(--min-width);
	}
}
body.topimage{
	background:url("../images/scsk_bg.jpg") 50% 50% no-repeat;
	width:100%;
	background-size:cover;
	background-attachment: fixed;
	min-width: var(--min-width);
}

@media(min-width:768px){
	div.wrapper{
		width:100%;
		min-width:var(--min-width);
		/*max-width:var(--max-width);*/
		overflow: hidden;
		position: relative;
	}
	div.wrapper.white{
		background:var(--offwhite-color);
	}
	div.wrapper.trans{
		background:rgba(245,245,245,0.8);
	}
	div.wrapper.gray{
		background:var(--gray-color);
	}
	div.wrapper.lightblue{
		background:var(--lightblue-color);
	}
	div.wrapper.darkgray{
		background:var(--darkgray-color);
	}
	div.wrapper.red{
		background-color:var(--red-color);
	}
	div.wrapper.openshift{
		background-color:var(--red-color);
		background-image:url("../images/icon_hexagon.svg");
		background-position: center top;
		background-size:900px;
		box-shadow:0px 0px 12px rgba(0,0,0,0.35);
		padding-bottom:70px;
	}
	div.wrapper.openshift + div.wrapper::after{
		content: "";
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 30px solid transparent;
		border-left: 30px solid transparent;
		border-top: 35px solid var(--red-color);
		border-bottom: 0;
		margin:auto;
		top:0;
		left:0;
		right:0;
	}
	div.wrapper.bg{
		background-image:url("../images/mainvisual.webp");
		background-size:cover;
		background-position: center center;
		background-repeat:no-repeat;
	}
	div.wrapper.transparent{
		height: 500px;
		background:none;
	}
	div.wrapper.footer{
		background:#111;
		border-top:10px solid #222;
		padding:100px 0 50px;
		box-shadow: 3px 3px 12px rgba(0,0,0,0.35);
	}
	div.wrapper.h2{
		height: 150px;
		background-size:cover;
		background-position: center center;
		margin-top:148px;
	}
	div.wrapper.h2.about_container{
		background-image:url("../images/h2_about_container_584620387.jpg");
		background-position: center top 40%;
	}
	div.wrapper.h2.why_openshift{
		background-image:url("../images/h2_why_openshift_646549259.jpg");
	}
	div.wrapper.h2.about_openshift{
		background-image:url("../images/about_openshit_725304564.jpg");
	}
	div.wrapper.h2.lineup{
		background-image:url("../images/lineup_670540934.jpg");
	}
	div.wrapper.h2.blog{
		background-image:url("../images/blog_382893376.jpg");
	}
	div.wrapper.h2.tutorial{
		background-image:url("../images/h2_tutorial_678078452.jpg");
	}
	div.wrapper.h2.lifecycle{
		background-image:url("../images/lifecycle_629286735.jpg");
	}
	div.wrapper.h2.trouble{
		background-image:url("../images/h2_trouble_629286735.jpg");
	}
	div.wrapper.h2.release_note{
		background-image:url("../images/releasenote_680042358.jpg");
	}
	div.wrapper.h2.faq{
		background-image:url("../images/faq_460709467.jpg");
	}
	div.wrapper.h2.security{
		background-image:url("../images/security_301823210.jpg");
	}
	div.wrapper.h2.news{
		background-image:url("../images/h2_news.jpg");
	}
	div.wrapper.h2.download{
		background-image:url("../images/download_639728599.jpg");
		background-position: right center;
	}
	div.wrapper.h2.casestudy{
		background-image:url("../images/case_640963539.jpg");
		/*background-position: right center;*/
	}
	div.wrapper.h2.scsk{
		background-image:url("../images/scsk_698197379.jpg");
		background-position: center center;
	}
	div.wrapper.h2.installation{
		background-image:url("../images/installation_209743399.jpg");
		background-position: center top 25%;
	}
	div.wrapper.h2.developer{
		background-image:url("../images/developer_630334234.jpg");
		background-position: center top 65%;
	}
	div.wrapper.h2.solution{
		background-image:url("../images/solution_536702825.jpg");
		background-position: center center;
	}	
	ul.footer{
		display: flex;
		justify-content: space-between;
		gap:25px;
		font-size:16px;
		margin-bottom:50px;
	}
	ul.footer a{
		color:#fff;
		position: relative;
	}
	ul.footer a::after{
		content: "";
		position: absolute;
		width:0%;
		height: 1.5px;
		background:#fff;
		margin:auto;
		left:0;
		right:0;
		bottom:-10px;
		transition: width 0.2s;
	}
	ul.footer a:hover::after{
		width:100%;
		transition: width 0.2s;
	}
	a.scsk_footer{
		display: block;
		margin-bottom:25px;
	}
}
@media(max-width:767.99px){
	div.wrapper{
		width:100%;
		min-width:var(--min-width);
		/*max-width:var(--max-width);*/
		overflow: hidden;
		position: relative;
	}
	div.wrapper.white{
		background:var(--offwhite-color);
	}
	div.wrapper.trans{
		background:rgba(245,245,245,0.8);
	}
	div.wrapper.gray{
		background:var(--gray-color);
	}
	div.wrapper.lightblue{
		background:var(--lightblue-color);
	}
	div.wrapper.darkgray{
		background:var(--darkgray-color);
	}
	div.wrapper.red{
		background-color:var(--red-color);
	}
	div.wrapper.openshift{
		background-color:var(--red-color);
		background-image:url("../images/icon_hexagon.svg");
		background-position: center top;
		background-size:900px;
		box-shadow:0px 0px 12px rgba(0,0,0,0.35);
		padding-bottom:70px;
	}
	div.wrapper.openshift + div.wrapper::after{
		content: "";
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 30px solid transparent;
		border-left: 30px solid transparent;
		border-top: 35px solid var(--red-color);
		border-bottom: 0;
		margin:auto;
		top:0;
		left:0;
		right:0;
	}
	div.wrapper.bg{
		background-image:url("../images/mainvisual.webp");
		background-size:cover;
		background-position: center center;
		background-repeat:no-repeat;
	}
	div.wrapper.transparent{
		height: 500px;
		background:none;
	}
	div.wrapper.footer{
		background:#111;
		border-top:10px solid #222;
		padding:50px 0 50px;
		box-shadow: 3px 3px 12px rgba(0,0,0,0.35);
	}
	div.wrapper.h2{
		height: 80px;
		background-size:cover;
		background-position: center center;
		margin-top:88px;
	}
	div.wrapper.h2.about_container{
		background-image:url("../images/h2_about_container_584620387.jpg");
		background-position: center top 40%;
	}
	div.wrapper.h2.why_openshift{
		background-image:url("../images/h2_why_openshift_646549259.jpg");
	}
	div.wrapper.h2.about_openshift{
		background-image:url("../images/about_openshit_725304564.jpg");
	}
	div.wrapper.h2.lineup{
		background-image:url("../images/lineup_670540934.jpg");
	}
	div.wrapper.h2.blog{
		background-image:url("../images/blog_382893376.jpg");
	}
	div.wrapper.h2.tutorial{
		background-image:url("../images/h2_tutorial_678078452.jpg");
	}
	div.wrapper.h2.lifecycle{
		background-image:url("../images/lifecycle_629286735.jpg");
	}
	div.wrapper.h2.trouble{
		background-image:url("../images/h2_trouble_629286735.jpg");
	}
	div.wrapper.h2.release_note{
		background-image:url("../images/releasenote_680042358.jpg");
	}
	div.wrapper.h2.faq{
		background-image:url("../images/faq_460709467.jpg");
	}
	div.wrapper.h2.security{
		background-image:url("../images/security_301823210.jpg");
	}
	div.wrapper.h2.news{
		background-image:url("../images/h2_news.jpg");
	}
	div.wrapper.h2.download{
		background-image:url("../images/download_639728599.jpg");
		background-position: right center;
	}
	div.wrapper.h2.casestudy{
		background-image:url("../images/case_640963539.jpg");
		/*background-position: right center;*/
	}
	div.wrapper.h2.scsk{
		background-image:url("../images/scsk_698197379.jpg");
		background-position: center center;
	}
	div.wrapper.h2.installation{
		background-image:url("../images/installation_209743399.jpg");
		background-position: center top 25%;
	}
	div.wrapper.h2.developer{
		background-image:url("../images/developer_630334234.jpg");
		background-position: center top 65%;
	}
	div.wrapper.h2.solution{
		background-image:url("../images/solution_536702825.jpg");
		background-position: center center;
	}	
	ul.footer{
		display: none;
		justify-content: space-between;
		gap:25px;
		font-size:16px;
		margin-bottom:50px;
	}
	ul.footer a{
		color:#fff;
		position: relative;
	}
	ul.footer a::after{
		content: "";
		position: absolute;
		width:0%;
		height: 1.5px;
		background:#fff;
		margin:auto;
		left:0;
		right:0;
		bottom:-10px;
		transition: width 0.2s;
	}
	ul.footer a:hover::after{
		width:100%;
		transition: width 0.2s;
	}
	a.scsk_footer{
		display: block;
		margin-bottom:25px;
	}
}
@media(min-width:768px){
	header{
		position: fixed;
		top:0;
		right:0;
		width:100%;
		min-width: var(--min-width);
		z-index: 100;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	}
	div#header{
		width:100%;
		box-sizing: border-box;
		padding:10px;
		max-width:calc(var(--max-width) - 20px);
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin:auto;
		background:var(--offwhite-color);
		height: 88px;
	}
	div#header > div{
		display: flex;
		align-items: center;
	}
	a.inquiry{
		display: inline-block;
		border:3px solid var(--red-color);
		padding:5px 20px 5px 50px;
		border-radius: 6px;
		margin-right: 50px;
		background-image:url("../images/icon_inquiry.svg");
		background-repeat: no-repeat;
		background-size:25px;
		background-position: left 13px center;
	}
	a.inquiry:hover{
		background-color: var(--red-color);
		color:#fff;
		background-image:url("../images/icon_inquiry_white.svg");
	}
}
@media(max-width:767.99px){
	header{
		position: fixed;
		top:0;
		right:0;
		width:100%;
		z-index: 100;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	}
	div#header{
		box-sizing: border-box;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin:auto;
		background:var(--offwhite-color);
		background:#fff;
		height: 88px;
		position: relative;
	}
	div#header > div{
		display: flex;
		align-items: center;
	}
	a.inquiry{
		display: inline-block;
		border:3px solid var(--red-color);
		padding:5px 20px 5px 50px;
		border-radius: 6px;
		margin-right: 50px;
		background-image:url("../images/icon_inquiry.svg");
		background-repeat: no-repeat;
		background-size:25px;
		background-position: left 13px center;
		display: none;
	}
	a.inquiry:hover{
		background-color: var(--red-color);
		color:#fff;
		background-image:url("../images/icon_inquiry_white.svg");
	}
	div#header h1{
		margin-left:10px;
	}
	div#header h1 img{
		width:120px;
	}
	div#header a.scsk img{
		width:70px;
		margin-right: 70px;
	}
}
@media(min-width:768px){
	.openbtn1{
		display: none;
	}
}
@media(max-width:767.99px){
	.openbtn1{
		background:var(--offwhite-color);
		background:#fff;
		cursor: pointer;
		width: 50px;
		height:50px;
		position: absolute;
		top:0;
		bottom:0;
		margin:auto;
		right:10px;
		transform: scale(0.88) !important;
	}

	/*繝懊ち繝ｳ蜀��*/
	.openbtn1 span{
		display: inline-block;
		transition: all .4s;/*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ險ｭ螳�*/
		position: absolute;
		left: 14px;
		height: 3px;
		background: var(--red-color);
		width: 45%;
	  }

	.openbtn1 span:nth-of-type(1) {
		top:15px;	
	}

	.openbtn1 span:nth-of-type(2) {
		top:23px;
	}

	.openbtn1 span:nth-of-type(3) {
		top:31px;
	}

	/*active繧ｯ繝ｩ繧ｹ縺御ｻ倅ｸ弱＆繧後ｋ縺ｨ邱壹′蝗櫁ｻ｢縺励※ﾃ励↓*/

	.openbtn1.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}

	.openbtn1.active span:nth-of-type(2) {
		opacity: 0;/*逵溘ｓ荳ｭ縺ｮ邱壹�騾城℃*/
	}

	.openbtn1.active span:nth-of-type(3){
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}
}

@media(min-width:768px){
	nav{
		width:100%;
		min-width:var(--min-width);
		background:var(--red-color);
	}
	ul.nav{
		margin:auto;
		max-width:var(--min-width);
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 60px;
	}
	ul.nav li {
		position: relative;
	}
	ul.nav > li{
		color:#fff;
	}
	ul.nav li.parent {
		position: relative;
	}
	ul.nav li.parent.new::after{
		content: "NEW";
		position: absolute;
		background-image:url("../images/icon_new.svg");
		background-repeat:no-repeat;
		width:53px;
		height: 21px;
		background-size:53px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		top:-10.5px;
		right:-15px;
		
	}
	ul.nav li > a{
		color:#fff;
		line-height: 60px;
		position: relative;
	}
	ul.nav > li > a::after{
		content: "";
		width:0%;
		height: 1.5px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-10px;
		background:#fff;
		transition: width 0.2s;
	}
	ul.nav > li > a:hover::after,
	ul.nav > li.active a::after{
		content: "";
		width:100%;
		transition: width 0.2s;
	}
	ul.nav > li:hover div.childWrapper{
		display: block;
	}
	div.childWrapper{
		position: fixed;
		top:148px;
		width:100vw;
		background:#ccc;
		left:0;
		display: none;
		
	}
	div.child{
		min-width:var(--min-width);
		max-width: var(--max-width);
		width:100%;
		margin:25px auto;
		display: flex;
		gap:25px;
		align-items: center;
	}
	div.child h2{
		width:250px;
		text-align: center;
		padding-top:80px;
		background-image:url("../images/logo_openshift.svg");
		background-repeat: no-repeat;
		background-position: center top;
		font-size:24px;
		font-weight: bold;
		height: 100%;
	}
	ul.sitemap{
		width:calc(100% - 250px - 25px);
		border-left: 1px solid #fff;
		display: flex;
		justify-content: flex-start;
		gap:25px;
		flex-wrap: wrap;
		padding-left:25px;
	}
	ul.sitemap a{
		display: block;
		width:calc(33% - 25px);
		background-color:#F5F5F5;
		box-sizing: border-box;
		padding:15px;
		color:#333;
		border-radius: 6px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.4) inset;
		background-image:url("../images/arrow_sitemap.svg");
		background-position: right 15px bottom 15px;
		background-repeat: no-repeat;
		background-size:20px;
		position: relative;
	}
    ul.sitemap a.lineup{
        padding-bottom:35px;
    }
	ul.sitemap a.new{
		background-image:
			url("../images/arrow_sitemap.svg"),
			url("../images/icon_new.svg");
		background-position:
			right 15px bottom 15px,
			right 15px top 15px;
		background-repeat:no-repeat;
		background-size:
			20px,
			50px;
	}
	ul.sitemap a > li.new{
		background-image:url("../images/icon_new.svg");
		background-position:right 0 top 0px;
		background-repeat:no-repeat;
		background-size:53px;
        width:53px;
        height: 21px;
        position: absolute;
        right:15px;
	}
	ul.sitemap a:hover{
		background-color:#fff;
		background-image:url("../images/arrow_sitemap_on.svg");
	}
	ul.sitemap a.new:hover{
		background-color:#fff;
		background-image:
			url("../images/arrow_sitemap_on.svg"),
			url("../images/icon_new.svg");
	}
	ul.sitemap h3{
		font-size:20px;
		color:var(--red-color);
		font-weight: bold;
		border-bottom:1px solid var(--red-color);
		margin-bottom:5px;
		padding-bottom: 5px;
	}
	ul.sitemap h3.link,
	p.hasChild.link{
		cursor: pointer;
	}
	ul.sitemap p.hasChild{
		/*padding-bottom: 120px;*/
        margin-bottom:.5em;
	}
	ul.sitemap p{
		font-size:16px;
	}
	ul.sitemap div.lineup{
		/*position: absolute;*/
		margin:auto;
		left:0;
		right:0;
		bottom:10px;
		z-index: 200;
	}
	ul.sitemap div.lineup p{
		background-color:var(--red-color);
		color:#fff;
		border-radius: 4px;
		padding:3px 24px 3px 12px;
		display: inline-block;
		margin-bottom:3px;
		background-image:url("../images/icon_breadcrumbs.svg");
		background-size:10px;
		background-position: right 6px center;
		background-repeat: no-repeat;
		cursor: pointer;
	}
	ul.sitemap div.lineup p:hover{
		background-color:var(--blue-color);
	}
}
@media(max-width:767.99px){
	nav{
		width:100%;
		background:var(--red-color);
		display: none;
		}
	ul.nav{
		margin:auto;
	}
	ul.nav li {
		position: relative;
		border-bottom:2px solid #fff;
	}
	ul.nav > li{
		color:#fff;
		position: relative;
		text-indent: 40px;
		background-image:url("../images/arrow_mobile.svg");
		background-size:20px;
		background-repeat: no-repeat;
		background-position: right 10px center;
	}
	ul.nav > li::before{
		content:"";
		width:14px;
		height: 14px;
		border-radius: 14px;
		background:#fff;
		position: absolute;
		top:0;
		bottom:0;
		left:10px;
		margin:auto;
	}
	ul.nav li > a{
		color:#fff;
		line-height: 45px;
		position: relative;
	}
	ul.nav > li > a::after{
		content: "";
		width:0%;
		height: 1.5px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-10px;
		background:#fff;
		transition: width 0.2s;
	}
	div.childWrapper{
		position: fixed;
		top:148px;
		width:100vw;
		background:#ccc;
		left:0;
		display: none;
	}
	div.child{
		min-width:var(--min-width);
		max-width: var(--max-width);
		width:100%;
		margin:25px auto;
		display: flex;
		gap:25px;
		align-items: center;
	}
	div.child h2{
		width:250px;
		text-align: center;
		padding-top:80px;
		background-image:url("../images/logo_openshift.svg");
		background-repeat: no-repeat;
		background-position: center top;
		font-size:24px;
		font-weight: bold;
		height: 100%;
	}
	ul.sitemap{
		width:calc(100% - 250px - 25px);
		border-left: 1px solid #fff;
		display: flex;
		justify-content: flex-start;
		gap:25px;
		flex-wrap: wrap;
		padding-left:25px;
	}
	ul.sitemap a{
		display: block;
		width:calc(33% - 25px);
		background-color:#F5F5F5;
		box-sizing: border-box;
		padding:15px;
		color:#333;
		border-radius: 6px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.4) inset;
		background-image:url("../images/arrow_sitemap.svg");
		background-position: right 15px bottom 15px;
		background-repeat: no-repeat;
		background-size:20px;
	}
	ul.sitemap a.new{
		background-image:
			url("../images/arrow_sitemap.svg"),
			url("../images/icon_new.svg");
		background-position:
			right 15px bottom 15px,
			right 15px top 15px;
		background-repeat:no-repeat;
		background-size:
			20px,
			50px;
	}
	ul.sitemap a:hover{
		background-color:#fff;
		background-image:url("../images/arrow_sitemap_on.svg");
	}
	ul.sitemap a.new:hover{
		background-color:#fff;
		background-image:
			url("../images/arrow_sitemap_on.svg"),
			url("../images/icon_new.svg");
	}
	ul.sitemap h3{
		font-size:20px;
		color:var(--red-color);
		font-weight: bold;
		border-bottom:1px solid var(--red-color);
		margin-bottom:5px;
		padding-bottom: 5px;
	}
	ul.sitemap p{
		font-size:16px;
	}
}
@media(min-width:768px){
	div.slideWrapper{
		width:100%;
		min-width:var(--min-width);
		max-width:var(--max-width);
		margin:var(--header-height) auto 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	div.slideWrapper div.right{
		width:calc(var(--min-width) / 2);
		box-sizing: border-box;
		padding:70px 35px;
	}
	div.slideWrapper div.left{
		width:50%;
		box-sizing: border-box;
		padding:70px 35px;
	}
	div.slideWrapper div.right{
		/*border:3px solid #ccc;*/
		padding:20px 0;
		margin:15px auto;
		border-radius: 12px;
		/*box-shadow: 0 0 12px rgba(0,0,0,0.35) inset*/
		background:rgba(255,255,255,0.9)
	}
	div.slideWrapper p.title{
		font-size:24px;
		text-align: justify;
		color:#fff;
		font-weight: bold;
	}
	div.slideWrapper p.title span{
		display: block;
		text-align: center;
		margin-bottom:25px;
		font-size:32px;
		border-bottom:2px solid #fff;
	}
	div.right h2{
		text-align: center;
		font-size:24px;
		margin-bottom:25px;
	}
	div.slides img{
		margin:auto;
		height: 320px;
		width:auto;
		object-fit:contain;
	}
	div.slides div.slideImg{
		width:480px;
		height: 320px;
		position: relative;
		margin:auto;
	}
	div.slideImg h3{
		text-align: center;
		font-size:54px;
		line-height: 320px;
		font-weight: bold;
		position: absolute;
		z-index: 2;
		color:#fff;
		margin:auto;
		top:0;
		left:0;
		right:0;
		bottom:0;
	}
	div.slideImg img{
		width:480px;
		height: 320px;
		object-fit: cover;
		position: absolute;
		top:0;
		left:0;
		z-index: 1;
	}
	div.slides ul{
		margin:15px 50px 15px 50px;
	}
	div.slides li{
		text-align: left;
		position: relative;
		padding-left:30px;
		padding-right: 10px;
	}
	div.slides li::before{
		content: "";
		width:12px;
		height: 12px;
		border:3px solid var(--red-color);
		/*background-color:var(--red-color);*/
		background-color:#fff;
		border-radius: 14px;
		position: absolute;
		top:6px;
		left:10px;
		box-sizing: border-box;
	}
}
@media(max-width:767.99px){
	div.slideWrapper{
		width:100%;
		margin:88px auto 0;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: center;
		padding-bottom: 10px;
	}
	div.slideWrapper div.right{
		width:100%;
		box-sizing: border-box;
		padding:10px;
	}
	div.slideWrapper div.left{
		box-sizing: border-box;
		padding:10px;
	}
	div.slideWrapper div.right{
		/*border:3px solid #ccc;*/
		padding:10px;
		width:calc(100% - 20px);
		border-radius: 12px;
		/*box-shadow: 0 0 12px rgba(0,0,0,0.35) inset*/
		background:rgba(255,255,255,0.9)
	}
	div.slideWrapper p.title{
		font-size:16px;
		text-align: justify;
		color:#fff;
		font-weight: bold;
	}
	div.slideWrapper p.title span{
		display: block;
		text-align: center;
		margin-bottom:10px;
		font-size:20px;
		border-bottom:2px solid #fff;
	}
	div.right h2{
		text-align: center;
		font-size:16px;
		margin-bottom:10px;
	}
	div.slides img{
		margin:auto;
		height: 160px;
		width:auto;
		object-fit:contain;
	}
	div.slides div.slideImg{
		width:100%;
		height: 160px;
		position: relative;
		margin:auto;
	}
	div.slideImg h3{
		text-align: center;
		font-size:32px;
		line-height: 160px;
		font-weight: bold;
		position: absolute;
		z-index: 2;
		color:#fff;
		margin:auto;
		top:0;
		left:0;
		right:0;
		bottom:0;
	}
	div.slideImg img{
		width:100%;
		height: 160px;
		object-fit: cover;
		position: absolute;
		top:0;
		left:0;
		z-index: 1;
	}
	div.slides ul{
		margin:10px;
	}
	div.slides li{
		text-align: left;
		position: relative;
		padding-left:30px;
		padding-right: 10px;
		font-size:14px;
	}
	div.slides li::before{
		content: "";
		width:12px;
		height: 12px;
		border:3px solid var(--red-color);
		/*background-color:var(--red-color);*/
		background-color:#fff;
		border-radius: 14px;
		position: absolute;
		top:6px;
		left:10px;
		box-sizing: border-box;
	}
}


@media(min-width:768px){
	.buttonWrapper {
		display: flex;
		justify-content: center;
		gap:25px;
		margin-top:50px;
	}
	a.button{
		width:220px;
		line-height: 50px;
		border-radius: 6px;
		text-align: center;
	}
	a.button.try{
		background:var(--red-color);
		color:#fff;
		border:3px solid var(--red-color);
	}
	a.button.try:hover{
		background:#fff;
		color:var(--red-color);
		border:3px solid var(--red-color);
	}
	a.button.demo{
		background-color:#fff;
		border:3px solid var(--red-color);
	}
	a.button.demo:hover{
		background-color:var(--red-color);
		color:#fff;
		border:3px solid var(--red-color);
	}
	a.link{
		display: block;
		margin:70px auto;
		width:450px;
		height: 60px;
		line-height: 60px;
		text-align: center;
		background:var(--blue-color);
		color:#fff;
		border-radius: 6px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	}
	a.link:hover{
		background:var(--red-color);
	}
}
@media(max-width:767.99px){
	.buttonWrapper {
		display: flex;
		justify-content: center;
		gap:10px;
		margin-top:50px;
	}
	a.button{
		width:calc(60% - 20px);
		line-height: 40px;
		border-radius: 6px;
		text-align: center;
	}
	a.button.try{
		background:var(--red-color);
		color:#fff;
		border:3px solid var(--red-color);
	}
	a.button.try:hover{
		background:#fff;
		color:var(--red-color);
		border:3px solid var(--red-color);
	}
	a.button.demo{
		background-color:#fff;
		border:3px solid var(--red-color);
	}
	a.button.demo:hover{
		background-color:var(--red-color);
		color:#fff;
		border:3px solid var(--red-color);
	}
	a.link{
		display: block;
		margin:70px auto;
		width:450px;
		height: 60px;
		line-height: 60px;
		text-align: center;
		background:var(--blue-color);
		color:#fff;
		border-radius: 6px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	}
	a.link:hover{
		background:var(--red-color);
	}
}

@media(min-width:768px){
	div.contents{
		width:var(--min-width);
		margin:auto;
	}
	h2.top{
		text-align: center;
		font-size:32px;
		margin:50px auto 75px;
		position: relative;
	}
	h2.top::after{
		content: "";
		width:40px;
		height: 45px;
		background-image:url("../images/icon_downarrow.svg");
		background-size:25px;
		background-repeat: no-repeat;
		background-position: center center;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-35px;
	}
	h2.top.white{
		color:white;
	}
	h2.top.white::after{
		background-image:url("../images/icon_downarrow_w.svg");
	}
}
@media(max-width:767.99px){
	div.contents{
		width:100%;
		margin:auto;
	}
	h2.top{
		text-align: center;
		font-size:22px;
		margin:50px auto 50px;
		position: relative;
	}
	h2.top::after{
		content: "";
		width:40px;
		height: 45px;
		background-image:url("../images/icon_downarrow.svg");
		background-size:20px;
		background-repeat: no-repeat;
		background-position: center center;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-35px;
	}
	h2.top.white{
		color:white;
	}
	h2.top.white::after{
		background-image:url("../images/icon_downarrow_w.svg");
	}
}
@media(min-width:768px){
	ul.update{
		margin:auto auto 70px;
		box-sizing: border-box;
		padding:50px;
		background:#fff;
		border-radius: 6px;
	}
	ul.update li{
		margin-bottom:20px;
		border-bottom:1px solid #ccc;
		padding-bottom:10px;
	}
	ul.update span.date{
		font-size:16px
	}
	ul.update span.title{
		display: block;
		margin-left:50px;
		padding-top:10px;
	}
	ul.update span.category{
		font-size:15px;
		padding:2px 10px;
		border:1px solid #ccc;
	}
	ul.update span.new{
		display: inline-block;
		width:53px;
		height: 21px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		background:url("../images/icon_new_red.svg");
		margin-left:10px;
	}
}
@media(max-width:767.99px){
	ul.update{
		margin:auto 10px 50px;
		box-sizing: border-box;
		padding:10px;
		background:#fff;
		border-radius: 6px;
	}
	ul.update li{
		margin-bottom:20px;
		border-bottom:1px solid #ccc;
		padding-bottom:10px;
	}
	ul.update span.date{
		font-size:16px
	}
	ul.update span.title{
		display: block;
		margin-left:25px;
		padding-top:10px;
	}
	ul.update span.category{
		font-size:15px;
		padding:2px 10px;
		border:1px solid #ccc;
	}
}
@media(min-width:768px){
	dl.aboutContainer{
		width:var(--min-width);
		margin:auto auto 0;
		box-sizing: border-box;
		/*border-radius: 12px;*/
		overflow: hidden;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	dl.aboutContainer dd{
		box-sizing: border-box;
		padding:25px;
	}
	dl.aboutContainer dt{
		box-sizing: border-box;
	}
	dl.aboutContainer dt{
		/*width:100%;*/
		font-size:24px;
		background-color:var(--red-color);
		/*background-image:url("../images/icon_container_w.svg");
		background-size:80px;
		background-repeat: no-repeat;
		background-position: center bottom 25px;*/
		text-align: center;
		font-weight: bold;
		/*padding-bottom:130px;*/
		color:#fff;
		width:200px;
		height: 200px;
		line-height: 200px;
		border-radius: 200px;
		z-index: 1;
	}
	dl.aboutContainer dd{
		width:var(--min-width);
		background-color:#fff;
		/*color:var(--red-color);*/
		font-size:20px;
		font-weight: bold;
		padding-top:150px;
		margin-top:-100px;
		padding-left:150px;
		padding-right: 150px;
	}
	div.containerImage{
		width:calc(var(--min-width));
		margin:auto auto 70px;
		display: flex;
		justify-content: space-between;
		gap:50px;
		background:url("../images/icon_dot.svg") center center no-repeat;
		background-color:#fff;
		box-sizing: border-box;
		padding:25px 150px 50px;
		border-radius: 6px;
		/*box-shadow: 3px 3px 9px rgba(0,0,0,0.35)*/
	}
	div.containerImage h3{
		border:4px solid var(--red-color);
		font-size:22px;
		font-weight: bold;
		border-radius: 30px;
		line-height: 40px;
		margin-bottom:10px;
		background-color:#fff;
	}
	div.containerImage div{
		text-align: center;
		font-size:20px;
	}
	h4.aboutContainer{
		font-size:28px;
		text-align: center;
		border-bottom:2px solid var(--red-color);
		padding-bottom:20px;
		width:360px;
		margin:auto;
	}
	div.meritWrapper{
		display: flex;
		justify-content: space-between;
		gap:30px;
		margin:35px auto;
	}
	dl.merit{
		background:var(--gray-color);
		background:#fff;
		width:calc(33% - 30px);
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
		border-radius: 6px;
	}
	dl.merit dt,
	dl.merit dd{
		box-sizing: border-box;
	}
	dl.merit dt{
		height: 90px;
		display: flex;
		align-items: center;
		padding:0 25px;
		font-size:20px;
		border-top-left-radius: 6px;
		border-top-right-radius: 6px;
		font-weight: bold;
		border-bottom:2px solid var(--red-color);
		margin:0 25px;
		color:var(--red-color);
	}
	dl.merit dd{
		padding:25px;
		background-repeat: no-repeat;
		background-position: center top 25px;
		padding-top:120px;
	}
	dl.merit dd.merit1{
		background-image:url("../images/icon_merit1.svg");
		background-size:90px;
	}
	dl.merit dd.merit2{
		background-image:url("../images/icon_merit2.svg");
		background-size:120px;
		background-position: center top 40px;
	}
	dl.merit dd.merit3{
		background-image:url("../images/icon_merit3.svg");
		background-size:90px
	}
}
@media(max-width:767.99px){
	dl.aboutContainer{
		width:var(--min-width);
		margin:auto auto 25px;
		box-sizing: border-box;
		overflow: hidden;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	dl.aboutContainer dd{
		box-sizing: border-box;
		padding:25px;
	}
	dl.aboutContainer dt{
		box-sizing: border-box;
	}
	dl.aboutContainer dt{
		font-size:18px;
		background-color:var(--red-color);
		text-align: center;
		font-weight: bold;
		/*padding-bottom:130px;*/
		color:#fff;
		width:150px;
		height: 150px;
		line-height: 150px;
		border-radius: 150px;
		z-index: 1;
	}
	dl.aboutContainer dd{
		background-color:#fff;
		font-weight: bold;
		padding-top:150px;
		margin-top:-100px;
		margin-left:10px;
		margin-right: 10px;
	}
	div.containerImage{
		margin:auto auto 70px;
		width:calc(100% - 20px);
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:50px;
		background-color:#fff;
		box-sizing: border-box;
		padding:15px 10px 50px;
		border-radius: 6px;
		/*box-shadow: 3px 3px 9px rgba(0,0,0,0.35)*/
	}
	div.containerImage h3{
		border:4px solid var(--red-color);
		font-size:18px;
		font-weight: bold;
		border-radius: 30px;
		line-height: 40px;
		margin-bottom:10px;
		background-color:#fff;
	}
	div.containerImage div{
		text-align: center;
		font-size:20px;
	}
	h4.aboutContainer{
		font-size:20px;
		text-align: center;
		border-bottom:2px solid var(--red-color);
		padding-bottom:20px;
		width:360px;
		margin:auto;
	}
	div.meritWrapper{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:30px;
		margin:35px auto;
		padding:10px;
	}
	dl.merit{
		background:var(--gray-color);
		background:#fff;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
		border-radius: 6px;
	}
	dl.merit dt,
	dl.merit dd{
		box-sizing: border-box;
	}
	dl.merit dt{
		border-top-left-radius: 6px;
		border-top-right-radius: 6px;
		font-weight: bold;
		border-bottom:2px solid var(--red-color);
		margin:10px;
		color:var(--red-color);
	}
	dl.merit dd{
		padding:25px;
		background-repeat: no-repeat;
		background-position: center top 25px;
		padding-top:120px;
	}
	dl.merit dd.merit1{
		background-image:url("../images/icon_merit1.svg");
		background-size:90px;
	}
	dl.merit dd.merit2{
		background-image:url("../images/icon_merit2.svg");
		background-size:120px;
		background-position: center top 40px;
	}
	dl.merit dd.merit3{
		background-image:url("../images/icon_merit3.svg");
		background-size:90px
	}
}
@media(min-width:768px){
	div.whyOpenShift{
		display: flex;
		align-items: center;
		margin-bottom:25px;
		gap:50px;
	}
	div.logoWrapper{
		width:320px;
		height: 320px;
		background:#fff;
		border-radius: 320px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
	}
	div.whyOpenShift p{
		font-size:26px;
		color:#fff;
		/*background:url("../images/logo_openshift.svg") center top no-repeat;
		background-size:250px;
		padding-top:100px;*/
	}
	div.whyWrapper{
		display:flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap:50px;
		width:var(--min-width);
		margin:100px auto;
	}
	dl.why{
		width:calc(45% - 25px);
		/*background:var(--red-color);*/
		padding:25px 25px 25px 25px;
		border-radius: 6px;
		border:4px solid var(--red-color);
		background-color:#fff;
	}
	dl.why dt{
		color:var(--red-color);
		font-size:22px;
		border-bottom:1px solid var(--red-color);
		margin-bottom:25px;
		font-weight: bold;
		padding-bottom:15px;
		background-repeat: no-repeat;
		background-position: right 0px top 0;
		background-size:35px;
	}
	dl.why dt.w1{
		background-image:url("../images/icon_os1.svg");
	}
	dl.why dt.w2{
		background-image:url("../images/icon_os2.svg");
	}
	dl.why dt.w3{
		background-image:url("../images/icon_os3.svg");
	}
	dl.why dt.w4{
		background-image:url("../images/icon_os4.svg");
	}
	dl.why dd{
		color:#333;
	}
	ol.apeal{
		padding-top:100px;
		background:url("../images/icon_redhat_scsk.svg") center top no-repeat;
		background-size:350px;
		display: flex;
		flex-direction: low;
		justify-content: space-between;
		gap:25px;
		flex-wrap: wrap;
	}
	ol.apeal li{
		list-style: none;
		box-sizing: border-box;
		padding:25px;
		background:#fff;
		margin-bottom:15px;
		color:#333;
		padding-left:100px;
		background-repeat:no-repeat;
		background-position: left 20px top 20px;
		border-radius: 6px;
		width:calc(50% - 25px);
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
		position: relative;
		height: 120px;
	}
	ol.apeal li::before{
		font-size:48px;
		position: absolute;
		left:0px;
		top:0;
		bottom:0;
		margin:auto;
		font-family: Helvetica, "sans-serif";
		color:var(--red-color);
		color:#fff;
		opacity: 1;
		background-color:var(--blue-color);
		line-height: 120px;
		padding:0 15px;
		border-top-left-radius: 6px;
		border-bottom-left-radius: 6px;
	}
	ol.apeal li:nth-child(1)::before{
		content:"01";
	}
	ol.apeal li:nth-child(2)::before{
		content:"02";
	}
	ol.apeal li:nth-child(3)::before{
		content:"03";
	}
	ol.apeal li:nth-child(4)::before{
		content:"04";
	}
	h3.scsk{
		text-align: center;
		font-size:24px;
		margin:50px auto 25px;
		font-weight: bold;
	}
	div.scope{
		position: relative;
		overflow: hidden;
		background:url("../images/flow.svg") center center no-repeat;
		background-size:1000px;
		height: 100px;
	}
	ul.scope{
		margin:50px auto;
		padding:0 100px;
		display: flex;
		justify-content: space-between;
		position: relative;
		z-index: 1;
	}
	ul.scope li{
		text-align: center;
		width:calc(25% - 30px);
		padding:25px 0;
		background:#ccc;
		color:#fff;
		border-radius: 6px;
	}
	ul.scope li:nth-child(1){
		animation: anime_scope1 5.614285714s linear 0.385714286s infinite normal backwards
	}
	ul.scope li:nth-child(2){
		animation: anime_scope2 4.640816327s linear 1.359183673s infinite normal backwards
	}
	ul.scope li:nth-child(3){
		animation: anime_scope3 3.664285714s linear 2.335714286s infinite normal backwards
	}
	ul.scope li:nth-child(4){
		animation: anime_scope4 2.687755102s linear 3.312244898s infinite normal backwards
	}
	div.arrow{
		background:url("../images/scsk_arrow.svg") no-repeat;
		width:980px;
		height: 23px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		left:-980px;
		z-index: 0;
		animation: anime_arrow 6 s linear 0s infinite normal ;
	}
	div.arrow/*.isActv*/{

	}
	span.big{
		font-size:122px;
		color:var(--blue-color);
		font-weight: bold;
		padding-right: 5px;
	}
}
@media(max-width:767.99px){
	div.whyOpenShift{
		display: flex;
		align-items: center;
		flex-direction: column;
		margin-bottom:25px;
		gap:50px;
	}
	div.logoWrapper{
		width:200px;
		height: 200px;
		background:#fff;
		border-radius: 200px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
	}
	div.logoWrapper img{
		width:150px;
	}
	div.whyOpenShift p{
		color:#fff;
		margin: 0 10px;
	}
	div.whyWrapper{
		display:flex;
		flex-wrap: wrap;
		flex-direction: column;
		gap:15px;
		width:var(--min-width);
		margin:100px auto;
	}
	dl.why{
		width:calc(100% - 20px);
		/*background:var(--red-color);*/
		padding:15px;
		border-radius: 6px;
		box-sizing: border-box;
		border:4px solid var(--red-color);
		background-color:#fff;
		margin:auto;
	}
	dl.why dt{
		color:var(--red-color);
		border-bottom:1px solid var(--red-color);
		margin-bottom:25px;
		font-weight: bold;
		padding-bottom:15px;
		background-repeat: no-repeat;
		background-position: right 0px top 0;
		background-size:25px;
	}
	dl.why dt.w1{
		background-image:url("../images/icon_os1.svg");
	}
	dl.why dt.w2{
		background-image:url("../images/icon_os2.svg");
	}
	dl.why dt.w3{
		background-image:url("../images/icon_os3.svg");
	}
	dl.why dt.w4{
		background-image:url("../images/icon_os4.svg");
	}
	dl.why dd{
		color:#333;
	}
	ol.apeal{
		padding-top:100px;
		background:url("../images/icon_redhat_scsk.svg") center top no-repeat;
		background-size:350px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		gap:25px;
		flex-wrap: wrap;
	}
	ol.apeal li{
		list-style: none;
		box-sizing: border-box;
		padding:25px;
		background:#fff;
		margin-bottom:15px;
		color:#333;
		padding-left:100px;
		background-repeat:no-repeat;
		background-position: left 20px top 20px;
		border-radius: 6px;
		width:calc(100% - 20px);
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
		position: relative;
		min-height: 120px;
		margin:auto;
	}
	ol.apeal li::before{
		font-size:48px;
		position: absolute;
		left:0px;
		top:0;
		bottom:0;
		margin:auto;
		font-family: Helvetica, "sans-serif";
		color:var(--red-color);
		color:#fff;
		opacity: 1;
		background-color:var(--blue-color);
		line-height: 120px;
		padding:0 15px;
		border-top-left-radius: 6px;
		border-bottom-left-radius: 6px;
	}
	ol.apeal li:nth-child(1)::before{
		content:"01";
	}
	ol.apeal li:nth-child(2)::before{
		content:"02";
	}
	ol.apeal li:nth-child(3)::before{
		content:"03";
	}
	ol.apeal li:nth-child(4)::before{
		content:"04";
	}
	h3.scsk{
		text-align: center;
		font-size:22px;
		margin:50px auto 25px;
		font-weight: bold;
	}
	span.big{
		font-size:30px;
		color:var(--blue-color);
		font-weight: bold;
		padding-right: 5px;
	}
}
@media(min-width:768px){
	div.inquiry{
		display: flex;
		margin-top:70px;
		margin-bottom:70px;
		color:#fff;
	}
	div.inquiry > div{
		width:calc(50% - 25px);
	}
	div.inquiry h2{
		font-size:32px;
		margin-bottom:25px;
	}
}
@media(max-width:767.99px){
	div.inquiry{
		display: flex;
		flex-direction: column;
		margin-top:50px;
		margin-bottom:50px;
		color:#fff;
	}
	div.inquiry > div{
		width:calc(100% - 20px);
		margin:auto;
	}
	div.inquiry h2{
		font-size:20px;
		margin-bottom:25px;
	}
}



/*slick*/
@media(min-width:768px){
	button.slick-arrow {
		text-indent: -9999px;
		position: absolute;
		width: 30px;
		height: 30px;
		z-index: 1;
		border: none;
		cursor: pointer;
		background-size: 30px;
		top:calc((100% / 2) - 80px);
		background-repeat: no-repeat;
	}
}
@media(max-width:767.99px){
	button.slick-arrow {
		text-indent: -9999px;
		position: absolute;
		width: 30px;
		height: 30px;
		z-index: 1;
		border: none;
		cursor: pointer;
		background-size: 30px;
		top:calc((100% / 2) - 45px);
		background-repeat: no-repeat;
	}
}
button.slick-prev {
	background-image: url("../images/slick_prev2.svg");
	background-position:center top;
	left: 15px;
}
button.slick-prev:hover {
	background-image: url("../images/slick_prev2.svg");
	background-position:center bottom;
}
button.slick-next {
	background-image: url("../images/slick_next2.svg");
	background-position:center top;
	right: 15px;
}
button.slick-next:hover {
	background-image: url("../images/slick_next2.svg");
	background-position:center bottom ;
}
ul.slick-dots {
	width: 100%;
	height: 20px;
	text-align: center;
	overflow: hidden;
	position: absolute;
	bottom: 0;
}
ul.slick-dots li {
	text-indent: -9999px;
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: var(--gra7-color);
	border-radius: 10px;
	margin: 5px;
}
li.slick-active {
	background-color: var(--gra1-color) !important;
}
.slick-slide img{
	width:320px;
	height: auto;
	object-fit: cover;
}
/*end of slick*/
@media(min-width:768px){
	div.nextPage{
		width:860px;
		margin:50px auto 100px;
		box-sizing: border-box;
		/*border-radius: 12px;*/
		overflow: hidden;
		display: flex;
		align-items: center;
		gap:20px;
		border:4px solid #ccc;
		padding:10px;
		/*border-top:3px solid var(--red-color);
		border-bottom:3px solid var(--red-color);*/
		background-color:#fff;
		background-image:url("../images/icon_nextpage.svg");
		background-repeat:no-repeat;
		background-size:70px;
		background-position:right 20px bottom 20px;
	}
	div.nextPage:hover{
		background-color:#efefef;
	}
	div.nextPage h5{
		text-align: center;
		font-size:24px;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
		padding-bottom:10px;
		font-weight: bold;
	}
	div.nextPage p{
		color:#000;
		margin-top:20px;
	}
	
	div.thumbWrapper{
		max-width:var(--min-width);
		width:100%;
		display: flex;
		flex-wrap: wrap;
		gap:50px;
		margin-bottom:100px;
		margin-top:50px;
	}
	div.thumb{
		width:calc(360px);
		margin-bottom:50px;
		position: relative;
	}
	div.thumb.new::after{
		content:"";
		position: absolute;
		display: block;
		width:53px;
		height: 21px;
		background:url("../images/icon_new_red.svg");
		top:10px;
		right:10px;
	}
	div.thumb span{
		color:#666;
	}
	div.thumb:hover img{
		opacity: 0.75;
	}
	div.thumb:hover p.title{
		color:var(--blue-color) !important;
	}
	div.thumb img{
		width:360px;
		height: 160px;
		object-fit: cover;
		object-position: center;
	}
	div.thumb > div{
		display: flex;
		justify-content: space-between;
		font-size:14px;
		margin:5px auto;
	}
	div.thumb p.title{
		color:var(--red-color);
	}
	div.footer_logo {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom:50px;
	}
	p.footer_copy{
		font-size:14px;
		color:#fff;
		text-align: center;
	}
}
@media(max-width:767.99px){
	div.nextPage{
		width:calc(100% - 20px);
		margin:50px auto 50px;
		box-sizing: border-box;
		overflow: hidden;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap:20px;
		border:4px solid #ccc;
		padding:10px;
		padding-bottom:25px;
		/*border-top:3px solid var(--red-color);
		border-bottom:3px solid var(--red-color);*/
		background-color:#fff;
		background-image:url("../images/icon_nextpage.svg");
		background-repeat:no-repeat;
		background-size:30px;
		background-position:right 10px bottom 10px;
	}
	div.nextPage:hover{
		background-color:#efefef;
	}
	div.nextPage div.left{
		width:100%;
	}
	div.nextPage h5{
		text-align: center;
		font-size:18px;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
		padding-bottom:10px;
		font-weight: bold;
	}
	div.nextPage img{
		width:100%;
		height: 100px;
		object-fit: cover;
		object-position: center bottom;
	}
	div.nextPage p{
		color:#000;
		margin-top:20px;
	}
	
	div.thumbWrapper{
		width:calc(100% - 20px);
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		gap:15px;
		margin:10px;
	}
	div.thumb{
		width:calc(100%);
		margin-bottom:25px;
		
	}
	div.thumb span{
		color:#666;
	}
	div.thumb:hover img{
		opacity: 0.75;
	}
	div.thumb:hover p.title{
		color:var(--blue-color) !important;
	}
	div.thumb img{
		width:100%;
		height: 160px;
		object-fit: cover;
		object-position: center;
	}
	div.thumb > div{
		display: flex;
		justify-content: space-between;
		font-size:14px;
		margin:5px auto;
	}
	div.thumb p.title{
		color:var(--red-color);
	}
	div.footer_logo {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin:0 10px 25px;
	}
	div.footer_logo img{
		width:100px;
	}
	p.footer_copy{
		font-size:14px;
		color:#fff;
		text-align: center;
	}
}

@media(min-width:768px){
	div.h2Wrapper{
		width:100%;
		min-width:var(--min-width);
		max-width:var(--max-width);
		color:#fff;
		line-height: 150px;
		margin:auto;
		font-size:32px;
		font-weight: bold;
		padding-left:100px;
	}
	div.h2Wrapper span{
		font-size:24px;
	}
	p.pankuzu{
		line-height: 50px;
		width:var(--min-width);
		margin:auto;
		display: flex;
		align-items: center;
		gap:15px;
		white-space: nowrap;
	}
	p.pankuzu span.next{
		display: inline-block;
		background-image:url("../images/icon_breadcrumbs.svg");
		background-repeat:no-repeat;
		width:20px;
		height: 15px;
		background-size:15px;
		background-position: center center;
		padding:0 10px;
	}
	div.pageNav{
		width:var(--min-width);
		margin:50px auto;
		overflow: hidden;
	}
	div.pageNav div.page2{
		width:calc(50% - 20px);
		box-sizing: border-box;
		padding:10px;
		background:#fff;
		border:4px solid #ccc;
		min-height: 320px;
	}
	div.pageNav div.page2:hover{
		background:#efefef;
	}
	div.page2.previous{
		float: left;
	}
	div.page2.nexting{
		float: right;
	}
	div.page2 div.link{
		background-repeat: no-repeat;
		background-size:50px;
	}
	div.page2.previous div.link{
		background-image:url("../images/icon_prevepage.svg");
		padding-left:80px;
		background-position: left 10px center;
	}
	div.page2.nexting div.link{
		background-image:url("../images/icon_nextpage.svg");
		padding-right:80px;
		background-position: right 10px center;
	}
	div.page2 img{
		width:100%;
		height: 150px;
		object-fit: cover;
	}
	div.page2 h5,
	div.page2 h5:hover{
		font-weight: bold;
		border-bottom:2px solid var(--red-color);
		margin:15px 0;
		color:var(--red-color);
	}
	div.page2 p{
		color:#000;
	}
	div.stepWrapper{
		width:var(--min-width);
		margin:75px auto;
		display: flex;
		justify-content: space-between;
		margin-bottom:100px;
	}
	dl.step3{
		width:calc((var(--min-width) / 3) - 5px);
		box-sizing: border-box;
		padding:20px 10px;
		background:lightgray;
		transform: skewY(5deg);
		border-radius: 12px;
		border:6px solid lightgray;
	}
	dl.step3.active,
	dl.step3:hover{
		border:6px solid var(--red-color);
		background:#fff;
	}
	dl.step3:hover dd{
		color:var(--red-color);
	}
	dl.step3 dt{
		font-size:32px;
		text-align: center;
		font-style: italic;
		font-weight: bold;
		color:var(--red-color);
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size:160px;
		padding-bottom:80px;
	}
	dl.step3 dt.s1{
		background-image:url("../images/icon_why.svg");
	}
	dl.step3 dt.s2{
		background-image:url("../images/icon_what.svg");
	}
	dl.step3 dt.s3{
		background-image:url("../images/icon_how.svg");
	}
	dl.step3 dd{
		padding-top:30px;
		text-align: center;
		font-weight: bold;
	}
	h2.stepTitle{
		color:#fff;
		font-size:32px;
		border:3px solid #fff;
		margin-top:50px;
		margin-bottom:50px;
		border-radius: 50px;
		overflow: hidden;
	}
	h2.stepTitle span.step{
		background:#fff;
		color:var(--red-color);
		display: inline-block;
		padding:0 50px;
		font-style: italic;
		font-weight: bold;
	}
	h2.stepTitle span.title{
		padding-left:50px;
	}
	h3.second{
		margin-top:50px;
		margin-bottom:25px;
		font-size:28px;
		color:var(--red-color);
		position: relative;
		padding-left:40px;
		font-weight: bold;
	}
	h3.second span.small{
		font-size:16px;
		color:#000;
		padding-left:1em;
	}
	h3.second::before{
		content: "";
		width:28px;
		height: 28px;
		border:3px solid var(--red-color);
		/*background:var(--red-color);*/
		position: absolute;
		border-radius: 28px;
		top:5px;
		left:0;
		margin:auto;
	}
	div.innerContents{
		margin:25px 50px;
		margin-bottom:100px;
	}
	div.innerContents img{
		max-width:100%;
		height: auto;
	}
	div.innerContents p{
		margin:15px 0;
	}
	div.graph{
		display: flex;
		align-items: center;
	}
	ul.graph{
	
	}
	ul.graph li{
		position: relative;
		padding-left:25px;
		margin-bottom:0.5em;
	}
	ul.graph li::before{
		content: "";
		width:16px;
		height: 16px;
		border-radius: 16px;
		position: absolute;
		margin:auto;
		top:5px;
		left:0;

	}
	ul.graph li:nth-child(2)::before{
		background-color:#E93B24
	}
	ul.graph li:nth-child(1)::before{
		background-color:#EB6119
	}
	ul.graph li:nth-child(7)::before{
		background-color:#FCCA00
	}
	ul.graph li:nth-child(6)::before{
		background-color:#B9C600
	}
	ul.graph li:nth-child(5)::before{
		background-color:#3B952A
	}
	ul.graph li:nth-child(4)::before{
		background-color:#0E9772
	}
	ul.graph li:nth-child(3)::before{
		background-color:#179E97
	}
	ul.graph li:nth-child(8)::before{
		background-color:#59719D
	}
	ul.graph li:nth-child(9)::before{
		background-color:#68447F
	}
	ul.graph li:nth-child(10)::before{
		background-color:#E03D72
	}
	
	ul.graph.biz li:nth-child(6)::before{
		background-color:#E93B24
	}
	ul.graph.biz li:nth-child(7)::before{
		background-color:#EB6119
	}
	ul.graph.biz li:nth-child(8)::before{
		background-color:#FCCA00
	}
	ul.graph.biz li:nth-child(9)::before{
		background-color:#B9C600
	}
	ul.graph.biz li:nth-child(10)::before{
		background-color:#3B952A
	}
	ul.graph.biz li:nth-child(1)::before{
		background-color:#0E9772
	}
	ul.graph.biz li:nth-child(2)::before{
		background-color:#179E97
	}
	ul.graph.biz li:nth-child(3)::before{
		background-color:#59719D
	}
	ul.graph.biz li:nth-child(4)::before{
		background-color:#68447F
	}
	ul.graph.biz li:nth-child(5)::before{
		background-color:#E03D72
	}
	figcaption{
		font-size:14px;
		text-align: center;
	}
	h3.second+p{
		margin:50px auto 25px 50px;
		padding-left:70px;
		font-weight: bold;
		font-size:20px;
		background-repeat: no-repeat;
		background-image:url("../images/icon_idea.svg");
		background-position: left top;
		padding-top:15px;
	}
	h4.question{
		color:var(--red-color);
		position: relative;
		padding:25px;
		padding-top:80px;
		padding-left:90px;
		margin:25px 50px;
		border:3px solid var(--red-color);
		border-radius: 12px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-image:url("../images/icon_q.svg");
		background-size:50px;
		background-position: left 20px bottom 20px;
		font-weight: bold;
		font-size:20px;
	}
	h4.question::before{
		content: "企業アンケート";
		position: absolute;line-height: 50px;
		color:var(--red-color);
		top:0;
		left:0;
		text-indent: 25px;
		background:#ccc;
		display: block;
		width:100%;
		font-weight: bold;
		font-size:18px;
	}
	div.diffWrapper{
		display: flex;
		justify-content: center;
		gap:50px;
		align-items: stretch;
	}
	div.diff{
		box-sizing: border-box;
		border:5px solid var(--red-color);
		border-radius: 12px;
		width:calc(40% - 25px);
		background:#fff;
	}
	div.diff.left{
		border-color:var(--red-color);
	}
	div.diff.right{
		border-color:var(--blue-color);
	}
	h4.merit{
		font-size:20px;
		text-align: center;
		color:#fff;
		line-height: 3em;
	}
	.left h4.merit{
		background:var(--red-color)
	}
	.right h4.merit{
		background:var(--blue-color)
	}
	ul.merit{
		margin:25px;
	}
	ul.merit li{
		position: relative;
	}
	ul.merit > li{
		padding-left:25px;
	}
	ul.merit > li::before{
		position: absolute;
		content: "";
		width:14px;
		height: 14px;
		border-radius: 18px;
		margin:auto;
		border:3px solid var(--red-color);
		left:0;
		top:3px;
	}
	div.right ul.merit > li::before{
		border:3px solid var(--blue-color);
	}
	ul.merit > li ul{
		margin-left:20px;
		font-size:16px;
		margin-top:5px;
		margin-bottom:10px;
	}
	ul.merit > li ul li{
		padding-left:25px;
	}
	ul.merit > li ul li::before{
		position: absolute;
		content: "";
		width:7px;
		height: 7px;
		border-radius: 18px;
		margin:auto;
		background:var(--red-color);
		left:0;
		top:8px;
	}
	div.right ul.merit > li ul li::before{
		background:var(--blue-color);
	}
	ul.newapp{
		margin:25px 50px 0;
		box-sizing: border-box;
		padding:25px;
		background:#fefefe;
		border-top-left-radius: 12px;
		border-top-right-radius: 12px;
		font-size:20px;
	}
	ul.newapp li{
		background-repeat: no-repeat;
		background-image:url("../images/icon_check.svg");
		background-position: left top 5px;
		background-size:22px;
		padding-left:35px;
		margin-bottom:1em;
		color:var(--red-color);
	}
	ul.newapp2{
		margin:0 50px 25px;
		box-sizing: border-box;
		display: flex;
		justify-content: center;
		gap:100px;
		font-size:32px;
		line-height: 300px;
		font-weight: bold;
		background:#fefefe;
		border-bottom-left-radius: 12px;
		border-bottom-right-radius: 12px;
	}
	ul.newapp2 li{
		background-repeat:no-repeat;
		background-position: center center;
	}
	ul.newapp2 li.circle{
		background-image:url("../images/app_circle.svg");
	}
	ul.newapp2 li.tri{
		background-image:url("../images/app_tri.svg");
	}
	p.container{
		margin:25px 100px;
		font-size:32px;
		line-height: 2em;
		color:#fff;
	}
	p.container span{
		background-color:var(--red-color);
		padding:25px;
		border-radius: 6px;
		display: block;
		text-align: justify;
	}
	div.feature{
		display: flex;
		padding:50px 50px;
		background:#fff;
		justify-content: center;
		gap:25px;
		align-items: center;
		margin-bottom:100px;
	}
    div.feature.anno{
        margin-bottom:10px;
    }
	div.general{
		padding:25px 50px;
		background:#fff;
		gap:25px;
		margin-bottom:100px;
	}
    div.feature.noflex{
        display: block !important;
    }
	div.feature.column{
		flex-direction: column;
	}
	div.feature.column > div{
		width:100% !important;
	}
	div.feature.base{
		align-items: baseline;
	}
	div.feature.noBottomMargin{
		margin-bottom:0 !important;
	}
	div.feature.noTopMargin{
		margin-top:0 !important;
	}
	div.feature div.left,
	div.feature div.right{
		width:calc(50% - 12.5px);
	}
	div.feature div.right{
		text-align: center;
	}
	div.base div.right,
	div.feature div.right.left{
		text-align: left;
	}
	div.feature h4.feature{
		font-size:20px;
		font-weight: bold;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
	}
	div.feature h4.subtitle{
		text-align: center;
		margin-bottom:25px;
		border:3px solid gray;
		border-radius: 20px;
		line-height: 2em;
	}
	div.featureImg{
		width:100%;
		height: 211px;
	}
	h5.feature{
		margin-top:25px;
		font-weight: bold;
	}
	div.featureImg img{
		object-position: center bottom;
	}
	div.feature h4.ng{
		border-color:gray;
	}
	div.feature h4.ok{
		border-color:var(--red-color);
		color:var(--red-color);
		font-weight: bold;
	}
	div.feature ul.feature{
		margin:10px;
	}
	div.feature ul > li{
		position: relative;
		padding-left:15px;
		margin-bottom:1em;
	}
	div.feature div > ul ul > li{
		font-size:16px;
	}
	div.feature div > ul > li:not(.os_03a):not(.os_03b):not(.os_03c):not(.os_03d):not(.os_03e):not(.os_03f):not(.os_03g):not(.os_03h):not(.os_03i)::before{
		content: "";
		width:8px;
		height: 8px;
		border-radius: 8px;
		position: absolute;
		top:0.5em;
		left:0;
		background:var(--red-color);
	}
    .os_03a,.os_03b,.os_03c,.os_03d,.os_03e,.os_03f,.os_03g,.os_03h,.os_03i{
        padding-left:0 !important;
    }
	div.feature div > ul ul > li::before{
		content: "";
		width:8px;
		height: 8px;
		background-image:url("../images/icon_asterisk.svg");
		background-size:8px;
		background-repeat:no-repeat;
		background-position: center center;
		position: absolute;
		top:0.5em;
		left:0;
	}
	div.feature table.feature,
	table.release{
		width:100%;
		box-sizing: border-box;
		/*padding:10px;*/
		border:4px solid var(--red-color);
		border-collapse: separate;
		border-radius: 12px;
	}
	table.feature{}
	div.feature table.feature td{
		padding:10px;
		text-align: center;
		border-bottom:1px solid var(--red-color);
	}
	table.release td{
		padding:10px;
		border-bottom:1px solid #ccc;
	}
	table.product td{
		font-size:15px !important;
	}
	table.product thead td{
		font-size:inherit !important;
	}
	div.feature table.feature tr td:last-child{
		font-weight: bold;
		color:var(--red-color);
	}
	div.role{
		border:3px solid var(--red-color);
		border-radius: 12px;
		margin-top:25px;
	}
	div.role h4{
		line-height: 2em;
	}
	div.role ul.role{
		text-align: left;
		margin:25px;
	}
	ul.role li{
		position: relative;
		padding-left:25px !important;
		font-weight: bold;
	}
	ul.role li span{
		padding-left:50px !important;
	}
	ul.role li::before{
		content: "";
		width:14px;
		height: 14px;
		box-sizing: border-box;
		border:5px solid var(--red-color);
		border-radius:15px;
		position: absolute;
		top:0.3em;
		left:0;
	}
	p.strong{
		background:var(--red-color);
		text-align: center;
		color:#fff;
		font-size:32px;
		line-height: 2em;
		border-radius: 30px;
	}
	div.rho{
		border:3px solid var(--red-color);
		border-radius: 12px;
		margin-top:25px;
		position: relative;
	}
	h4.rho{
		background:#fff;
		margin-top:-30px;
		width:250px;
		margin:-30px auto 25px;
	}
	ul.rho{
		display: flex;
		justify-content: space-between;
		gap:15px;
		margin:auto 25px;
	}
	ul.rho li{
		width:calc(20% - 15px);
		padding:0;
		padding:10px;
		background:var(--red-color);
		color:#fff;
	}
	ul.rho li::before{
		display: none;
	}
	div.k8sWrapper{
		overflow: hidden;
	}
	div.k8s{
		border:3px solid var(--k8s-color);
		border-radius: 12px;
		margin:50px 25px 25px 25px;
		position: relative;
	}
	h4.k8s{
		background:#fff;
		margin-top:-30px;
		width:300px;
		margin:-30px auto 25px;
	}
	h4.k8s img{
		width:250px;
	}
	ul.k8s{
		display: flex;
		justify-content: space-between;
		gap:15px;
		margin:auto 25px;
	}
	ul.k8s li{
		width:calc(33% - 15px);
		padding:0;
		padding:20px 10px;
		background:var(--k8s-color);
		color:#fff;
		background-repeat:no-repeat;
		background-position: left 20px center;
		background-size:30px;
	}
	ul.k8s li::before{
		display: none;
	}
	ul.k8s li:nth-child(1){
		background-image:url("../images/k8s1.svg");
	}
	ul.k8s li:nth-child(2){
		background-image:url("../images/k8s2.svg");
	}
	ul.k8s li:nth-child(3){
		background-image:url("../images/k8s3.svg");
	}
	ul.matome{
		font-size:24px;
		background:#fff;
		padding:50px 50px 15px;
		margin-bottom:50px;
		color:var(--red-color);
	}
	ul.matome li{
		background-repeat:no-repeat;
		background-image:url("../images/icon_matome.svg");
		background-size:30px;
		background-position: left top 5px;
		padding-left:48px;
		margin-bottom:1em;
	}
}
@media(max-width:767.99px){
	div.h2Wrapper{
		width:100%;
		color:#fff;
		line-height: 80px;
		margin:auto;
		font-size:20px;
		font-weight: bold;
		padding-left:20px;
	}
	div.h2Wrapper span{
		font-size:20px;
	}
	/*p.pankuzu{
		line-height: 50px;
		margin:auto;
		display: flex;
		align-items: center;
		gap:15px;
		overflow-x:scroll;
		white-space: nowrap;
		margin-left:10px;
	}*/
	p.pankuzu {
		margin: 10px;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		overflow-x: auto;
		word-break: keep-all;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 10px;
		gap:10px;
	}
	p.pankuzu span.next{
		/*display: block;
		width:20px;
		height: 15px;
		background-image:url("../images/icon_breadcrumbs.svg");
		background-repeat:no-repeat;
		background-size:15px;
		background-position: center center;*/
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 4px 0 4px 8px;
		border-color: transparent transparent transparent var(--red-color);
		margin: 0 5px;
	}
	div.pageNav{
		width:var(--min-width);
		margin:50px auto;
		overflow: hidden;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap:10px;
	}
	div.pageNav div.page2{
		width:calc(100% - 50px);
		box-sizing: border-box;
		padding:10px;
		background:#fff;
		border:4px solid #ccc;
	}
	div.pageNav div.page2:hover{
		background:#efefef;
	}
	div.page2.previous{
		float: left;
	}
	div.page2.nexting{
		float: right;
	}
	div.page2 div.link{
		background-repeat: no-repeat;
		background-size:50px;
	}
	div.page2.previous div.link{
		background-image:url("../images/icon_prevepage.svg");
		padding-left:80px;
		background-position: left 10px center;
	}
	div.page2.nexting div.link{
		background-image:url("../images/icon_nextpage.svg");
		padding-right:80px;
		background-position: right 10px center;
	}
	div.page2 img{
		width:100%;
		height: 90px;
		object-fit: cover;
	}
	div.page2 h5,
	div.page2 h5:hover{
		font-weight: bold;
		border-bottom:2px solid var(--red-color);
		margin:15px 0;
		color:var(--red-color);
	}
	div.page2 p{
		color:#000;
	}
	div.stepWrapper{
		margin:75px auto;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		margin-bottom:50px;
		gap:10px;
	}
	dl.step3{
		width:calc(100% - 20px);
		margin:auto;
		box-sizing: border-box;
		/*padding:10px;*/
		background:lightgray;
		/*transform: skewY(5deg);*/
		border-radius: 12px;
		border:6px solid lightgray;
	}
	dl.step3.active,
	dl.step3:hover{
		border:6px solid var(--red-color);
		background:#fff;
	}
	dl.step3:hover dd{
		color:var(--red-color);
	}
	dl.step3 dt{
		font-size:20px;
		text-align: center;
		font-style: italic;
		font-weight: bold;
		color:var(--red-color);
		background-repeat: no-repeat;
		background-position: right top;
		background-size:100px;
		padding-bottom:10px;
		padding-top:10px;
	}
	dl.step3 dt.s1{
		background-image:url("../images/icon_why.svg");
	}
	dl.step3 dt.s2{
		background-image:url("../images/icon_what.svg");
	}
	dl.step3 dt.s3{
		background-image:url("../images/icon_how.svg");
	}
	dl.step3 dd{
		padding-top:10px;
		text-align: center;
		font-weight: bold;
	}
	h2.stepTitle{
		color:#fff;
		font-size:20px;
		border:3px solid #fff;
		margin:25px 10px;
		border-radius: 6px;
		overflow: hidden;
	}
	h2.stepTitle span.step{
		background:#fff;
		color:var(--red-color);
		display: block;
		/*padding:0 50px;*/
		font-style: italic;
		font-weight: bold;
		text-align: center;
	}
	h2.stepTitle span.title{
		text-align: center;
		display: block;
		line-height: 32px;
		font-size:16px;
	}
	h3.second{
		margin:50px 10px 25px;
		font-size:22px;
		color:var(--red-color);
		position: relative;
		padding-left:40px;
		font-weight: bold;
	}
	h3.second span.small{
		font-size:16px;
		color:#000;
		padding-left:1em;
	}
	h3.second::before{
		content: "";
		width:22px;
		height: 22px;
		border:3px solid var(--red-color);
		/*background:var(--red-color);*/
		position: absolute;
		border-radius: 28px;
		top:5px;
		left:0;
		margin:auto;
	}
	div.innerContents{
		margin:10px;
		margin-bottom:50px;
	}
	div.innerContents img{
		max-width:100%;
		height: auto;
	}
	div.innerContents p{
		margin:15px 0;
	}
	div.graph{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	div.graph figure{
		margin:0;
		font-size:12px;
	}
	ul.graph{
		margin-top:15px;
	}
	ul.graph li{
		position: relative;
		padding-left:25px;
		margin-bottom:0.5em;
	}
	ul.graph li::before{
		content: "";
		width:16px;
		height: 16px;
		border-radius: 16px;
		position: absolute;
		margin:auto;
		top:5px;
		left:0;

	}
	ul.graph li:nth-child(2)::before{
		background-color:#E93B24
	}
	ul.graph li:nth-child(1)::before{
		background-color:#EB6119
	}
	ul.graph li:nth-child(7)::before{
		background-color:#FCCA00
	}
	ul.graph li:nth-child(6)::before{
		background-color:#B9C600
	}
	ul.graph li:nth-child(5)::before{
		background-color:#3B952A
	}
	ul.graph li:nth-child(4)::before{
		background-color:#0E9772
	}
	ul.graph li:nth-child(3)::before{
		background-color:#179E97
	}
	ul.graph li:nth-child(8)::before{
		background-color:#59719D
	}
	ul.graph li:nth-child(9)::before{
		background-color:#68447F
	}
	ul.graph li:nth-child(10)::before{
		background-color:#E03D72
	}
	
	ul.graph.biz li:nth-child(6)::before{
		background-color:#E93B24
	}
	ul.graph.biz li:nth-child(7)::before{
		background-color:#EB6119
	}
	ul.graph.biz li:nth-child(8)::before{
		background-color:#FCCA00
	}
	ul.graph.biz li:nth-child(9)::before{
		background-color:#B9C600
	}
	ul.graph.biz li:nth-child(10)::before{
		background-color:#3B952A
	}
	ul.graph.biz li:nth-child(1)::before{
		background-color:#0E9772
	}
	ul.graph.biz li:nth-child(2)::before{
		background-color:#179E97
	}
	ul.graph.biz li:nth-child(3)::before{
		background-color:#59719D
	}
	ul.graph.biz li:nth-child(4)::before{
		background-color:#68447F
	}
	ul.graph.biz li:nth-child(5)::before{
		background-color:#E03D72
	}
	figcaption{
		font-size:14px;
		text-align: center;
	}
	h3.second+p{
		margin:25px auto 25px 10px;
		padding-left:40px;
		padding-right: 10px;
		font-weight: bold;
		font-size:18px;
		background-repeat: no-repeat;
		background-image:url("../images/icon_idea.svg");
		background-size:35px;
		background-position: left top;
		padding-top:15px;
	}
	h4.question{
		color:var(--red-color);
		position: relative;
		padding:10px;
		padding-top:60px;
		padding-left:80px;
		margin:25px 10px;
		border:3px solid var(--red-color);
		border-radius: 12px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-image:url("../images/icon_q.svg");
		background-size:35px;
		background-position: left 20px top 65px;
		font-weight: bold;
		font-size:18px;
	}
	h4.question::before{
		content: "企業アンケート";
		position: absolute;line-height: 50px;
		color:var(--red-color);
		top:0;
		left:0;
		text-indent: 25px;
		background:#ccc;
		display: block;
		width:100%;
		font-weight: bold;
		font-size:18px;
	}
	div.diffWrapper{
		display: flex;
		justify-content: center;
		flex-direction: column;
		gap:25px;
		align-items: stretch;
	}
	div.diff{
		box-sizing: border-box;
		border:5px solid var(--red-color);
		border-radius: 12px;
		width:calc(100% - 10px);
		background:#fff;
	}
	div.diff.left{
		border-color:var(--red-color);
	}
	div.diff.right{

		border-color:var(--blue-color);
	}
	h4.merit{
		font-size:20px;
		text-align: center;
		color:#fff;
		line-height: 3em;
	}
	.left h4.merit{
		background:var(--red-color)
	}
	.right h4.merit{
		background:var(--blue-color)
	}
	ul.merit{
		margin:15px;
	}
	ul.merit li{
		position: relative;
	}
	ul.merit > li{
		padding-left:25px;
	}
	ul.merit > li::before{
		position: absolute;
		content: "";
		width:14px;
		height: 14px;
		border-radius: 18px;
		margin:auto;
		border:3px solid var(--red-color);
		left:0;
		top:3px;
	}
	div.right ul.merit > li::before{
		border:3px solid var(--blue-color);
	}
	ul.merit > li ul{
		margin-left:0px;
		font-size:16px;
		margin-top:5px;
		margin-bottom:10px;
	}
	ul.merit > li ul li{
		padding-left:15px;
	}
	ul.merit > li ul li::before{
		position: absolute;
		content: "";
		width:7px;
		height: 7px;
		border-radius: 18px;
		margin:auto;
		background:var(--red-color);
		left:0;
		top:8px;
	}
	div.right ul.merit > li ul li::before{
		background:var(--blue-color);
	}
	ul.newapp{
		margin:10px 0 0;
		box-sizing: border-box;
		padding:25px;
		background:#fefefe;
		border-top-left-radius: 12px;
		border-top-right-radius: 12px;
	}
	ul.newapp li{
		background-repeat: no-repeat;
		background-image:url("../images/icon_check.svg");
		background-position: left top 5px;
		background-size:22px;
		padding-left:35px;
		margin-bottom:1em;
		color:var(--red-color);
	}
	ul.newapp2{
		margin:0 0 25px;
		box-sizing: border-box;
		display: flex;
		justify-content: center;
		gap:20px;
		font-size:18px;
		font-weight: bold;
		background:#fefefe;
		border-bottom-left-radius: 12px;
		border-bottom-right-radius: 12px;
	}
	ul.newapp2 li{
		background-repeat:no-repeat;
		background-position: center center;
		background-size:60px;
		margin:10px;
		padding:30px 0;
	}
	ul.newapp2 li.circle{
		background-image:url("../images/app_circle.svg");
	}
	ul.newapp2 li.tri{
		background-image:url("../images/app_tri.svg");
	}
	p.container{
		margin:10px;
		font-size:18px;
		line-height: 1.5em;
		color:#fff;
	}
	p.container span{
		background-color:var(--red-color);
		padding:10px;
		border-radius: 6px;
		text-align: justify;
		display: block;
	}
	div.feature{
		display: flex;
		padding:10px;
		background:#fff;
		justify-content: center;
		gap:25px;
		align-items: center;
		margin-bottom:50px;
		flex-direction: column;
	}
    div.feature.anno{
        margin-bottom:10px;
    }
	div.general{
		padding:10px;
		background:#fff;
		gap:25px;
		margin-bottom:50px;
	}
    div.feature.noflex{
        display: block !important;
    }
	div.feature.column{
		flex-direction: column;
	}
	div.feature.column > div{
		/*width:100% !important*/;
	}
	div.feature.base{
		align-items: baseline;
	}
	div.feature.noBottomMargin{
		margin-bottom:0 !important;
	}
	div.feature.noTopMargin{
		margin-top:0 !important;
	}
	div.feature div.left,
	div.feature div.right{
		width:calc(100% - 12.5px);
		margin: auto;
	}
	div.feature div.right{
		text-align: center;
	}
	div.base div.right{
		text-align: left;
	}
	div.feature h4.feature{
		font-size:20px;
		font-weight: bold;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
	}
	div.feature h4.subtitle{
		text-align: center;
		margin-bottom:25px;
		border:3px solid gray;
		border-radius: 20px;
		line-height: 2em;
	}
	div.featureImg{
		width:100%;
		height: 211px;
	}
	h5.feature{
		margin-top:25px;
		font-weight: bold;
	}
	div.featureImg img{
		object-position: center bottom;
	}
	div.feature h4.ng{
		border-color:gray;
	}
	div.feature h4.ok{
		border-color:var(--red-color);
		color:var(--red-color);
		font-weight: bold;
	}
	div.feature ul.feature{
		margin:10px;
	}
	div.feature ul > li{
		position: relative;
		padding-left:20px;
		margin-bottom:5px;
	}
	div.feature div > ul ul > li{
		font-size:16px;
	}
	div.feature div > ul > li:not(.os_03a):not(.os_03b):not(.os_03c):not(.os_03d):not(.os_03e):not(.os_03f):not(.os_03g):not(.os_03h):not(.os_03i)::before{
		content: "";
		width:8px;
		height: 8px;
		border-radius: 8px;
		position: absolute;
		top:0.5em;
		left:0;
		background:var(--red-color);
	}
    .os_03a,.os_03b,.os_03c,.os_03d,.os_03e,.os_03f,.os_03g,.os_03h,.os_03i{
        padding-left:0 !important;
    }
	div.feature div > ul ul > li::before{
		content: "";
		width:8px;
		height: 8px;
		background-image:url("../images/icon_asterisk.svg");
		background-size:8px;
		background-repeat:no-repeat;
		background-position: center center;
		position: absolute;
		top:0.5em;
		left:0;
	}
	div.feature table.feature{
		width:100%;
		box-sizing: border-box;
		/*padding:10px;*/
		border:4px solid var(--red-color);
		border-collapse: separate;
		border-radius: 12px;
	}
	table.release{
		box-sizing: border-box;
		/*padding:10px;*/
		border:4px solid var(--red-color);
		border-collapse: separate;
		border-radius: 12px;
	}
	table.feature{}
	div.feature table.feature td{
		padding:10px;
		text-align: center;
		border-bottom:1px solid var(--red-color);
	}
	table.release td{
		padding:10px;
		border-bottom:1px solid #ccc;
	}
	table.product td{
		font-size:15px !important;
	}
	table.product thead td{
		font-size:inherit !important;
	}
	div.feature table.feature tr td:last-child{
		font-weight: bold;
		color:var(--red-color);
	}
	div.role{
		border:3px solid var(--red-color);
		border-radius: 12px;
		margin-top:25px;
	}
	div.role h4{
		line-height: 2em;
	}
	div.role ul.role{
		text-align: left;
		margin:25px;
	}
	ul.role li{
		position: relative;
		padding-left:25px !important;
		font-weight: bold;
	}
	ul.role li span{
		padding-left:50px !important;
	}
	ul.role li::before{
		content: "";
		width:14px;
		height: 14px;
		box-sizing: border-box;
		border:5px solid var(--red-color);
		border-radius:15px;
		position: absolute;
		top:0.3em;
		left:0;
	}
	p.strong{
		background:var(--red-color);
		text-align: center;
		color:#fff;
		font-size:20px;
		border-radius: 12px;
		padding:5px 0;
	}
	div.rho{
		border:3px solid var(--red-color);
		border-radius: 12px;
		margin-top:25px;
		position: relative;
	}
	h4.rho{
		background:#fff;
		margin-top:-30px;
		width:175px;
		margin:-30px auto 12.5px;
	}
	ul.rho{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:10px;
		margin:auto 5px;
		padding:10px;
	}
	ul.rho li{
		padding:0;
		padding:10px;
		background:var(--red-color);
		color:#fff;
	}
	ul.rho li::before{
		display: none;
	}
	div.k8sWrapper{
		overflow: hidden;
	}
	div.k8s{
		border:3px solid var(--k8s-color);
		border-radius: 12px;
		margin:10px;
		margin-top:25px;
		position: relative;
	}
	h4.k8s{
		background:#fff;
		margin-top:-30px;
		width:180px;
		margin:-15px auto 25px;
	}
	h4.k8s img{
		width:150px;
	}
	ul.k8s{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:10px;
		margin:0 25px auto;
		padding-bottom:10px;
	}
	ul.k8s li{
		width:calc(100% - 10px);
		padding:0;
		padding:10px 5px;
		background:var(--k8s-color);
		color:#fff;
		background-repeat:no-repeat;
		background-position: left 20px center;
		background-size:25px;
		margin-bottom:5px;
	}
	ul.k8s li::before{
		display: none;
	}
	ul.k8s li:nth-child(1){
		background-image:url("../images/k8s1.svg");
	}
	ul.k8s li:nth-child(2){
		background-image:url("../images/k8s2.svg");
	}
	ul.k8s li:nth-child(3){
		background-image:url("../images/k8s3.svg");
	}
	ul.matome{
		font-size:18px;
		background:#fff;
		padding:25px 10px 15px;
		margin-bottom:50px;
		color:var(--red-color);
	}
	ul.matome li{
		background-repeat:no-repeat;
		background-image:url("../images/icon_matome.svg");
		background-size:24px;
		background-position: left top 5px;
		padding-left:37px;
		margin-bottom:1em;
	}

}
@media(min-width:768px){
	table.corevalue{
		background:#fff;
		border-top:2px solid #ccc;
		width:100%;
		position: relative;
	}
	table.corevalue::after{
		content: "";
		width:300px;
		height: 200px;
		boder:3px solid var(--red-color);
		position: absolute;
		top:-5px;
		right:-5px;
	}
	table.corevalue td{
		padding:15px;
		border-bottom:2px solid #ccc;
		text-align: center;
	}
	table.corevalue td span{
		display: block;
		font-size:14px;
	}
	table.corevalue tr:first-child td{
		font-size:28px;
		text-align: center;
		font-weight: bold;
		background:#ccc;
	}
	table.corevalue tr td:last-child{
		color:var(--red-color);
	}
	table.corevalue tr:last-child td{
		text-align: center;
		font-weight: bold;
	}
	table.corevalue tr:last-child td:first-child{
		background-repeat: no-repeat;
		background-image:
			url("../images/core_left.svg"),
			url("../images/core_right.svg");
		background-position: 
			left 5px center,
			right 5px center;
	}
	table.corevalue tr:last-child td:last-child{
		background-repeat: no-repeat;
		background-image:
			url("../images/core_left_red.svg"),
			url("../images/core_right_red.svg");
		background-position: 
			left 5px center,
			right 5px center;
	}
	ul.nok8s{
		color:var(--blue-color);
		font-size:24px;
		background:#fff;
		padding:50px;
	}
	ul.nok8s li{
		margin-bottom:1em;
		position: relative;
		padding-left:40px;
	}
	ul.nok8s li::before{
		content: "";
		width:25px;
		height: 6px;
		background:var(--blue-color);
		position: absolute;
		top:0.6em;
		left:0;

	}
	ul.nok8s li span{
		display: block;
		font-size:18px;
		color:#333;
		margin-top:5px;
	}
	div.comparison{
		display: flex;
		/*justify-content: space-between;*/
		gap:25px;
		padding:25px 50px;
		background:#fff;
	}
	div.comparison  div.left{
		width:calc(35% - 12.5px);
		flex-basis: 1;
	}
	div.comparison  div.right{
		width:calc(65% - 12.5px);
		flex-basis: 2;
	}
	div.comparison h3{
		text-align: center;
		font-size:24px;
		font-weight: bold;
		margin-bottom:25px;
	}
	div.comparison h3.k{
		color:var(--k8s-color);
		border-bottom:3px solid var(--k8s-color);
	}
	div.comparison h3.o{
		color:var(--red-color);
		border-bottom:3px solid var(--red-color);
	}
	div.block{
		border:2px dashed #666;
		border-radius: 12px;
		padding:15px;
		margin-bottom:50px;
		position: relative;
	}
	div.block::after{
		content:"";
		width:30px;
		height: 30px;
		background:url("../images/icon_plus.svg") center center no-repeat;
		background-size:30px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-40px;
	}
	div.block:last-child::after{
		display: none;
	}
	div.block h4{
		text-align: center;
		font-weight: bold;
		margin-bottom:10px;
	}
	div.block.noline{
		border-color:#fff;
	}
	div.compoWrapper{
		display: flex;
		justify-content: space-between;
		gap:15px;
	}
	div.compoWrapper div.column{
		display: flex;
		flex-direction: column;
		gap:10px;
	}
	div.compo{
		background:var(--k8s-color);
		padding:10px;
		color:#fff;
	}
	div.compo.red{
		background:var(--red-color);
	}
	div.compo h5{
		font-weight: bold;
		text-align: center;
	}
	div.compo p{
		font-size:14px;
		text-align: center;
		padding:0 !important;
		margin:0 !important;
	}
	dl.description{
		margin-top:10px;
		padding:10px;
		background:#efefef;
	}
	dl.description dt{
		font-weight: bold;
	}
	dl.description dd{
		font-size:16px;
	}
	dl.description ol{
		margin-left:30px;
	}
	div.compo h5.redhat{
		background:url("../images/logo_rh_white.svg") left 20px center no-repeat;
		background-size:100px;
	}
    dl.annotation{
        font-size:15px;
		overflow: hidden;
		box-sizing: border-box;
		padding:15px;
		background:#efefef;
		border-radius: 6px;
		margin-bottom:25px;
    }
	dl.annotation dt{
		width:2.5em;
		float: left;
		clear: both;
	}
	dl.annotation dd{
		width:calc(100% - 2.5em);
		float: right;
	}
	dl.annotation.wide dt{
		width:8em;
		float: left;
		clear: both;
	}
	dl.annotation.wide dd{
		width:calc(100% - 8em);
		float: right;
	}
    h4.expansion{
        color:var(--red-color);
        font-weight: bold;
    }
    h4.expansion + p{
        margin-left:100px;
    }
    h4.verup{
        font-size:20px;
        text-align: center;
        color:#fff;line-height: 2em;
        font-weight: bold;
        margin-bottom:25px;
    }
    h4.verup.kubernetes{
        background:var(--k8s-color);
    }
    h4.verup.openshift{
        background:var(--red-color);
    }
    div.k8sverup,
    div.openshiftverup{
        position: relative;
    }
    div.k8sverup p{
        width:80%;
        position: absolute;
        padding:15px;
        background:#efefef;
        margin:auto;
        left:0;
        right:0;
        bottom:25px;
        box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
    }
    div.openshiftverup p{
        width:90%;
        position: absolute;
        padding:15px;
        background:#efefef;
        margin:auto;
        box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
        box-sizing: border-box;
        text-align: center;
    }
    div.openshiftverup p.p1{
        left:0;
        right:0;
        top:100px;
    }
    div.openshiftverup p.p2{
        left:0;
        right:0;
        bottom:-70px;
    }
    dl.update{
        margin:25px 25px;
        display: flex;
        justify-content: space-between;
        gap:100px;
        align-items: center;
        background:url("../images/arrow_update.svg") center center no-repeat;
        background-size:60px;
    }
    dl.update ul{
        border:2px solid var(--red-color);
        padding:15px;
        border-radius: 6px;
    }
    dl.update li{
        font-size:20px;
        background-image:url("../images/icon_update.svg");
        background-repeat:no-repeat;
        background-position: left center;
        background-size:20px;
        padding-left:30px !important;
    }
    dl.update li:last-child{
        margin-bottom:0;
    }
    dl.update dd{
        background:var(--red-color);
        font-size:22px;
        font-weight: bold;
        color:#fff;
        padding:10px 20px;
        border-radius: 6px;
    }
	dl.release{
		margin:15px 0;
	}
    ul.release li{
        margin-bottom:0.5em !important;
    }
    dl.release dd{
        margin-left:50px;
        position: relative;
    }
    dl.release dd.after::after{
        content: "年3回";
        display: block;
        position: absolute;
        width:5em;
        height: 1em;
        line-height: 1em;
        right:0;
        top:0;
        bottom:0;
        margin:auto;
    }
    dl.release dd.after::before{
        content: "";
        display: block;
        position: absolute;
        width:20px;
        height: 5.5em;
        right:100px;
        top:0;
        bottom:0;
        margin:auto;
        background-image:url("../images/bracket.svg");
        background-position: right center;
        background-repeat:no-repeat;
        background-size:20px;
    }
    ul.support{
        margin-left:150px;
        margin-bottom:50px;
    }
    ul.support li{
        list-style: disc;
    }
	table.platform{
		width:100%
	}
	table.platform td{
		font-size:16px;
		font-weight: bold;
		width:calc((100% / 7) - 15px) !important;
		padding:7.5px;
		text-align: center;
	}
	table.platform td span{
		font-size:13px;
		display: block;
	}
	table.platform td.img{
		vertical-align: middle;
	}
	table.platform td.img img{
		width:70%
	}
	table.platform tr td.img.aws img{
		width:50%
	}
	table.platform td.col1{
		
	}
}
@media(max-width:767.99px){
	table.corevalue{
		background:url("../images/why_mobile_01.jpg") no-repeat;
		width:100%;
		height:0;
		padding-top:35%;
		display: block;
		background-size:contain;
	}
	table.corevalue td{
		display: none;
	}
	table.corevalue::after{
		content: "";
		width:300px;
		height: 200px;
		boder:3px solid var(--red-color);
		position: absolute;
		top:-5px;
		right:-5px;
	}
	table.corevalue td{
		padding:15px;
		border-bottom:2px solid #ccc;
		text-align: center;
	}
	table.corevalue td span{
		display: block;
		font-size:14px;
	}
	table.corevalue tr:first-child td{
		font-size:28px;
		text-align: center;
		font-weight: bold;
		background:#ccc;
	}
	table.corevalue tr td:last-child{
		color:var(--red-color);
	}
	table.corevalue tr:last-child td{
		text-align: center;
		font-weight: bold;
	}
	table.corevalue tr:last-child td:first-child{
		background-repeat: no-repeat;
		background-image:
			url("../images/core_left.svg"),
			url("../images/core_right.svg");
		background-position: 
			left 5px center,
			right 5px center;
	}
	table.corevalue tr:last-child td:last-child{
		background-repeat: no-repeat;
		background-image:
			url("../images/core_left_red.svg"),
			url("../images/core_right_red.svg");
		background-position: 
			left 5px center,
			right 5px center;
	}
	ul.nok8s{
		color:var(--blue-color);
		font-size:18px;
		background:#fff;
		padding:10px;
	}
	ul.nok8s li{
		margin-bottom:1em;
		position: relative;
		padding-left:40px;
	}
	ul.nok8s li::before{
		content: "";
		width:25px;
		height: 6px;
		background:var(--blue-color);
		position: absolute;
		top:0.6em;
		left:0;

	}
	ul.nok8s li span{
		display: block;
		font-size:18px;
		color:#333;
	}
	div.comparison{
		width:100%;
		height: 0;
		padding-top:143%;
		background:url("../images/why_mobile_02.jpg") no-repeat;
		background-size:contain;
	}
	div.comparison div{
		display: none;
	}
	div.comparison  div.left{
		width:calc(35% - 12.5px);
		flex-basis: 1;
	}
	div.comparison  div.right{
		width:calc(65% - 12.5px);
		flex-basis: 2;
	}
	div.comparison h3{
		text-align: center;
		font-size:24px;
		font-weight: bold;
		margin-bottom:25px;
	}
	div.comparison h3.k{
		color:var(--k8s-color);
		border-bottom:3px solid var(--k8s-color);
	}
	div.comparison h3.o{
		color:var(--red-color);
		border-bottom:3px solid var(--red-color);
	}
	div.block{
		border:2px dashed #666;
		border-radius: 12px;
		padding:15px;
		margin-bottom:50px;
		position: relative;
	}
	div.block::after{
		content:"";
		width:30px;
		height: 30px;
		background:url("../images/icon_plus.svg") center center no-repeat;
		background-size:30px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		bottom:-40px;
	}
	div.block:last-child::after{
		display: none;
	}
	div.block h4{
		text-align: center;
		font-weight: bold;
		margin-bottom:10px;
	}
	div.block.noline{
		border-color:#fff;
	}
	div.compoWrapper{
		display: flex;
		justify-content: space-between;
		gap:15px;
	}
	div.compoWrapper div.column{
		display: flex;
		flex-direction: column;
		gap:10px;
	}
	div.compo{
		background:var(--k8s-color);
		padding:10px;
		color:#fff;
	}
	div.compo.red{
		background:var(--red-color);
	}
	div.compo h5{
		font-weight: bold;
		text-align: center;
	}
	div.compo p{
		font-size:14px;
		text-align: center;
		padding:0 !important;
		margin:0 !important;
	}
	dl.description{
		margin-top:10px;
		padding:10px;
		background:#efefef;
	}
	dl.description dt{
		font-weight: bold;
	}
	dl.description dd{
		font-size:16px;
	}
	dl.description ol{
		margin-left:30px;
	}
	div.compo h5.redhat{
		background:url("../images/logo_rh_white.svg") left 20px center no-repeat;
		background-size:100px;
	}
    dl.annotation{
        font-size:12px;
		overflow: hidden;
		box-sizing: border-box;
		padding:10px;
		background:#efefef;
		border-radius: 6px;
		margin-bottom:25px;
		margin-left:20px;
		margin-right: 20px;
    }
    dl.annotation.wide dt{
        float: none;
        width: 100%;
    }
	dl.annotation dt{
		width:2.5em;
		float: left;
		clear: both;
	}
	dl.annotation dd{
		width:calc(100% - 2.5em);
		float: right;
	}
    h4.expansion{
        color:var(--red-color);
        font-weight: bold;
    }
    h4.expansion + p{
        margin-left:30px;
    }
    h4.verup{
        font-size:20px;
        text-align: center;
        color:#fff;line-height: 2em;
        font-weight: bold;
        margin-bottom:25px;
    }
    h4.verup.kubernetes{
        background:var(--k8s-color);
    }
    h4.verup.openshift{
        background:var(--red-color);
    }
    div.k8sverup,
    div.openshiftverup{
        position: relative;
    }
    div.openshiftverup{
        position: relative;
		margin-bottom:30px;
    }
    div.k8sverup p{
        width:80%;
        position: absolute;
        padding:15px;
        background:#efefef;
        margin:auto;
        left:0;
        right:0;
        bottom:25px;
        box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
    }
    div.openshiftverup p{
        width:90%;
        position: absolute;
        padding:15px;
        background:#efefef;
        margin:auto;
        box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
        box-sizing: border-box;
        text-align: center;
    }
    div.openshiftverup p.p1{
        left:0;
        right:0;
        top:100px;
    }
    div.openshiftverup p.p2{
        left:0;
        right:0;
        bottom:-70px;
    }
    dl.update{
        margin:25px 25px;
        display: flex;
        justify-content: space-between;
        gap:100px;
        align-items: center;
        background:url("../images/arrow_update.svg") center center no-repeat;
        background-size:60px;
    }
    dl.update ul{
        border:2px solid var(--red-color);
        padding:15px;
        border-radius: 6px;
    }
    dl.update li{
        font-size:20px;
        background-image:url("../images/icon_update.svg");
        background-repeat:no-repeat;
        background-position: left center;
        background-size:20px;
        padding-left:30px !important;
    }
    dl.update li:last-child{
        margin-bottom:0;
    }
    dl.update dd{
        background:var(--red-color);
        font-size:22px;
        font-weight: bold;
        color:#fff;
        padding:10px 20px;
        border-radius: 6px;
    }
	dl.release{
		margin:15px 0;
	}
    ul.release li{
        margin-bottom:0.5em !important;
    }
    dl.release dd{
        margin-left:50px;
        position: relative;
    }
    dl.release dd.after::after{
        content: "年3回";
        display: block;
        position: absolute;
        width:5em;
        height: 1em;
        line-height: 1em;
        right:0;
        top:0;
        bottom:0;
        margin:auto;
    }
    dl.release dd.after::before{
        content: "";
        display: block;
        position: absolute;
        width:20px;
        height: 5.5em;
        right:100px;
        top:0;
        bottom:0;
        margin:auto;
        background-image:url("../images/bracket.svg");
        background-position: right center;
        background-repeat:no-repeat;
        background-size:20px;
    }
    ul.support{
        margin-left:65px;
		margin-right: 10px;
        margin-bottom:50px;
    }
    ul.support li{
        list-style: disc;
    }
	table.platform{
		width:100%
	}
	table.platform td{
		font-size:16px;
		font-weight: bold;
		width:calc((100% / 7) - 15px) !important;
		padding:7.5px;
		text-align: center;
	}
	table.platform td span{
		font-size:13px;
		display: block;
	}
	table.platform td.img{
		vertical-align: middle;
	}
	table.platform td.img img{
		width:70%
	}
	table.platform tr td.img.aws img{
		width:50%
	}
	table.platform td.col1{
		
	}}
@media(min-width:768px){
	img.about_openshift{
		width:400px;
		margin:50px auto;
	}
	p.about_openshift{
		font-size:28px;
	}
	ul.os_01{
		font-size:24px;
		color:var(--red-color);
	}
	ul.os_01 li{
		position: absolute;
		background:url("../images/icon_double.svg") left top no-repeat;
		line-height: 40px;
		padding-left:55px !important;
	}
	div.about_openshift2{
		border:5px solid var(--k8s-color);
		box-sizing: border-box;
		border-radius: 12px;
		position: relative;
	}
	h4.redhat{
		position: absolute;
		margin:auto;
		width:200px;
		height: 67px;
		left:0;
		right:0;
		top:-33px;
		background:#fff;
		padding:0 50px;
	}
	div.about_openshift2 ul{
		display: flex;
		justify-content: center;
		gap:25px;
		margin:70px 25px 0;
	}
	div.about_openshift2 li::before{
		display: none;
	}
	div.about_openshift2 li{
		list-style: none !important;
		border:3px solid var(--k8s-color);
		width:calc(20%);
		padding:10px;
		color:var(--k8s-color);
	}
	div.about_openshift2 div.k8s_logo{
		text-align: center;
		width:calc(100% - 50px);
		background:var(--k8s-color);
		margin:0 25px 25px;
		padding:15px 0;
	}
	h4.os_02{
		font-weight: bold;
		font-size:24px;
	}
	h4.os_02.blue{
		color:var(--k8s-color);	
	}
	p.os_02{
		background:#efefef;
		padding:15px;
	}
    div.inner40left{
        width:43%;
        float: left;
        margin-bottom:50px;
    }
    div.inner60right{
        width:calc(57% - 10px);
        float: right;
        margin-bottom:50px;
    }
    div.inner60left{
        width:60%;
        float: left;
        margin-bottom:50px;
    }
    div.inner40right{
        width:calc(40% - 10px);
        float: right;
        margin-bottom:50px;
    }
    div.os_03 {
        padding:10px;
        background:#efefef;
        margin-bottom:10px;
        padding-bottom: 20px;
    }
    div.os_03Wrapper{
        background:url("../images/os_03arrow.svg") right center no-repeat;
        background-size:20px;
        padding-right: 30px;
    }
    h4.os_03 {
        font-weight: bold;
        font-size:20px;
        color:#00b9e4;
    }
    h4.os_04 {
        font-weight: bold;
        font-size:20px;
        color:#326ce5;
    }
    ul.os_03{
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
    }
    p.os_03{
        margin-bottom:10px;
        text-align: justify
    }
    ul.os_03 li{
        width:calc(28%);
        height: 50px;
        text-align: center;
        position: relative;
        color:#fff;
        display: table;
        vertical-align: middle;
        line-height: 1.2em;
        font-size:14px;
    }
    ul.os_03.lightblue li{
        background:#00b9e4;
    }
    ul.os_03.darkblue li{
        background:#326ce5;
        margin-bottom:12px;
        width:calc(30%);
    }
    ul.os_03 li span{
        display: table-cell;
        vertical-align: middle;
    }
    ul.os_03 li::after{
        content:"";
        width:30px;
        height: 30px;
        position: absolute;
        background-size:30px;
        bottom:-15px;
        left:-15px;
    }
    li.os_03a::after{
        background-image:url("../images/os_03a.svg");
    }
    li.os_03b::after{
        background-image:url("../images/os_03b.svg");
    }
    li.os_03c::after{
        background-image:url("../images/os_03c.svg");
    }
    li.os_03d::after{
        background-image:url("../images/os_03d.svg");
    }
    li.os_03e::after{
        background-image:url("../images/os_03e.svg");
    }
    li.os_03f::after{
        background-image:url("../images/os_03f.svg");
    }
    li.os_03g::after{
        background-image:url("../images/os_03g.svg");
    }
    li.os_03h::after{
        background-image:url("../images/os_03h.svg");
    }
    ul.os_03.nomark li{
        padding-left:0;
    }
    ul.os_03.nomark li::before{
        display:none !important;
    }
    div.containerBox{
        width:100%;
    }
	div.pWrapper{
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin-bottom: 10px;
		gap:10px;
	}
	div.pWrapper div.p{
		width:calc((100% / 6) - 26px);
		width:155px;
		box-sizing: border-box;
		background:#eee;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		padding:10px 5px;
		font-size:16px;
	}
	div.pWrapper div.p a{
		font-size:12px;
		line-height: 1.2em !important;
		color:var(--k8s-color);
	}
	div.pWrapper div.p img{
		width:80%;
		height: auto;
	}
	div.pWrapper img.aws{
		width:40% !important;
	}
	div.pWrapper img+span{
		display: block;
	}
	div.trans div.p{
		background:none !important;
	}
	div.area{
		gap:10px;
		justify-content: space-between;
	}
	div.area div{
		text-align: center;
		font-size:16px;
		line-height: 2em;
		padding-top:20px;
		position: relative;
	}
	div.area div.ccsp{
		width:650px;
	}
	div.area div::before{
		content: "";
		height: 17px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		top:5px;
	}
	div.area div.ccsp::before{
		width:650px;
		background:url("../images/area_l.svg") center center no-repeat;
	}
	div.area div.redhat::before,
	div.area div.plane::before{
		width:155px;
		background:url("../images/area_s.svg") center center no-repeat;
	}
	div.area div.redhat{
		width:155px;
	}
	div.area div.plane{
		width:155px;
	}
	div.service{
		gap:15px;
		color:#fff;
	}
	div.service div.self{
		width:calc((100% / 6) - 10px);
		width:155px;
		flex-basis: 1;
		background:gray;
		text-align: center;
		display: block;
		line-height: 2em;
	}
	div.service div.manage{
		flex:1;
		background:gray;
		display: block;
		width:100%;
		text-align: center;
		line-height: 2em;
	}
}
@media(max-width:767.99px){
	img.about_openshift{
		width:250px;
		margin:50px auto;
	}
	p.about_openshift{
		font-size:20px;
	}
	ul.os_01{
		font-size:18px;
		color:var(--red-color);
	}
	ul.os_01 li{
		position: absolute;
		background:url("../images/icon_double.svg") left top 0.2em no-repeat;
		background-size:22px;
		padding-left:35px !important;
	}
	div.about_openshift2{
		border:5px solid var(--k8s-color);
		box-sizing: border-box;
		border-radius: 12px;
		position: relative;
	}
	h4.redhat{
		position: absolute;
		margin:auto;
		width:150px;
		height: 67px;
		left:0;
		right:0;
		top:-33px;
		background:#fff;
		padding:0 25px;
	}
	div.about_openshift2 ul{
		display: flex;
		justify-content: center;
		flex-direction: column;
		gap:5px;
		margin:50px 25px 0;
	}
	div.about_openshift2 li::before{
		display: none;
	}
	div.about_openshift2 li{
		list-style: none !important;
		border:3px solid var(--k8s-color);
		width:calc(100% - 25px);
		padding:10px;
		color:var(--k8s-color);
	}
	div.about_openshift2 div.k8s_logo{
		text-align: center;
		width:calc(100% - 50px);
		background:var(--k8s-color);
		margin:10px 25px 25px;
		padding:15px 0;
	}
	h4.os_02{
		font-weight: bold;
		font-size:18px;
	}
	h4.os_02.blue{
		color:var(--k8s-color);	
	}
	p.os_02{
		background:#efefef;
		padding:15px;
	}
    div.inner40left{
        width:100%;
        margin-bottom:25px;
    }
    div.inner60right{
        width:100%;
        margin-bottom:25px;
    }
    div.inner60left{
        width:60%;
        float: left;
        margin-bottom:50px;
    }
    div.inner40right{
        width:calc(40% - 10px);
        float: right;
        margin-bottom:50px;
    }
    div.os_03 {
        padding:10px;
        background:#efefef;
        margin-bottom:10px;
        padding-bottom: 20px;
    }
    div.os_03Wrapper{
        background:url("../images/about_os_mobile_01.jpg") center center no-repeat;
        width:100%;
		height: 0;
		padding-top:66%;
		background-size: contain;
    }
	div.os_03Wrapper div,
	div.os_03Wrapper h4,
	div.os_03Wrapper ul{
		display: none;
	}
    h4.os_03 {
        font-weight: bold;
        font-size:20px;
        color:#00b9e4;
    }
    h4.os_04 {
        font-weight: bold;
        font-size:20px;
        color:#326ce5;
    }
    ul.os_03{
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
    }
    p.os_03{
        margin-bottom:10px;
        text-align: justify
    }
    ul.os_03 li{
        width:calc(28%);
        height: 50px;
        text-align: center;
        position: relative;
        color:#fff;
        display: table;
        vertical-align: middle;
        line-height: 1.2em;
        font-size:14px;
    }
    ul.os_03.lightblue li{
        background:#00b9e4;
    }
    ul.os_03.darkblue li{
        background:#326ce5;
        margin-bottom:12px;
        width:calc(30%);
    }
    ul.os_03 li span{
        display: table-cell;
        vertical-align: middle;
    }
    ul.os_03 li::after{
        content:"";
        width:30px;
        height: 30px;
        position: absolute;
        background-size:30px;
        bottom:-15px;
        left:-15px;
    }
    li.os_03a::after{
        background-image:url("../images/os_03a.svg");
    }
    li.os_03b::after{
        background-image:url("../images/os_03b.svg");
    }
    li.os_03c::after{
        background-image:url("../images/os_03c.svg");
    }
    li.os_03d::after{
        background-image:url("../images/os_03d.svg");
    }
    li.os_03e::after{
        background-image:url("../images/os_03e.svg");
    }
    li.os_03f::after{
        background-image:url("../images/os_03f.svg");
    }
    li.os_03g::after{
        background-image:url("../images/os_03g.svg");
    }
    li.os_03h::after{
        background-image:url("../images/os_03h.svg");
    }
    ul.os_03.nomark li{
        padding-left:0;
    }
    ul.os_03.nomark li::before{
        display:none !important;
    }
    div.containerBox{
        width:100%;
    }
	div.pWrapper,
	div.pWrapper{
		display: none;
	}
	div.every{
		background:url("../images/about_os_mobile_02.jpg") center center no-repeat;
		width:100%;
		height: 0;
		padding-top:44%;
		background-size: contain;
	}
	div.pWrapper div.p{
		width:calc((100% / 6) - 26px);
		width:155px;
		box-sizing: border-box;
		background:#eee;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		padding:10px 5px;
		font-size:16px;
	}
	div.pWrapper div.p a{
		font-size:12px;
		line-height: 1.2em !important;
		color:var(--k8s-color);
	}
	div.pWrapper div.p img{
		width:80%;
		height: auto;
	}
	div.pWrapper img.aws{
		width:40% !important;
	}
	div.pWrapper img+span{
		display: block;
	}
	div.trans div.p{
		background:none !important;
	}
	div.area{
		gap:10px;
		justify-content: space-between;
	}
	div.area div{
		text-align: center;
		font-size:16px;
		line-height: 2em;
		padding-top:20px;
		position: relative;
	}
	div.area div.ccsp{
		width:650px;
	}
	div.area div::before{
		content: "";
		height: 17px;
		position: absolute;
		margin:auto;
		left:0;
		right:0;
		top:5px;
	}
	div.area div.ccsp::before{
		width:650px;
		background:url("../images/area_l.svg") center center no-repeat;
	}
	div.area div.redhat::before,
	div.area div.plane::before{
		width:155px;
		background:url("../images/area_s.svg") center center no-repeat;
	}
	div.area div.redhat{
		width:155px;
	}
	div.area div.plane{
		width:155px;
	}
	div.service{
		gap:15px;
		color:#fff;
	}
	div.service div.self{
		width:calc((100% / 6) - 10px);
		width:155px;
		flex-basis: 1;
		background:gray;
		text-align: center;
		display: block;
		line-height: 2em;
	}
	div.service div.manage{
		flex:1;
		background:gray;
		display: block;
		width:100%;
		text-align: center;
		line-height: 2em;
	}
}
@media(min-width:768px){
	h2.index{
		margin-top: 50px;
        font-size: 28px;
        color: var(--red-color);
		font-weight: bold;
		text-align: center;
	}
	div.indexWrapper{
		width:var(--min-width);
		margin:auto;
		display: flex;
		justify-content: space-between;
	}
	div.index{
		width:calc(50% - 10px);
		margin:25px auto;
		box-sizing: border-box;
		border:7px solid #ccc
	}
	div.index h3{
		text-align: center;
		line-height: 3em;
		background-color:#ccc;
		font-weight: bold;
	}
	div.index ol{
		margin:25px 50px;
	}
	ul.certifi{
		text-align: left;
	}
	ul.certifi > li{
		position: relative;
		padding-left:24px !important;
	}
	ul.certifi > li::before{
		content: "";
		width:16px !important;
		height: 16px !important;
		background:var(--red-color) !important;
		position: absolute;
		border-radius: 16px;
		left:0;
		top:0.3em !important;
	}
	ul.certifi > li li{
		line-height: 1.5em !important;
		margin-bottom: 0 !important;
		margin-left:20px;
	}
	h4.hybrid{
		width:100%;
		line-height: 2em;
		color:#fff;
		text-align: center;
		background-color:#333;
	}
	h4.hybrid.red{
		background-color:var(--red-color);
	}
	div.hybridWrapper{
		display: flex;
		justify-content: space-between;
		gap:10px;
	}
	div.hybridWrapper > div{
		width:calc(25% - 10px);
		border:1px solid #ccc;
		text-align:center;
		box-sizing: border-box;
		padding:15px;
	}
	div.hybrid div img.aws{
		width:45% !important;
	}
	div.hybridWrapper > div p span{
		font-size:14px;
		display: block;
	}
	div.hybridWrapper.line > div{
		border:none;
	}
	div.hybridWrapper.line > div.cloud{
		padding-top:80px;
		line-height: 1.25em;
		font-size:16px;
		background:url("../images/logo_cloud.svg") center top no-repeat;
		background-size:80px;
	}
	div.hybridWrapper:not(.line) > div > div.column{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 100px;
	}
	div.hybrid > div{
		height:100px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.hybridWrapper:not(.line) > div img{
		width:80%;
	}
	p.update2{
		font-size:24px;
		font-weight: bold;
	}
	div.product3Wrapper{
		display: flex;
		justify-content: space-between;
		gap:15px;
	}
	div.product3{
		width:calc(33% - 15px);
	}
	div.product3 h4{
		height: 80px !important;
		display: flex;
		align-items: center;
		justify-content: center;

	}
	div.product3 h4 img{
		object-position: center center;
	}
	div.product3 a{
		text-align: center !important;
		display: block;
	}
	div.product3 p{
		padding:15px;
		background:#efefef;
		min-height: 11em
	}
	div.portfolio{
		width:100%;
		background-color:#800000;
		padding-top:50px;
		color:#fff;
		display: flex;
		justify-content: space-between;
	}
	div.portfolio > div{
		width:calc(100% / 3);
	}
	div.portfolio h4{
		text-align: center;
	}
	div.portfolio h5{
		font-weight: bold;
		margin:40px 10px;
		border:2px solid #fff;
		padding:15px;
		border-radius: 12px;
	}
	div.portfolio h4 img{
		height: 40px;
		margin-top:15px;
	}
	dl.port dt{
		font-weight: bold;
		text-align: center;
		margin-bottom:15px;
	}
	dl.port ul{
		font-size:16px;
		margin-bottom:25px;
	}
	dl.port li{
		list-style: disc;
		margin-left:40px;
		margin-bottom:0.5em !important;
		margin-right: 25px;
		padding-left:0 !important;
	}
	div.port2{
		background:var(--red-color)
	}
	div.port1{
		background:#595959;
		border-top:50px solid var(--red-color)
	}
	div.port3 h4{
		margin-top:-40px;
	}
	div.plus{
		border:5px solid var(--red-color);
		width:100%;
		border-radius: 12px;
	}
	div.plus h4{
		text-align: center;
		margin:50px auto;
	}
	div.plus h4 img{
		width:250px;
	}
	div.plusWrapper{
		display: flex;
		justify-content: space-between;
		margin:50px 25px 25px;
		gap:10px;
	}
	div.pchild{
		width:calc(25% - 25px);
		border:3px solid var(--red-color);
		padding:10px;
		border-radius: 9px;
	}
	div.plus2{
		text-align: center;
		padding:10px;
		border:3px solid var(--red-color);
		border-radius: 9px;
		margin:25px;
	}
	div.addon{
		border:5px dashed var(--red-color);
		margin-top:50px;
		border-radius: 24px;
	}
	div.addon h4{
		background:var(--red-color);
		color:#fff;
		width:75%;
		padding:15px;
		border-radius: 9px;
		margin:-50px auto auto;
	}
	div.addonWrapper{
		display: flex;
		justify-content: space-between;
		gap:50px;
		margin-top:50px;
	}
	div.add{
		width:30%;
		text-align: center;
		color:var(--red-color);
		font-weight: bold;
	}
	div.product2{
		display:flex;
		justify-content: space-between;
		gap:50px;
		margin:10px;
	}
	div.product2_left{
		padding:10px;
		border:4px solid var(--red-color);
		border-radius: 9px;
	}
	div.product2_left h5{
		text-align: center;
		padding-top:100px;
		color:var(--red-color);
		background-repeat:no-repeat;
		background-position: center top;
		background-size:100px;
		font-weight: bold;
	}
	div.product2_left h5.openscap{
		background-image:url("../images/icon_sec1.svg");
	}
	div.product2_left h5.compliance{
		background-image:url("../images/icon_sec2.svg");
	}
	ul.ao{
		
	}
	ul.ao > ul{
		
	}
	ul.ao > li{
		position: relative;
		padding-left:25px !important;
	}
	ul.ao > li::before{
		content: "";
		width:16px !important;
		height: 16px !important;
		border-radius: 16px !important;
		background:var(--red-color) !important;
		position: absolute !important;
		top:5px !important;
		left:0 !important;
	}
	ul.ao > li > ul{
		font-size:17px;
		margin-top:10px
	}
	ul.ao > li > ul > li{
		position: relative;
		padding-left: 25px !important;
	}
	ul.ao > li > ul > li::before{
		content: "" !important;
		width:14px !important;
		height: 14px !important;
		border-radius: 16px !important;
		border:2px solid var(--red-color) !important;
		position: absolute !important;
		box-sizing: border-box !important;
		top:5px !important;
		left:0 !important;
		background-image:none !important;
	}
	ul.ao > li > ul > li > ul{
		font-size:16px;
		margin-top:5px;
	}
	ul.ao > li > ul > li > ul > li{
		margin-bottom:0;
		position: relative;
		padding-left:20px;
	}
	ul.ao > li > ul > li > ul > li::before{
		content: "";
		width:12px;
		height: 3px;
		background-color:var(--red-color);
		position: absolute;
		box-sizing: border-box;
		top:10px;
		left:0;
	}
	pre{
		text-align: left;
		font-size:14px;
		background:#000;
		background:#F3F3F3;
		color:#000;
		padding:15px;
		overflow-x: auto;
		border-radius: 12px;
		font-weight: bold;
	}
	pre.blk{
		background:#000;
		color:#fff;
		font-size:16px;
		font-weight: normal;
	}
	pre span.blue{
		color:#4B69C6;
	}
	pre span.orange{
		color:#800000;
	}
	pre span.green{
		color:#448C27;
	}
	pre span.mesh{
		background-color:#FFF2CC;
	}
	div.buildWrapper{
		display: flex;
		flex-direction: column;
		gap:50px;
		text-align: center;
		justify-content: center;
		margin-left:50px;
	}
	div.build{
		border:5px solid #333;
		border-radius: 12px;
		width:320px;
		position: relative;
	}
	div.build:first-child::after{
		content: "";
		width:40px;
		height: 40px;
		background-image: url("../images/icon_plus.svg");
		background-size:40px;
		margin:auto;
		position: absolute;
		left:0;
		right:0;
		bottom:-50px;
	}
	div.build::before{
		content: "";
		width:60px;
		height: 60px;
		background-size:50px;
		background-position: center center;
		background-repeat:no-repeat;
		position: absolute;
		top:0;
		margin:auto;
		bottom:0;
	}
	div.build:first-child::before{
		background-image: url("../images/icon_op.svg");
		left:-70px;
	}
	div.build:last-child::before{
		background-image: url("../images/icon_dev.svg");
		right:-70px;
	}
	div.build h4.git{
		text-align: center;
		margin:15px auto;
	}
	div.build h4.base{
		text-align: center;
		margin:15px auto;
		font-size:28px;
		background:url("../images/icon_basesimage.svg") left 25px center no-repeat;
		background-size:36px;
	}
	div.build h4.git img{
		width:150px;
	}
	div.build p.doc{
		border:4px solid #333;
		margin:15px;
		text-align: center;
		background:url("../images/icon_doc.svg") left 15px center no-repeat;
		background-size:30px;
		font-size:20px;
	}
	div.build p.gray{
		background:#ccc;
		margin:auto 15px 15px;
		padding:5px 0;
	}
	h4.lifecycle{
		font-size:20px;
		font-weight: bold;
	}
	dl.note{
		border-left: 10px solid var(--red-color);
		margin:25px auto;
	}
	dl.note dt,
	dl.note dd{
		padding:10px;
	}
	dl.note dt{
		background:url("../images/icon_pen.svg") left 15px center no-repeat;
		background-size:20px;
		padding-left:40px;
		background-color:#f6f6f6;
	}
	dl.note dd{
		background:#efefef;
	}
	table.lifecycle{
		border-left:1px solid #ccc;
		border-right:1px solid #ccc;
		margin-top:25px;
	}
	table.lifecycle td{
		padding:10px;
		border-top:1px solid #ccc;
	}
	table.lifecycle.border td{
		border-bottom:1px solid #ccc;
	}
	table.lifecycle thead td{
		background:#333;
		color:#fff;
		font-weight: bold;
	}
	table.lifecycle tr:nth-child(2n) td,
	table.release tr:nth-child(2n) td{
		background:#efefef;
	}
	table.release thead td{
		background:var(--red-color);
		color:#fff;
	}
	div.podWrapper{
		display: flex;
		justify-content: space-between;
		gap:10px;
	}
	dl.pod{
		width:calc(33% - 10px);
		padding:10px;
		border:3px solid #333;
		display: flex;
		flex-direction: column-reverse;
		justify-content: space-between;
		gap:50px;
		text-align: center;
	}
	dl.pod dt{
		font-size:20px;
	}
	dl.pod dd{
		font-size:14px;
	}
	dl.pod li{
		padding:0 !important;
		background:#333;
		line-height: 2em;
		color:#fff;
	}
	dl.devfileWrapper{
		border:3px solid var(--red-color);
		border-radius: 12px;
		padding:15px;
		text-align: center;
		display: flex;
		flex-direction: column-reverse;
		gap:25px;
	}
	dl.devfileWrapper > dt{
		font-size:22px;
		font-weight: bold;
	}
	dl.devfile + dl.devfile{
		margin-top:10px;
	}
	dl.devfile dt{
		background:#333 !important;
		line-height: 2em;
		color:#fff;
	}
	dl.devfile dd ul{
		display: flex;
		justify-content: space-between;
		gap:25px;
	}
	dl.devfile dd li{
		text-align: center;
		background:#333;
		color:#fff;
		padding-left:0 !important;
		width:25%;
		font-size:16px;
	}
	pre.devfile{
		padding-left:50px;
	}
	pre.devfile span{
		display: inline-block;
		position: relative;
	}
	pre.devfile span::before{
		color:var(--red-color);
		padding-right:10px;
		margin-right: 0;
		font-size:16px;
	}
	pre.devfile span.num1::before{
		content: "❶";
	}
	pre.devfile span.num2::before{
		content: "❷";
	}
	pre.devfile span.num3::before{
		content: "❸";
	}
	pre.devfile span.num4::before{
		content: "❹";
	}
	pre.devfile span.num5::before{
		content: "❺";
	}
	pre.devfile span.num6::before{
		content: "❻";
	}
	pre span.custom1::after{
		content:"❶";
		padding-left:10px;
		color:var(--red-color);
	}
	pre span.custom2::after{
		content:"❷";
		padding-left:10px;
		color:var(--red-color);
	}
	ol.devfile{
		margin:25px 25px;
	}
	ol.devfile li{
		list-style: none;
		
	}
	ol.devfile li::before{
		padding-right: 20px;
		font-size:20px;
		color:var(--red-color);
	}
	ol.devfile li:nth-child(1)::before{
		content: "❶";
	}
	ol.devfile li:nth-child(2)::before{
		content: "❷";
	}
	ol.devfile li:nth-child(3)::before{
		content: "❸";
	}
	ol.devfile li:nth-child(4)::before{
		content: "❹";
	}
	ol.devfile li:nth-child(5)::before{
		content: "❺";
	}
	ol.devfile li:nth-child(6)::before{
		content: "❻";
	}
	img.cicd{
		height: 200px !important;
		display: block;
		margin:auto;
	}
	dl.pipe{
		
	}
	dl.pipe dt{
		font-size:22px;
		color:var(--red-color);
		margin-top:1.5em;
		margin-bottom:1em;
		font-weight: bold;
		background-repeat:no-repeat;
		background-position: left center;
		padding-left:60px;
		line-height: 60px;
	}
	dl.pipe dt.p1{
		background-image:url("../images/icon_p1.svg");
	}
	dl.pipe dt.p2{
		background-image:url("../images/icon_p2.svg");
	}
	dl.pipe dt.p3{
		background-image:url("../images/icon_p3.svg");
	}
	dl.pipe dt.p4{
		background-image:url("../images/icon_p4.svg");
	}
	dl.pipe dt.i1{
		background-image:url("../images/icon_i1.svg");
	}
	dl.pipe dt.i2{
		background-image:url("../images/icon_i2.svg");
	}
	dl.pipe dt.i3{
		background-image:url("../images/icon_i3.svg");
	}
	dl.pipe dt.i4{
		background-image:url("../images/icon_i4.svg");
	}
	dl.tekton{
		border-left:10px solid var(--red-color);
		margin-bottom:25px;
		padding-left:15px;
	}
	dl.tekton dt{
		font-size:22px;
		font-weight: bold;
	}
	div.kWrapper{
		width:980px;
		height: 490px;
		overflow: hidden;
		position: relative;
		background:url("../images/dev_14.svg") no-repeat;
	}
	div.separate{
		width:980px;
		height: 350px;
		position: absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		margin:auto;
		overflow: hidden;
	}
	div.doc{
		width:50%;
		box-sizing: border-box;
		overflow: hidden;
	}
	div.doc.serving{
		float: left;
		padding:150px 130px 0 50px
	}
	div.doc.eventing{
		float: right;
		padding:150px 50px 0 130px;
	}
	div.doc h4{
		font-size:32px;
		color:#fff;
		text-align: center;
		border-bottom:2px solid #fff;
	}
	div.doc p{
		padding-bottom:150px;
		background-position: center bottom;
		background-repeat:no-repeat;
	}
	div.doc.serving p{
		background-image:url("../images/icon_k1.svg");
		background-size:150px;
	}
	div.doc.eventing p{
		background-image:url("../images/icon_k2.svg");
		background-size:150px;
	}
	div.channel{
		width:100%;
		height: 650px;
		background-image:url("../images/dev_17.svg");
		background-size:700px;
		background-repeat: no-repeat;
		background-position: center top 120px;
		position: relative;
	}
	div.channel > div,
	div.channel > pre{
		position: absolute;
	}
	div.pretop{
		width:80%;
		display: flex;
		justify-content: space-between;
		gap:25px;
		top:0;
		margin:auto;
		left:0;
		right:0;
	}
	div.pretop pre{
		width:100%;
	}
	pre.left{
		width:calc(50% - 150px);
		top:250px;
		left:0;
	}
	pre.right{
		width:calc(50% - 130px);
		top:300px;
		right:0;
	}
}
@media(max-width:767.99px){
	h2.index{
		margin-top: 10px;
        font-size: 20px;
        color: var(--red-color);
		font-weight: bold;
		text-align: center;
	}
	div.index{
		margin:10px;
		box-sizing: border-box;
		border:7px solid #ccc
	}
	div.index h3{
		text-align: center;
		line-height: 3em;
		background-color:#ccc;
		font-weight: bold;
	}
	div.index ol{
		margin:20px 20px 20px 30px;
	}
	ul.certifi{
		text-align: left;
	}
	ul.certifi > li{
		position: relative;
		padding-left:24px !important;
	}
	ul.certifi > li::before{
		content: "";
		width:16px !important;
		height: 16px !important;
		background:var(--red-color) !important;
		position: absolute;
		border-radius: 16px;
		left:0;
		top:0.3em !important;
	}
	ul.certifi > li li{
		line-height: 1.5em !important;
		margin-bottom: 0 !important;
		margin-left:20px;
	}
	h4.hybrid{
		width:100%;
		line-height: 2em;
		color:#fff;
		text-align: center;
		background-color:#333;
	}
	h4.hybrid.red{
		background-color:var(--red-color);
	}
	div.hybridWrapper{
		background-image:url("../images/about_os_mobile_03.jpg");
		background-repeat: no-repeat;
		width:100%;
		height: 0;
		padding-top:25%;
		background-size:contain;
	}
	div.hybridWrapper.line{
		background-image:url("../images/about_os_mobile_04.jpg");
		background-repeat: no-repeat;
		width:100%;
		height: 0;
		padding-top:17%;
		background-size:contain;
	}
	div.hybridWrapper div{
		display: none;
	}
	div.hybrid {
		display: none;
	}
	div.hybridWrapper:not(.line) > div img{
		display: none;
	}
	p.update2{
		font-size:18px;
		font-weight: bold;
	}
	div.product3Wrapper{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:15px;
	}
	div.product3{
		width:calc(100% );
	}
	div.product3 h4{
		height: 80px !important;
		display: flex;
		align-items: center;
		justify-content: center;

	}
	div.product3 h4 img{
		object-position: center center;
	}
	div.product3 a{
		text-align: center !important;
		display: block;
	}
	div.product3 p{
		padding:15px;
		background:#efefef;
	}
	div.portfolio{
		width:100%;
		height: 0;
		padding-top:66%;
		background:url("../images/product_list_mobile_01.jpg") no-repeat;
		background-size:contain;
	}
	div.portfolio div{
		display: none;
	}
	div.portfolio h4{
		text-align: center;
	}
	div.portfolio h5{
		font-weight: bold;
		margin:40px 10px;
		border:2px solid #fff;
		padding:15px;
		border-radius: 12px;
	}
	div.portfolio h4 img{
		height: 40px;
		margin-top:15px;
	}
	dl.port dt{
		font-weight: bold;
		text-align: center;
		margin-bottom:15px;
	}
	dl.port ul{
		font-size:16px;
		margin-bottom:25px;
	}
	dl.port li{
		list-style: disc;
		margin-left:40px;
		margin-bottom:0.5em !important;
		margin-right: 25px;
		padding-left:0 !important;
	}
	div.port2{
		background:var(--red-color)
	}
	div.port1{
		background:#595959;
		border-top:50px solid var(--red-color)
	}
	div.port3 h4{
		margin-top:-40px;
	}
	div.plus{
		border:5px solid var(--red-color);
		width:100%;
		border-radius: 12px;
	}
	div.plus h4{
		text-align: center;
		margin:50px auto;
	}
	div.plus h4 img{
		width:150px;
	}
	div.plusWrapper{
		display: flex;
		justify-content: space-between;
		margin:10px;
		gap:10px;
		flex-wrap: wrap;
	}
	div.pchild{
		width:calc(50% - 10px);
		border:3px solid var(--red-color);
		padding:10px;
		box-sizing: border-box;
		border-radius: 9px;
	}
	div.plus2{
		text-align: center;
		padding:10px;
		border:3px solid var(--red-color);
		border-radius: 9px;
		margin:10px;
	}
	div.addon{
		border:5px dashed var(--red-color);
		margin-top:50px;
		border-radius: 24px;
	}
	div.addon h4{
		background:var(--red-color);
		color:#fff;
		width:75%;
		padding:15px;
		border-radius: 9px;
		margin:-50px auto auto;
	}
	div.addonWrapper{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:50px;
		margin-top:50px;
	}
	div.add{
		width:calc(100% - 20px);
		text-align: center;
		color:var(--red-color);
		font-weight: bold;
	}
	div.product2{
		display:flex;
		justify-content: space-between;
		flex-direction: column;
		gap:10px;
		margin:10px;
	}
	div.product2_left{
		padding:10px;
		border:4px solid var(--red-color);
		border-radius: 9px;
	}
	div.product2_left h5{
		text-align: center;
		padding-top:70px;
		color:var(--red-color);
		background-repeat:no-repeat;
		background-position: center top;
		background-size:70px;
		font-weight: bold;
	}
	div.product2_left h5.openscap{
		background-image:url("../images/icon_sec1.svg");
	}
	div.product2_left h5.compliance{
		background-image:url("../images/icon_sec2.svg");
	}
	ul.ao{
		
	}
	ul.ao > ul{
		
	}
	ul.ao > li{
		position: relative;
		padding-left:25px !important;
	}
	ul.ao > li::before{
		content: "";
		width:16px !important;
		height: 16px !important;
		border-radius: 16px !important;
		background:var(--red-color) !important;
		position: absolute !important;
		top:5px !important;
		left:0 !important;
	}
	ul.ao > li > ul{
		font-size:17px;
		margin-top:10px
	}
	ul.ao > li > ul > li{
		position: relative;
		padding-left: 25px !important;
	}
	ul.ao > li > ul > li::before{
		content: "" !important;
		width:14px !important;
		height: 14px !important;
		border-radius: 16px !important;
		border:2px solid var(--red-color) !important;
		position: absolute !important;
		box-sizing: border-box !important;
		top:5px !important;
		left:0 !important;
		background-image:none !important;
	}
	ul.ao > li > ul > li > ul{
		font-size:16px;
		margin-top:5px;
	}
	ul.ao > li > ul > li > ul > li{
		margin-bottom:0;
		position: relative;
		padding-left:20px;
	}
	ul.ao > li > ul > li > ul > li::before{
		content: "";
		width:12px;
		height: 3px;
		background-color:var(--red-color);
		position: absolute;
		box-sizing: border-box;
		top:10px;
		left:0;
	}
	pre{
		text-align: left;
		font-size:14px;
		background:#000;
		background:#F3F3F3;
		color:#000;
		padding:15px;
		overflow-x: auto;
		border-radius: 12px;
		font-weight: bold;
	}
	pre.blk{
		background:#000;
		color:#fff;
		font-weight: normal;
	}
	pre span.blue{
		color:#4B69C6;
	}
	pre span.orange{
		color:#800000;
	}
	pre span.green{
		color:#448C27;
	}
	pre span.mesh{
		background-color:#FFF2CC;
	}
	div.buildWrapper{
		width:100%;
		height: 0;
		background:url("../images/developer_mobile_01.jpg") no-repeat;
		background-size:contain;
		padding-top:85%;
	}

	div.buildWrapper div{
		display: none !important;
	}
	div.build{
		border:5px solid #333;
		border-radius: 12px;
		width:320px;
		position: relative;
	}
	div.build:first-child::after{
		content: "";
		width:40px;
		height: 40px;
		background-image: url("../images/icon_plus.svg");
		background-size:40px;
		margin:auto;
		position: absolute;
		left:0;
		right:0;
		bottom:-50px;
	}
	div.build::before{
		content: "";
		width:60px;
		height: 60px;
		background-size:50px;
		background-position: center center;
		background-repeat:no-repeat;
		position: absolute;
		top:0;
		margin:auto;
		bottom:0;
	}
	div.build:first-child::before{
		background-image: url("../images/icon_op.svg");
		left:-70px;
	}
	div.build:last-child::before{
		background-image: url("../images/icon_dev.svg");
		right:-70px;
	}
	div.build h4.git{
		text-align: center;
		margin:15px auto;
	}
	div.build h4.base{
		text-align: center;
		margin:15px auto;
		font-size:28px;
		background:url("../images/icon_basesimage.svg") left 25px center no-repeat;
		background-size:36px;
	}
	div.build h4.git img{
		width:150px;
	}
	div.build p.doc{
		border:4px solid #333;
		margin:15px;
		text-align: center;
		background:url("../images/icon_doc.svg") left 15px center no-repeat;
		background-size:30px;
		font-size:20px;
	}
	div.build p.gray{
		background:#ccc;
		margin:auto 15px 15px;
		padding:5px 0;
	}
	h4.lifecycle{
		font-size:20px;
		font-weight: bold;
	}
	dl.note{
		border-left: 10px solid var(--red-color);
		margin:25px auto;
	}
	dl.note dt,
	dl.note dd{
		padding:10px;
	}
	dl.note dt{
		background:url("../images/icon_pen.svg") left 15px center no-repeat;
		background-size:20px;
		padding-left:40px;
		background-color:#f6f6f6;
	}
	dl.note dd{
		background:#efefef;
	}
	table.lifecycle{
		border-left:1px solid #ccc;
		border-right:1px solid #ccc;
		margin-top:25px;
	}
	table.lifecycle td{
		padding:10px;
		border-top:1px solid #ccc;
	}
	table.lifecycle.border td{
		border-bottom:1px solid #ccc;
	}
	table.lifecycle thead td{
		background:#333;
		color:#fff;
		font-weight: bold;
	}
	table.lifecycle tr:nth-child(2n) td,
	table.release tr:nth-child(2n) td{
		background:#efefef;
	}
	table.release thead td{
		background:var(--red-color);
		color:#fff;
	}
	div.podWrapper{
		display: flex;
		justify-content: space-between;
		gap:10px;
	}
	dl.pod{
		width:calc(33% - 10px);
		padding:10px;
		border:3px solid #333;
		display: flex;
		flex-direction: column-reverse;
		justify-content: space-between;
		gap:50px;
		text-align: center;
	}
	dl.pod dt{
		font-size:20px;
	}
	dl.pod dd{
		font-size:14px;
	}
	dl.pod li{
		padding:0 !important;
		background:#333;
		line-height: 2em;
		color:#fff;
	}
	dl.devfileWrapper{
		border:3px solid var(--red-color);
		border-radius: 12px;
		padding:15px;
		text-align: center;
		display: flex;
		flex-direction: column-reverse;
		gap:25px;
	}
	dl.devfileWrapper > dt{
		font-size:22px;
		font-weight: bold;
	}
	dl.devfile + dl.devfile{
		margin-top:10px;
	}
	dl.devfile dt{
		background:#333 !important;
		line-height: 2em;
		color:#fff;
	}
	dl.devfile dd ul{
		display: flex;
		justify-content: space-between;
		gap:25px;
	}
	dl.devfile dd li{
		text-align: center;
		background:#333;
		color:#fff;
		padding-left:0 !important;
		width:25%;
		font-size:16px;
	}
	pre.devfile{
		padding-left:50px;
	}
	pre.devfile span{
		display: inline-block;
		position: relative;
	}
	pre.devfile span::before{
		color:var(--red-color);
		padding-right:10px;
		margin-right: 0;
		font-size:16px;
	}
	pre.devfile span.num1::before{
		content: "❶";
	}
	pre.devfile span.num2::before{
		content: "❷";
	}
	pre.devfile span.num3::before{
		content: "❸";
	}
	pre.devfile span.num4::before{
		content: "❹";
	}
	pre.devfile span.num5::before{
		content: "❺";
	}
	pre.devfile span.num6::before{
		content: "❻";
	}
	pre span.custom1::after{
		content:"❶";
		padding-left:10px;
		color:var(--red-color);
	}
	pre span.custom2::after{
		content:"❷";
		padding-left:10px;
		color:var(--red-color);
	}
	ol.devfile{
		margin:25px 25px;
	}
	ol.devfile li{
		list-style: none;
		
	}
	ol.devfile li::before{
		padding-right: 20px;
		font-size:20px;
		color:var(--red-color);
	}
	ol.devfile li:nth-child(1)::before{
		content: "❶";
	}
	ol.devfile li:nth-child(2)::before{
		content: "❷";
	}
	ol.devfile li:nth-child(3)::before{
		content: "❸";
	}
	ol.devfile li:nth-child(4)::before{
		content: "❹";
	}
	ol.devfile li:nth-child(5)::before{
		content: "❺";
	}
	ol.devfile li:nth-child(6)::before{
		content: "❻";
	}
	img.cicd{
		height: 200px !important;
		display: block;
		margin:auto;
	}
	dl.pipe{
		
	}
	dl.pipe dt{
		font-size:22px;
		color:var(--red-color);
		margin-top:1.5em;
		margin-bottom:1em;
		font-weight: bold;
		background-repeat:no-repeat;
		background-position: left center;
		padding-left:60px;
		line-height: 60px;
	}
	dl.pipe dt.p1{
		background-image:url("../images/icon_p1.svg");
	}
	dl.pipe dt.p2{
		background-image:url("../images/icon_p2.svg");
	}
	dl.pipe dt.p3{
		background-image:url("../images/icon_p3.svg");
	}
	dl.pipe dt.p4{
		background-image:url("../images/icon_p4.svg");
	}
	dl.pipe dt.i1{
		background-image:url("../images/icon_i1.svg");
	}
	dl.pipe dt.i2{
		background-image:url("../images/icon_i2.svg");
	}
	dl.pipe dt.i3{
		background-image:url("../images/icon_i3.svg");
	}
	dl.pipe dt.i4{
		background-image:url("../images/icon_i4.svg");
	}
	dl.tekton{
		border-left:10px solid var(--red-color);
		margin-bottom:25px;
		padding-left:15px;
	}
	dl.tekton dt{
		font-size:22px;
		font-weight: bold;
	}
	div.kWrapper{
		width:100%;
		height: 0;
		background:url("../images/developer_mobile_02.jpg") no-repeat;
		background-size:contain;
		padding-top:51%;
	}
	div.kWrapper div{
		display: none !important;
	}
	div.separate{
		width:980px;
		height: 350px;
		position: absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		margin:auto;
		overflow: hidden;
	}
	div.doc{
		width:50%;
		box-sizing: border-box;
		overflow: hidden;
	}
	div.doc.serving{
		float: left;
		padding:150px 130px 0 50px
	}
	div.doc.eventing{
		float: right;
		padding:150px 50px 0 130px;
	}
	div.doc h4{
		font-size:32px;
		color:#fff;
		text-align: center;
		border-bottom:2px solid #fff;
	}
	div.doc p{
		padding-bottom:150px;
		background-position: center bottom;
		background-repeat:no-repeat;
	}
	div.doc.serving p{
		background-image:url("../images/icon_k1.svg");
		background-size:150px;
	}
	div.doc.eventing p{
		background-image:url("../images/icon_k2.svg");
		background-size:150px;
	}
	div.channel{
		width:100%;
		background-image:url("../images/dev_17.svg");
		background-size:contain;
		padding-top:38%;
		background-repeat: no-repeat;
		background-position: center top;
	}
	div.channel > div,
	div.channel > pre{
		/*margin:10px;*/
	}
	div.pretop{
		display: flex;
		justify-content: space-between;
		flex-direction:column;
		gap:25px;
	}
	div.pretop pre{
		width:calc(100% - 20px);
		box-sizing: border-box;
		margin: 10px auto;
	}
	pre.left{
		width:calc(100% - 20px);
		box-sizing: border-box;
		margin: 10px auto;
	}
	pre.right{
		width:calc(100% - 20px);
		box-sizing: border-box;
		margin: 10px auto;
	}
}
@media(min-width:768px){
	dl.faq{
		margin-left:50px;
		margin-bottom: 50px;
	}
	dl.faq dt{
		padding:10px 0 0 65px;
		margin-bottom:25px;
		cursor: pointer;
	}
	dl.faq dt,
	dl.faq dd{
		position: relative;
	}
	dl.faq dd{
		background:#fff;
		margin-left:50px;
		padding:15px 15px 15px 85px;
		display: none;
		margin-bottom:25px;
		position: relative;
	}
	dl.faq dd.nomargin{
		margin-left:0;
	}
	dl.faq dd.open{
		display: block;
	}
	dl.faq dt::before{
		background:url("../images/faq_q.svg") center center no-repeat;
		top:0;
		left:0;
	}
	dl.faq dd::before{
		background:url("../images/faq_a.svg") center center no-repeat;
		top:15px;
		left:15px;
	}
	dl.faq dt::before,
	dl.faq dd::before{
		content: "";
		width:50px;
		height: 50px;
		background-size:40px;
		position: absolute;
	}
	dl.faq dt p.new{
		background:url("../images/icon_new.svg") center center no-repeat;
		width:45px;
		height: 18px;
		background-size:45px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: absolute;
		text-align: left !important;
		top:-21px;
		left:55px
	}
	dl.faq li{
		list-style: none;
	}
	a.faqMore{
		position: absolute;
		background:url("../images/icon_link.svg") center center no-repeat;
		width:30px;
		height: 30px;
		background-size:30px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		right:15px;
		top:15px;
		display: block;
	}
	a.faqMore:hover{
		opacity: 0.75;
	}
	p.notice{
		padding:25px;
		background:#efefef;
		margin-top:25px !important;
		position: relative;
		border-radius: 6px;
	}
	p.notice::before{
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		border-bottom: 20px solid #efefef;
		border-top: 0;
		position: absolute;
		top:-19px;
		left:50px;
  }
}
@media(max-width:767.99px){
	dl.faq{
		margin-left:10px;
		margin-bottom: 50px;
	}
	dl.faq dt{
		padding:10px 0 0 40px;
		margin-bottom:15px;
		cursor: pointer;
	}
	dl.faq dt,
	dl.faq dd{
		position: relative;
	}
	dl.faq dd{
		background:#fff;
		margin-left:25px;
		padding:15px 15px 15px 45px;
		display: none;
		margin-bottom:25px;
		position: relative;
	}
	dl.faq dd.nomargin{
		margin-left:0;
	}
	dl.faq dd.open{
		display: block;
	}
	dl.faq dt::before{
		background:url("../images/faq_q.svg") center center no-repeat;
		background-size:15px;
		top:10px;
		left:0;
	}
	dl.faq dd::before{
		background:url("../images/faq_a.svg") center center no-repeat;
		top:15px;
		left:15px;
	}
	dl.faq dt::before,
	dl.faq dd::before{
		content: "";
		width:30px;
		height: 30px;
		background-size:30px;
		position: absolute;
	}
	dl.faq dt p.new{
		background:url("../images/icon_new.svg") center center no-repeat;
		width:45px;
		height: 18px;
		background-size:45px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: absolute;
		text-align: left !important;
		top:-21px;
		left:55px
	}
	dl.faq li{
		list-style: none;
	}
	a.faqMore{
		position: absolute;
		background:url("../images/icon_link.svg") center center no-repeat;
		width:20px;
		height: 20px;
		background-size:20px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		right:10px;
		top:10px;
		display: block;
	}
	a.faqMore:hover{
		opacity: 0.75;
	}
	p.notice{
		padding:25px;
		background:#efefef;
		margin-top:25px !important;
		position: relative;
		border-radius: 6px;
	}
	p.notice::before{
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		border-bottom: 20px solid #efefef;
		border-top: 0;
		position: absolute;
		top:-19px;
		left:50px;
  }

}
@media(min-width:768px){
	dl.solution{
		width:100%;
		/*border:5px solid var(--red-color);*/
		/*border-radius: 12px;*/
		position: relative;
		box-sizing:border-box;
		margin:25px auto 0;
		overflow: hidden;
		background:#fff;
		padding:25px;
		background-image:url("../images/icon_solution.svg") ;
		background-position:right 15px bottom 15px;
		background-repeat:no-repeat;
		background-color:#fff;
		background-size:50px;
	}
	dl.solution:hover{
		background-image:url("../images/icon_solution_on.svg") ;
		background-color:#efefef;
	}
	dl.solution dt{
		width:calc(100%);
		font-size:24px;
		line-height: 48px;
		border-bottom:4px solid var(--red-color);
		color:var(--red-color);
		margin-bottom:10px;
	}
	dl.solution dd{
		position: relative;
	}
	dl.solution dd.download{
		margin:15px 0;
	}
	dl.solution dd > div{
		display: flex;
		justify-content: flex-start;
		gap:25px;
		align-items: center;
	}
	dl.solution dd div.desc{
		width:calc(100% - 280px);
		margin:0 !important;
		text-align: justify;
	}
	dl.solution div.img{
		width:240px !important;
		height: 240px;
		flex-basis: 1;
		background:#fff;
	}
	a dl.solution div.desc{
		color:#000;
	}
	a:hover dl.solution div.desc{
		color:#000;
	}
}
@media(max-width:767.99px){
	dl.solution{
		width:100%;
		position: relative;
		box-sizing:border-box;
		margin:25px auto 0;
		overflow: hidden;
		background:#fff;
		padding:25px;
		background-image:url("../images/icon_solution.svg") ;
		background-position:right 15px bottom 15px;
		background-repeat:no-repeat;
		background-color:#fff;
		background-size:25px;
		display: flex;
		flex-direction: column;
	}
	dl.solution dt{
		width:calc(100%);
		font-size:20px;
		border-bottom:4px solid var(--red-color);
		color:var(--red-color);
		margin-bottom:10px;
	}
	dl.solution dd{
		position: relative;
	}
	dl.solution dd.download{
		margin:15px 0;
	}
	dl.solution dd > div{
		display: flex;
		justify-content: flex-start;
		flex-direction: column;
		gap:25px;
		align-items: center;
	}
	dl.solution dd div.desc{
		width:calc(100%);
		margin:0 !important;
		text-align: justify;
	}
	dl.solution div.img{
		width:240px !important;
		height: 240px;
		flex-basis: 1;
		background:#fff;
	}
	a dl.solution div.desc{
		color:#000;
	}
	a:hover dl.solution div.desc{
		color:#000;
	}
}
@media(min-width:768px){
	div.blogSelect{
		width:100%;
		display: flex;
		justify-content: center;
		gap:40px;
		margin:25px auto;
		padding-bottom:25px;
		border-bottom:3px solid var(--red-color);
		border-bottom:3px solid #fff;
	}
	div.blogSelect div{
		/*width:480px;*/
		display: flex;
		align-items: center;
		gap:15px;
		content: ":"
	}
	div.blogSelect select{
		width:200px;
		border-bottom:2px solid #ccc;
		padding:10px 15px;
		background:#fff;
		/*border-radius: 6px;*/
		background-image:url("../images/icon_select.svg");
		background-repeat:no-repeat;
		background-position: right 10px center;
		background-size:10px;
		cursor: pointer;
	}
	div.blogSelect select option{
		padding:10px;
	}
	div.blogSelect select:hover{
		border-color:var(--red-color)
	}
	div.blogSelect label{
		padding-left:35px;
		background-repeat:no-repeat;
		background-size:24px;
		background-position: left center;
	}
	div.blogSelect label.cat{
		background-image:url("../images/icon_blog_cat.svg");
	}
	div.blogSelect label.arh{
		background-image:url("../images/icon_blog_arh.svg");
	}
	div.blogSelect label.com{
		background-image:url("../images/icon_blog_com.svg");
	}
	div.page {
		width: calc(100% - 10px);
		padding: 5px;
		text-align: center;
		margin: 10px auto;
		display: flex;
		overflow: hidden;
		-webkit-justify-content: center; /* Safari */
		justify-content: center;
		font-family: proxima-nova,proxima nova,open sans,Arial,Helvetica,sans-serif;
	}
	div.page span.current_page {
		background: var(--red-color);
		padding: 1px;
		min-width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		color:#fff;
	}
	div.page a,
	a.link_next,
	a.link_before{
		display: block;
		background: #CCC;
		padding: 1px;
		min-width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
	}
	a.link_next {
		padding-left:10px !important;
		padding-right: 10px !important;
		margin-left:4px;
	}
	a.link_before {
		padding-left:10px !important;
		padding-right: 10px !important;
		margin-right:4px;
	}
	div.page span:last-child{
	}
	div.page a:hover {
		background: var(--red-color);
		color: #fff;
	}
	h3.blogTitle{
		font-size:32px;
		color:var(--red-color);
		font-weight: bold;
		border-left:10px solid var(--red-color);
		padding-left:25px;
	}
	div.blogContents{
		background:#fff;
		padding:25px 50px;
		margin-top:25px;
		margin-bottom:50px;
	}
	div.blogContents.blogBody{
		padding:100px 150px;
        line-height: 2em;
	}
	div.blogContents h1,
	div.blogContents h2,
	div.blogContents h3,
	div.blogContents h4,
	div.blogContents h5,
	div.blogContents h6,
	dl.faq h1,
	dl.faq h2,
	dl.faq h3,
	dl.faq h4,
	dl.faq h5,
	dl.faq h6{
		font-weight: bold;
		color:var(--red-color);
	}
	div.blogContents h1,
	dl.faq h1{
		font-size:36px
	}
	div.blogContents h2,
	dl.faq h2{
		font-size:28px
	}
	div.blogContents h3,
	dl.faq h3{
		font-size:24px
	}
	div.blogContents h4,
	dl.faq h4{
		font-size:20px
	}
	div.blogContents h5,
	dl.faq h5{
		font-size:18px
	}
	div.blogContents h6,
	dl.faq h6{
		font-size:16px
	}
	div.blogContents p,
	dl.faq p{
		margin:10px;
	}
	div.blogContents ul,
	div.blogContents ol,
	dl.faq ul,
	dl.faq ol{
		margin:10px 10px 10px 50px;
	}
	div.blogContents ul li,
	dl.faq ul li{
		list-style: disc;
	}
	div.blogContents pre,
	dl.faq pre{
		margin:25px;
	}
	div.blogContents img,
	dl.faq img{
		max-width:100%;
		height: auto;
		margin:15px 0;
	}
	div.blogContents blockquote,
	dl.faq blockquote{
		background:#efefef;
		padding:5px;
		border-radius: 6px;
		margin:auto auto 10px 30px;
		font-size:16px;
	}
	div.prevnext{
		display: flex;
		justify-content: space-between;
		margin-bottom:50px;
	}
	div.prevnext div{
		padding:15px;
		background:#fff;
		width:360px;
		background-repeat: no-repeat;
		background-size:30px;
	}
	div.prevnext div.prev{
		background-image:url("../images/arrow_prev_off.svg");
		background-position: left 15px bottom 15px
	}
	div.prevnext div.prev p{
		margin-left:50px;
		margin-top:10px;
	}
	div.prevnext div.next{
		background-image:url("../images/arrow_sitemap.svg");
		background-position: right 15px bottom 15px
	}
	div.prevnext div.next p{
		margin-right:50px;
		margin-top:10px;
	}
	div.prevnext div.next:hover{
		background-image:url("../images/arrow_sitemap_on.svg");
	}
	div.prevnext div.prev:hover{
		background-image:url("../images/arrow_prev_on.svg");
	}
	div.prev.casen,
	div.next.casen{
		min-height: 90px !important;
	}
	div.prev img,
	div.next img{
		width:360px;
		height: 160px;
		object-fit: cover;
		object-position: center center;
	}
	div.prev:hover img,
	div.next:hover img{
		opacity: 0.8;
	}
	a.entryLink{
		width:250px;
		height: 60px;
		display: block;
		text-align: center;
		line-height: 60px;
		background-color:var(--red-color);
		border-radius: 60px;
		color:#fff;
		margin:25px auto;
	}
	a.entryLink:hover{
		background-color:var(--blue-color)
	}
}
@media(max-width:767.99px){
	div.blogSelect{
		width:100%;
		display: flex;
		justify-content: center;
		flex-direction: column;
		gap:25px;
		margin:25px auto;
		padding-bottom:25px;
		border-bottom:3px solid var(--red-color);
		border-bottom:3px solid #fff;
	}
	div.blogSelect div{
		/*width:480px;*/
		display: flex;
		align-items: center;
		gap:15px;
		content: ":";
		margin:auto;
	}
	div.blogSelect select{
		width:200px;
		border-bottom:2px solid #ccc;
		padding:10px 15px;
		background:#fff;
		/*border-radius: 6px;*/
		background-image:url("../images/icon_select.svg");
		background-repeat:no-repeat;
		background-position: right 10px center;
		background-size:10px;
		cursor: pointer;
	}
	div.blogSelect select option{
		padding:10px;
	}
	div.blogSelect select:hover{
		border-color:var(--red-color)
	}
	div.blogSelect label{
		padding-left:35px;
		background-repeat:no-repeat;
		background-size:24px;
		background-position: left center;
	}
	div.blogSelect label.cat{
		background-image:url("../images/icon_blog_cat.svg");
	}
	div.blogSelect label.arh{
		background-image:url("../images/icon_blog_arh.svg");
	}
	div.blogSelect label.com{
		background-image:url("../images/icon_blog_com.svg");
	}
	div.page {
		width: calc(100% - 10px);
		padding: 5px;
		text-align: center;
		margin: 10px auto;
		flex-wrap: wrap;
		display: flex;
		overflow: hidden;
		-webkit-justify-content: center; /* Safari */
		justify-content: flex-start;
		font-family: proxima-nova,proxima nova,open sans,Arial,Helvetica,sans-serif;
	}
	div.page span.current_page {
		background: var(--red-color);
		padding: 1px;
		min-width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		color:#fff;
	}
	div.page a,
	a.link_next,
	a.link_before{
		display: block;
		background: #CCC;
		padding: 1px;
		min-width: 30px;
		height: 30px;
		line-height: 30px;
		text-align: center;
		margin-bottom: 5px;
	}
	a.link_next {
		padding-left:10px !important;
		padding-right: 10px !important;
		margin-left:4px;
	}
	a.link_before {
		padding-left:10px !important;
		padding-right: 10px !important;
		margin-right:4px;
	}
	div.page span:last-child{
	}
	div.page a:hover {
		background: var(--red-color);
		color: #fff;
	}
	h3.blogTitle{
		font-size:20px;
		color:var(--red-color);
		font-weight: bold;
		border-left:10px solid var(--red-color);
		padding-left:15px;
		width:calc(100% - 10px);
		margin:auto;
		box-sizing: border-box;
	}
	div.blogContents{
		background:#fff;
		padding:25px 10px;
		margin-top:25px;
		margin-bottom:50px;
	}
	div.blogContents h1,
	div.blogContents h2,
	div.blogContents h3,
	div.blogContents h4,
	div.blogContents h5,
	div.blogContents h6,
	dl.faq h1,
	dl.faq h2,
	dl.faq h3,
	dl.faq h4,
	dl.faq h5,
	dl.faq h6{
		font-weight: bold;
		color:var(--red-color);
	}
	div.blogContents h1,
	dl.faq h1{
		font-size:36px
	}
	div.blogContents h2,
	dl.faq h2{
		font-size:28px
	}
	div.blogContents h3,
	dl.faq h3{
		font-size:24px
	}
	div.blogContents h4,
	dl.faq h4{
		font-size:20px
	}
	div.blogContents h5,
	dl.faq h5{
		font-size:18px
	}
	div.blogContents h6,
	dl.faq h6{
		font-size:16px
	}
	div.blogContents p,
	dl.faq p{
		margin:10px;
	}
	div.blogContents ul,
	div.blogContents ol,
	dl.faq ul,
	dl.faq ol{
		margin:10px 10px 10px 30px;
	}
	div.blogContents ul li,
	dl.faq ul li{
		list-style: disc;
	}
	div.blogContents pre,
	dl.faq pre{
		margin:25px;
	}
	div.blogContents img,
	dl.faq img{
		max-width:100%;
		margin:15px 0;
	}
	div.blogContents blockquote,
	dl.faq blockquote{
		background:#efefef;
		padding:5px;
		border-radius: 6px;
		margin:auto auto 10px 30px;
		font-size:16px;
	}
	div.prevnext{
		width:calc(100% - 20px);
		margin:auto;
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:10px;
		margin-bottom:50px;
	}
	div.prevnext div{
		padding:15px;
		background:#fff;
		width:100%;
		background-repeat: no-repeat;
		background-size:30px;
		box-sizing: border-box;
	}
	div.prevnext div.prev{
		background-image:url("../images/arrow_prev_off.svg");
		background-position: left 15px bottom 15px
	}
	div.prevnext div.prev p{
		margin-left:50px;
		margin-top:10px;
	}
	div.prevnext div.next{
		background-image:url("../images/arrow_sitemap.svg");
		background-position: right 15px bottom 15px
	}
	div.prevnext div.next p{
		margin-right:50px;
		margin-top:10px;
	}
	div.prevnext div.next:hover{
		background-image:url("../images/arrow_sitemap_on.svg");
	}
	div.prevnext div.prev:hover{
		background-image:url("../images/arrow_prev_on.svg");
	}
	div.prev img,
	div.next img{
		width:100%;
		height: 160px;
		object-fit: cover;
		object-position: center center;
	}
	div.prev:hover img,
	div.next:hover img{
		opacity: 0.8;
	}
	a.entryLink{
		width:250px;
		height: 60px;
		display: block;
		text-align: center;
		line-height: 60px;
		background-color:var(--red-color);
		border-radius: 60px;
		color:#fff;
		margin:25px auto;
	}
	a.entryLink:hover{
		background-color:var(--blue-color)
	}
}
@media(min-width:768px){
	ul.case{
		padding:25px 50px;
		background:#fff;
		margin-bottom:50px;
	}
	ul.case li{
		border-top:2px solid var(--red-color);
		background-repeat: no-repeat;
		background-position: right center;
		background-size:30px;
		background-image:url("../images/arrow_case.svg");
	}
	ul.case li:hover{
		background-image:url("../images/arrow_case_on.svg");
	}
	ul.case li:last-child{
		border-bottom:1px solid var(--red-color);
	}
	ul.case li a{
		padding:25px 80px 25px 15px;
		display: block;
		display: flex;
		justify-content: space-between;
	}
	ul.case li a h3{
		font-weight: bold;
	}
	ul.case dl{
		font-size:14px;
		width:200px;
		overflow: hidden;
		color:#000;
	}
	ul.case dt,
	ul.case dd{
		padding:5px 10px;
		background:#efefef;
		margin-bottom:5px;
	}
	ul.case dt{
		width:calc(40% - 10px);
		float: left;
		clear: both;
	}
	ul.case dd{
		text-align: center;
	}
}
@media(max-width:767.99px){
	ul.case{
		padding:10px;
		background:#fff;
		margin:10px 10px 50px 10px;
	}
	ul.case li{
		border-top:2px solid var(--red-color);
		background-repeat: no-repeat;
		background-position: right center;
		background-size:30px;
		background-image:url("../images/arrow_case.svg");
	}
	ul.case li:hover{
		background-image:url("../images/arrow_case_on.svg");
	}
	ul.case li:last-child{
		border-bottom:1px solid var(--red-color);
	}
	ul.case li a{
		padding:10px;
		display: block;
		display: flex;
		flex-direction: column;
		gap:10px;
		justify-content: space-between;
	}
	ul.case li a h3{
		font-weight: bold;
	}
	ul.case dl{
		font-size:14px;
		width:200px;
		overflow: hidden;
		color:#000;
	}
	ul.case dt,
	ul.case dd{
		padding:5px 10px;
		background:#efefef;
		margin-bottom:5px;
	}
	ul.case dt{
		width:calc(40% - 10px);
		float: left;
		clear: both;
	}
	ul.case dd{
		text-align: center;
	}
}
@media(min-width:768px){
	dl.download{
		background:#fff;
		padding:25px 50px;
		margin-bottom:25px;
		position: relative;
	}
	dl.download span.new{
		content: "";
		width:53px;
		height: 21px;
		position: absolute;
		background:url("../images/icon_new_red.svg");
		top:15px;
		right:15px;
		text-indent: 100%;
		overflow: hidden;
		white-space: nowrap;
	}
	dl.download dt{
		width:calc(100%);
		font-size:24px;
		line-height: 48px;
		border-bottom:4px solid var(--red-color);
		color:var(--red-color);
		margin-bottom:25px;
	}
	dl.download dd {
		overflow: hidden;
	}
	dl.download dd div.img{
		width:200px;
		float: left;
		padding:5px;
		background:#efefef;
	}
	dl.download dd div.img img{
		width:200px;
		height: auto;
	}
	a.download{
		clear: both;
		display: block;
		width:200px;
		margin:25px auto 0;
		border-radius: 50px;
		line-height: 50px;
		background:var(--red-color);
		color:#fff;
		text-align: center;
	}
	a.download:hover{
		background-color:var(--blue-color);
	}
	dl.download dd div.desc{
		width:calc(100% - 240px);
		float: right;
		height: 280px;
		overflow: hidden;
		position: relative;
	}
	dl.download dd div.desc::after{
		content: "";
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		background: linear-gradient(rgba(255,255,255,0) 0,rgba(255,255,255,0) 70%, #fff 90%);
		z-index: 1;
	}
	dl.download dd div.desc p{
		margin-top:0
	}
	dl.download dd div.desc h4{
		font-weight: bold;
	}
	dl.download dd div.desc ul li{
		margin-left:25px;
		list-style: disc;
	}
	div.downloadWrapper{
		width:720px;
		margin:50px auto;
		display: flex;
		justify-content: center;
		gap:50px;
		background:#efefef;
		align-items: center;
	}
	div.downloadWrapper img{
		width:320px;
	}
	div.downloadWrapper a{
		text-align: center;
		padding:15px;
		display: block;
		width:280px;
		line-height: 40px;
		background:var(--red-color);
		color:#fff;
		border-radius: 40px;
	}
	div.downloadWrapper a:hover{
		background:var(--blue-color);
	}
}
@media(max-width:767.99px){
	dl.download{
		background:#fff;
		width:calc(100% - 20px);
		margin:auto;
		box-sizing: border-box;
		padding:10px;
		padding-bottom:20px;
		margin-bottom:25px;
	}
	dl.download dt{
		width:calc(100%);
		font-size:18px;
		border-bottom:4px solid var(--red-color);
		color:var(--red-color);
		margin-bottom:15px;
	}
	dl.download dd {
		overflow: hidden;
		display: flex;
		flex-direction: column;
	}
	dl.download dd div.img{
		width:150px;
		padding:5px;
		background:#efefef;
		margin:auto auto 10px;
	}
	dl.download dd div.img img{
		width:150px;
		height: auto;
	}
	a.download{
		clear: both;
		display: block;
		width:200px;
		margin:25px auto 0;
		border-radius: 50px;
		line-height: 50px;
		background:var(--red-color);
		color:#fff;
		text-align: center;
	}
	a.download:hover{
		background-color:var(--blue-color);
	}
	dl.download dd div.desc{
		width:calc(100%);
		float: right;
		height: 280px;
		overflow: hidden;
		position: relative;
	}
	dl.download dd div.desc::after{
		content: "";
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		background: linear-gradient(rgba(255,255,255,0) 0,rgba(255,255,255,0) 70%, #fff 90%);
		z-index: 1;
	}
	dl.download dd div.desc p{
		margin-top:0
	}
	dl.download dd div.desc h4{
		font-weight: bold;
	}
	dl.download dd div.desc ul li{
		margin-left:25px;
		list-style: disc;
	}
	div.downloadWrapper{
		margin:25px auto;
		display: flex;
		justify-content: center;
		gap:15px;
		flex-direction: column;
		background:#efefef;
		align-items: center;
		padding-bottom:10px;
	}
	div.downloadWrapper img{
		width:50%;
		height: auto;
	}
	div.downloadWrapper a{
		text-align: center;
		padding:15px;
		display: block;
		width:240px;
		line-height: 30px;
		background:var(--red-color);
		color:#fff;
		border-radius: 40px;
	}
	div.downloadWrapper a:hover{
		background:var(--blue-color);
	}
}
@media(min-width:768px){
	div.strengths{
		border:4px solid var(--blue-color);
		border-radius: 12px;
		position: relative;
		box-sizing: border-box;
		margin:50px;
		overflow: hidden;
	}
	div.strengths h4{
		display: flex;
		width:100%;
		height: 60px;
	}
	div.strengths span:first-child{
		width:80px;
		line-height: 60px;
		background:var(--blue-color);
		text-align: center;
		font-size:42px;
		color:#fff;
	}
	div.strengths span:last-child{
		width:calc(100% - 80px);
		background:#efefef;
		line-height: 60px;
		text-indent: 40px;
		color:var(--blue-color);
		font-weight: bold;
		font-size:24px;
	}
	div.strengths ul{
		margin:25px 100px 25px;
		font-size:22px;
	}
	div.strengths li::before{
		background-color:var(--blue-color) !important;
	}
	table.oslist{
		width:100%;
	}
	table.oslist tr{
		display: flex;
	}
	table.oslist td{
		padding:25px;
		width:calc(33.3333% - 50px);
		border-bottom:2px solid #ccc;
	}
	table.oslist thead td{
		background:var(--blue-color);
		color:#fff;
		text-align: center;
		font-size:20px;
	}
	p.strengths{
		font-weight: bold;
		font-size:20px;
		color:var(--red-color);
	}
	div.support{
		width:100%;
		display: flex;
		margin-top:50px;
		border-bottom: 1px solid #ccc;
	}
	div.support div.columnLeft{
		width:33.333%;
	}
	div.support div.scskcover{
		width:66.666%;
		position: relative;
		/*overflow: hidden;*/
	}
	div.scskcover::before{
		content: "SCSK一次保守対応";
		position: absolute;
		margin:auto;
		padding:0 15px;
		background:#fff;
		left:0;
		right:0;
		top:-44px;
		color:var(--blue-color);
		font-size:22px;
		font-weight: bold;
		width:200px;
		z-index: 2;
		text-align: center;
	}
	div.scskcover::after{
		content: "";
		width:calc(100% + 20px);
		border:6px solid var(--blue-color);
		box-sizing: border-box;
		position: absolute;
		height: 348px;
		left:-10px;
		right:0;
		top:-30px;
		margin:auto;
		z-index: 1;
		border-radius: 12px;
	}
	div.support div.column{
		width:50%;
		float: left;
		/*background:#ccc;*/
	}
	div.support div.column p,
	div.support div.columnLeft p{
		height:100px;
		text-align:center;
		display: flex;
		align-items: center;
		justify-content: center;
		border-top:1px solid #ccc;
		margin:0;
	}
	div.scskcover div.columnWide{
		wdth:100%;
		text-align: center;
		height: 100px;
		display: flex;
		align-items: center;
		justify-content: center;
		clear: both;
		margin: 0;
		border-top:1px solid #ccc;
	}
	div.scskcover div.columnWide p{
		color:var(--red-color);
		clear: both;
		width:100%;
		margin:0;
		font-size:22px;
		font-weight: bold;
	}
	div.serviceMenu h4,
	div.serviceMenu2 h4{
		background:var(--blue-color);
		font-size:22px;
		color:#fff;
		padding:15px;
		position: relative;
		text-indent: 50px;
	}
	div.serviceMenu h4::before,
	div.serviceMenu2 h4::before{
		content: "";
		width:20px;
		height: 20px;
		position: absolute;
		border-radius: 20px;
		background:#fff;
		margin:auto;
		top:0;
		bottom:0;
		left:20px;
	}
	div.serviceMenu ol,
	div.serviceMenu2 dl{
		margin:50px 100px;
	}
	div.serviceMenu > ol > li{
		color:var(--blue-color);
		font-weight: bold;
		font-size:20px;
		list-style: none;
		position: relative;
	}
	div.serviceMenu > ol > li::before{
		content: "";
		width:30px;
		height: 30px;
		background-size:30px;
		position: absolute;
		top:0;
		left:-40px;
		background-repeat: no-repeat;
	}
	div.serviceMenu > ol > li:nth-child(1)::before{
		background-image:url("../images/numb01.svg");
	}
	div.serviceMenu > ol > li:nth-child(2)::before{
		background-image:url("../images/numb02.svg");
	}
	div.serviceMenu > ol > li:nth-child(3)::before{
		background-image:url("../images/numb03.svg");
	}
	div.serviceMenu dl,
	div.serviceMenu2 dl{
		font-size:18px;
		font-weight: normal;
		color:#000;
		margin:25px auto  50px 25px;
		overflow: hidden;
		border:4px solid var(--blue-color);
		padding:15px 15px 0 15px;
		border-radius: 6px;
	}
	div.serviceMenu dl dt,
	div.serviceMenu2 dl dt{
		width:120px;
		float: left;
		clear: both;
		font-weight: bold;
		background:var(--blue-color);
		text-align: center;
		color:#fff;
		font-size:16px;
		border-radius: 20px;
		padding:3px ;
	}
	div.serviceMenu2 dl dt{
		width:200px;
	}
	div.serviceMenu dl dd,
	div.serviceMenu2 dl dd{
		width:calc(100% - 140px);
		float: right;
		margin-bottom:25px;
	}
	div.serviceMenu2 dl dd{
		width:calc(100% - 220px);
	}
	div.serviceMenu dl dd:last-child{
		margin-bottom: 0;
	}
	div.serviceMenu ul li{
		margin-left:25px;
		position: relative;
	}
	div.serviceMenu ul li::before{
		content:"";
		background-image:url("../images/icon_servicecheck.svg");
		background-size:20px;
		width:30px;
		height: 30px;
		background-position: center center;
		background-repeat: no-repeat;
		position: absolute;
		top:0;
		left:-20px;
	}
	table.construct{
		width:100%;

	}
	table.construct td{
		border:3px solid #fff;
		background:#efefef;
		padding:15px;
		vertical-align: middle;
	}
	table.construct li{
		position: absolute;
		padding-left:30px !important;
	}
	table.construct li::before{
		content: "";
		background-image:url("../images/icon_servicecheck2.svg");
		background-position: center;
		background-repeat: no-repeat;
		width:30px;
		height: 30px;
		position: absolute;
		top:-3px;
		left:0;
		background-size:20px;
	}
	table.construct thead td{
		background:var(--blue-color);
		color:#fff;
		/*font-weight: bold;*/
	}
	dl.service_nebulashift{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap:50px;
	}
	dl.service_nebulashift h4{
		text-align: center;
		font-weight: bold;
		font-size:22px;
		border-bottom:4px solid var(--blue-color);
		padding-bottom:5px;
		color:var(--blue-color);
		margin-bottom:25px;
	}
	dl.service_nebulashift ul{
		padding:15px 15px 5px;
		background:#efefef;
	}
	dl.service_nebulashift ul li{
		padding-left:30px !important;
		position: relative !important;
	}
	dl.service_nebulashift ul li::before{
		content: "" !important;
		width:20px;
		height: 20px;
		background-image:url("../images/icon_hexagon_1.svg") !important;
		background-repeat: no-repeat !important;
		background-size:20px !important;
		background-position: center;
		position: absolute !important;
		top:3px !important;
		left:0 !important;
	}
	div.neb{
		display: flex;
		justify-content: space-between;
		width:980px;
	}
	div.neb div.neb_left,
	div.neb div.neb_right{
		width:40%;
		float: left;
		position: relative;
	}
	div.neb div.neb_side{
		width:20%;
		padding-left:60px;
	}
	div.neb_side p{
		text-align: center;
		background:url("../images/logo_nebulashift_1.png") center top no-repeat;
		background-size:100%;
		padding-top:60px;
		margin-top:300px;
		font-weight: bold;
	}
	div.neb_right::after{
		content:"";
		background-image:url("../images/nab_arrow.svg");
		background-repeat:no-repeat;
		background-position: center bottom;
		background-size:32.5px;
		width:39px;
		height: 508px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-50px;
	}
	div.neb h4{
		background-color:var(--blue-color);
		color:#fff;
		line-height: 18px;
		padding-bottom:12px;
		padding-top:40px;
		text-align: center;
		margin-bottom:25px;
		position: relative;
	}
	div.neb div.neb_left h4{
		background-image:url("../images/icon_sol.svg");
		background-position: right center;
		background-repeat: no-repeat;
		background-size:24px;
	}
	div.neb  h4::before{
		position: absolute;
		width:150px;
		text-align: center;
		line-height: 1.5em;
		padding:0 10px;
		background:#fff;
		border-radius: 20px;
		left:20px;
		top:8px;
		color:var(--blue-color);
		font-size:15px;
		font-weight: bold;
	}
	div.neb div.neb_left h4::before{
		content: "企業のDX推進"
	}
	div.neb div.neb_right h4::before{
		content: "解決へのアプローチ"
	}
	div.nebColumn{
		height: calc(100% - 95px);
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:15px;
	}
	dl.neb{
		padding:15px;
		margin-bottom:15px;
		border:5px solid #ccc;
		border-radius: 6px;
	}
	dl.neb dt{
		color:var(--blue-color);
		font-weight: bold;
		border-bottom:2px solid var(--blue-color);
		margin-bottom:15px;
		pointer-events: stroke;
	}
	dl.neb dt::before{
		content: "";
		width:16px;
		height: 16px;
		border-radius: 16px;
		
	}
	dl.neb dd{
		font-size:16px;
	}
	dl.neb_right{
		padding:10px;
		background:#efefef;
		margin-bottom:15px;
		margin-left:25px;
		position: relative;
	}
	dl.neb_right::before{
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 10px solid var(--blue-color);
		border-right: 0;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		left:-15px;
	}
	dl.neb_right dt{
		color:var(--blue-color);
		font-weight: bold;
	}
	dl.neb_right dd{
		font-size:16px;
	}
	div.case{
		background:#efefef;
		margin-top:50px;
		width:100%;
		min-height: 430px;
		position: relative;
	}
	div.case::before{
		position: absolute;
		top:-45px;
		left:0;
		font-size:24px;
		font-weight: bold;
		color:#333;
	}
	div.case01::before{
		content: "Case01"
	}
	div.case02::before{
		content: "Case02"
	}
	div.case03::before{
		content: "Case03"
	}
    
	div.case h4{
		background:var(--blue-color);
		line-height: 80px;
		text-align: center;
		color:#fff;
		font-weight:bold;
	}
	div.case p{
		margin:15px;
        background-repeat: no-repeat;
        background-position: center top;
        background-size:80px;
        padding-top:100px;
	}
    div.case01 p{
        background-image: url("../images/usecase01.svg");
        background-position: center top 10px;
    }
    div.case02 p{
        background-image: url("../images/usecase02.svg");
    }
    div.case03 p{
        background-image: url("../images/usecase03.svg");
        background-size:70px;
        background-position: center top 10px;
    }
	table.careplus{
		width:100%;
	}
	table.careplus td{
		vertical-align: middle;
		padding:25px 0;
		border:3px solid #ccc;
		text-align: center;
	}
	table.careplus span.line{
		display: block;
		border-top:3px solid #ccc;
		padding-top:15px;
	}
	img.careplus{
		width:75%;
		height: auto;
	}
	div.carePlusWrapper{
		width:100%;
		display: flex;
		justify-content: space-between;
		gap:25px;
		position: relative;
		margin-bottom:25px;
	}
	div.carePlusWrapper::after{
		content: "エスカレーション";
		position: absolute;
		width:180px;
		line-height: 40px;
		border:4px solid var(--red-color);
		border-radius: 40px;
		color:var(--red-color);
		font-weight: bold;
		bottom:50px;
		right:120px;
		background:#fff;
	}
	div.care{
		box-sizing: border-box;
		border:4px solid var(--blue-color);
		padding:15px;
		border-radius: 12px;
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:25px;
		min-height: 600px;
		font-size:16px;
	}
	div.care h4{
		position: absolute;
		height: 100px;
		text-align: center;
		top:25px;
		left:0;
		right:0;
		margin:auto;
		font-weight: bold;
		align-items: center;
	}
	div.care p{
		position: absolute;
		left:0;
		right:0;
		bottom:25px;
		margin:auto;
		padding:0 15px;
		text-align: justify;
	}
	div.incareWrapper{
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:15px;
		font-size:15px;
		font-weight: bold;
	}
	div.incare{
		box-sizing: border-box;
		min-height: 100px;
		background:gray;
		align-items: center;
		display: flex;
		justify-content: center;
		border-radius: 6px;
	}
	div.care1{
		flex:1.5;
		border-color:var(--k8s-color) !important;
		font-weight: bold;
		font-size:18px;
	}
	div.care1::after,
	div.care2::after{
		content: "";
		background:url("../images/arrow_double.svg") center center no-repeat;
		background-size:65px;
		width:65px;
		height: 25px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-49px;
		z-index: 1;
	}
	div.care3::after{
		content: "";
		background:url("../images/arrow_triple.svg") center center no-repeat;
		background-size:65px;
		width:73px;
		height: 304px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-52px;
		z-index: 1;
	}
	div.care2{
		flex:4;
	}
	div.care3{
		flex:2;
		border-color:var(--red-color) !important;
	}
	div.care4{
		flex:2;
		border-color:var(--red-color) !important;
	}
	div.care1 div.incare{
		background:var(--k8s-color);
		color:#fff;
	}
	div.care2 div.incare{
		background:var(--blue-color);
		color:#fff;
		font-size:18px;
	}
	div.care3 div.incare,
	div.care4 div.incare{
		background:var(--red-color);
		color:#fff;
	}
	div.incare.dummy{
		background:#fff !important;
	}
	div.spss{
		display: flex;
		justify-content: space-between;
		gap:50px;
		margin-top:50px;
		background:url("../images/icon_spss.svg") center top 247px no-repeat;
		background-size:80px;
	}
	div.spss img{
		width:100%;
		height: auto;
	}
	div.spss h5{
		text-align: center;
		font-size:22px;
		font-weight: bold;
		color:#fff;
		line-height: 2em;
		margin-bottom:25px;
	}
	div.spss div.left h5{
		background:#666;
	}
	div.spss div.right h5{
		background:var(--blue-color);
	}
	div.merit3{
		display: flex;
		justify-content: space-between;
		margin-top:25px;
		margin-bottom:25px;
	}
	div.merit3 div.me{
		width:calc(33% - 25px);
		background:#efefef;
	}
	div.me h5{
		border-top:4px solid var(--blue-color);
		border-bottom:4px solid var(--blue-color);
		text-align: center;
		color:var(--blue-color);
		line-height: 3em;
		background:#fff;
		font-weight: bold;
	}
	div.me h5 span{
		font-size:36px;
		color:var(--red-color)
	}
	div.me p{
		padding:25px;
	}
	div.predominance ul{
		width:100%;
		display: flex;
		gap:50px;
	}
	#predominance{
		padding:15px;
		background-color:#fff;
		padding-bottom:200px;
		background-image:url("../images/logo_nebulashift.png");
		background-repeat: no-repeat;
		background-position: center bottom -100px;
	}

	#predominance h2{
	  color:#fff;
	  font-size: 48px;
	  font-weight: bold;
	  text-align: center;
	  margin-bottom: 45px;
	}

	#predominance table td{
	  vertical-align: top;
	}


	#predominance table th{
	  color:#fff;
	  font-size: 24px;
	  font-weight: bold;
	  line-height:1.5;
	  text-align: center;
	  padding: 0 0 20px;
	}

	.srv_list{
	  background:#fff;
	  padding: 5px 10px;
	  box-sizing: border-box;
	  border-radius:4px;
	  width:calc(50% - 2.5px);
	}

	.srv_list.ic_d{
	  display:flex;
	  align-items: center;
	}


	.srv_list li{
	  color:var(--blue-color);
	  font-weight: bold;
	  font-size: 14px;
	  line-height: 1.28;
	  margin-bottom:2px;
	  padding-left:15px;
	  position: relative;
	}

	.srv_list li:last-child{
	  margin-bottom:0;
	}

	.srv_list li::before{
	  content:"●";
	  color:var(--blue-color);
	  position: absolute;
	  left:0;
	}

	#predominance table.t_01 tbody td p{
	  background:#fff;
	  color:#00143c;
	  font-size: 20px;
	  font-weight: bold;/**/
	  line-height:2.4;
	  border-radius:4px;
	  text-align: center;
	  padding: 6px 0;
	  margin:0;
	  margin-bottom:10px;
	}

	#predominance table.t_01 tr:nth-child(2) td{
	  padding:6px 0;
	}

	#predominance table.t_01 tbody td p > span{
	  display: block;
	  font-size: 15px;
	}

	#predominance table.t_02 tbody td{
	  background:#ccc;
	  border-radius:4px;
	  padding: 6px 7px;
	  box-sizing: border-box;
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: space-between;
	  margin-bottom:6px;
	  position:relative;
	  font-size:14px !important;
	}

	#predominance table.t_02 tbody td::after{
	  content:"";
	}

	#predominance table.t_02 tbody td::before,
	#predominance table.t_02 tbody td::after{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
	}
	#predominance table.t_02 tbody td::before{
		left: -65px;
		box-sizing: border-box;
		width: 20px;
		height: 40px;
		border: 20px solid transparent;
		border-left: 20px solid #ccc;
		z-index: 99;
		transform: rotate(180deg);
	}
	#predominance table.t_02 tbody td::after{
		left: -35px;
		width: 40px;
		height: 22px;
		border-left: 40px solid #ccc;
	}

	#predominance table.t_03 tbody td img{
	  display:block;
	  margin-bottom: 6px;
	}

	#predominance table.t_03 tbody td img:nth-of-type(2){
	  margin-top: 6px;
	}

	#predominance ul:not(.srv_list):not(.ssp_w){
	  display: flex;
	  flex-wrap: nowrap;
	  justify-content: space-between;
	}

	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(1){
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	  flex:2;
	  margin-right:30px;
	}

	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(2){
	  flex:2.5;
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	  margin-right:9px;
	}


	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(3){
	  flex:2;
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	}


	#predominance talbe.t_02 tr:nth-child(1) td,
	#predominance table.t_02 tr:nth-child(2) td{
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: space-between;
	  gap:5px;
	}


	#predominance table.t_02 tr:nth-child(3) td{
	  display: grid;
	  grid-template-columns: 49% 50%;
	  gap: 6px;
	}

	.srv_list.u1{
	  grid-column:1/2;
	  grid-row:1/2;
	  width:100%;
	}

	.srv_list.u2{
	  grid-column:1/2;
	  grid-row:2/3;
	  width:100%;
	}

	.srv_list.u3{
	  grid-column:2/3;
	  grid-row:1/3;
	  width:100%;
	}

	.srv_list.u2 li,.srv_list.u3 li{
	  line-height: 1.65;
	}

	.pm02{
	  margin-top:6px;
	}

	.pm03{
	   writing-mode: vertical-rl;
	  font-size: 18px !important;
	  line-height: 2.6 !important;
	}

	.pm04{
	  line-height:1.6 !important;
	}


	#predominance table.t_01 tr:nth-child(3) td div{
	  display: grid;
	  grid-template-columns: 200px 44px 44px;
	  gap: 6px;
	}

	.td3_1{
	  grid-column:1/2;
	  grid-row:1/2;
	}

	.td3_2{
	  grid-column:1/2;
	  grid-row:2/3;
	}

	.td3_3{
	  grid-column:2/3;
	  grid-row:1/3;
	}

	.td3_4{
	  grid-column:3/4;
	  grid-row:1/3;
	}


	.li02 li{
	  line-height:1.1;
	}

	.td_tx_s01{
	  color:#fff;
	  font-size:18px;
	  line-height:1.88;
	  font-weight: 500;
	}

	.td_tx_s02{
	  color:#fff;
	  font-size:18px;
	  line-height:1.58;
	  font-weight: 500;
	  margin-top:10px;
	}
	.td_tx_s02 a{
	  color:#fff;
	}

	.td_tx_s02 a:hover{
	  text-decoration:underline;
	}


}
@media(max-width:767.99px){
	div.strengths{
		border:4px solid var(--blue-color);
		border-radius: 12px;
		position: relative;
		box-sizing: border-box;
		margin:10px;
		overflow: hidden;
	}
	div.strengths h4{
		display: flex;
		width:100%;
		flex-direction: column;
	}
	div.strengths span:first-child{
		width:100%;
		line-height: 40px;
		background:var(--blue-color);
		text-align: center;
		font-size:20px;
		color:#fff;
	}
	div.strengths span:last-child{
		width:calc(100% - 20px);
		background:#efefef;
		color:var(--blue-color);
		font-weight: bold;
		font-size:18px;
		padding:10px;
	}
	div.strengths ul{
		margin:10px;
	}
	div.strengths li::before{
		background-color:var(--blue-color) !important;
	}
	table.oslist{
		display: block;
		width:100%;
		height: 0;
		background:url("../images/scsk_mobile_02.jpg") no-repeat;
		padding-top:46.5%;
		background-size:contain;
	}
	table.oslist tr{
		display: none;
	}
	p.strengths{
		font-weight: bold;
		font-size:20px;
		color:var(--red-color);
	}
	div.support{
		width:100%;
		height: 0;
		background:url("../images/scsk_mobile_01.jpg") no-repeat;
		background-size:contain;
		padding-top:38%;
	}
	div.support div{
		display: none;
	}
	div.scskcover div.columnWide{
		wdth:100%;
		text-align: center;
		height: 100px;
		display: flex;
		align-items: center;
		justify-content: center;
		clear: both;
		margin: 0;
		border-top:1px solid #ccc;
	}
	div.scskcover div.columnWide p{
		color:var(--red-color);
		clear: both;
		width:100%;
		margin:0;
		font-size:22px;
		font-weight: bold;
	}
	div.serviceMenu h4,
	div.serviceMenu2 h4{
		background:var(--blue-color);
		font-size:18px;
		color:#fff;
		padding:10px;
		position: relative;
		padding-left: 30px;
	}
	div.serviceMenu h4::before,
	div.serviceMenu2 h4::before{
		content: "";
		width:15px;
		height: 15px;
		position: absolute;
		border-radius: 20px;
		background:#fff;
		margin:auto;
		top:0;
		bottom:0;
		left:10px;
	}
	div.serviceMenu ol,
	div.serviceMenu2 dl{
		margin:10px 0 0 20px;
	}
	div.serviceMenu > ol > li{
		color:var(--blue-color);
		font-weight: bold;
		list-style: none;
		position: relative;
	}
	div.serviceMenu > ol > li::before{
		content: "";
		width:30px;
		height: 30px;
		background-size:18px;
		position: absolute;
		top:2px;
		left:-20px;
		background-repeat: no-repeat;
	}
	div.serviceMenu > ol > li:nth-child(1)::before{
		background-image:url("../images/numb01.svg");
	}
	div.serviceMenu > ol > li:nth-child(2)::before{
		background-image:url("../images/numb02.svg");
	}
	div.serviceMenu > ol > li:nth-child(3)::before{
		background-image:url("../images/numb03.svg");
	}
	div.serviceMenu dl,
	div.serviceMenu2 dl{
		font-size:18px;
		font-weight: normal;
		color:#000;
		margin:10px;
		overflow: hidden;
		border:4px solid var(--blue-color);
		padding:10px;
		border-radius: 6px;
		display: flex;
		flex-direction: column;
	}
	div.serviceMenu dl dt,
	div.serviceMenu2 dl dt{
		font-weight: bold;
		background:var(--blue-color);
		text-align: center;
		color:#fff;
		font-size:16px;
		border-radius: 20px;
		padding:3px ;
		margin-bottom:10px;
	}
	div.serviceMenu2 dl dt{
	}
	div.serviceMenu dl dd,
	div.serviceMenu2 dl dd{
		width:calc(100%);
		float: right;
		margin-bottom:25px;
	}
	div.serviceMenu2 dl dd{
		width:calc(100% - 20px);
		margin:auto;
		margin-bottom:10px;
	}
	div.serviceMenu dl dd:last-child{
		margin-bottom: 0;
	}
	div.serviceMenu ul li{
		margin-left:25px;
		position: relative;
	}
	div.serviceMenu ul li::before{
		content:"";
		background-image:url("../images/icon_servicecheck.svg");
		background-size:20px;
		width:30px;
		height: 30px;
		background-position: center center;
		background-repeat: no-repeat;
		position: absolute;
		top:0;
		left:-20px;
	}
	table.construct{
		width:100%;
		display: block;
		background:url("../images/installation_mobile_01.jpg") no-repeat;
		height: 0;
		padding-top:45%;
		background-size:contain;
	}
	table.construct tr{
		display: none;
	}
	table.construct td{
		border:3px solid #fff;
		background:#efefef;
		padding:15px;
		vertical-align: middle;
	}
	table.construct li{
		position: absolute;
		padding-left:30px !important;
	}
	table.construct li::before{
		content: "";
		background-image:url("../images/icon_servicecheck2.svg");
		background-position: center;
		background-repeat: no-repeat;
		width:30px;
		height: 30px;
		position: absolute;
		top:-3px;
		left:0;
		background-size:20px;
	}
	table.construct thead td{
		background:var(--blue-color);
		color:#fff;
		/*font-weight: bold;*/
	}
	dl.service_nebulashift{
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: space-between;
		gap:50px;
	}
	dl.service_nebulashift h4{
		text-align: center;
		font-weight: bold;
		font-size:18px;
		border-bottom:4px solid var(--blue-color);
		padding-bottom:5px;
		color:var(--blue-color);
		margin-bottom:25px;
	}
	dl.service_nebulashift ul{
		padding:15px 15px 5px;
		background:#efefef;
	}
	dl.service_nebulashift ul li{
		padding-left:30px !important;
		position: relative !important;
	}
	dl.service_nebulashift ul li::before{
		content: "" !important;
		width:20px;
		height: 20px;
		background-image:url("../images/icon_hexagon_1.svg") !important;
		background-repeat: no-repeat !important;
		background-size:20px !important;
		background-position: center;
		position: absolute !important;
		top:3px !important;
		left:0 !important;
	}
	div.neb{
		width:100%;
		height: 0;
		background:url("../images/installation_mobile_03.jpg") no-repeat;
		background-size:contain;
		padding-top:56%;
	}
	div.neb div{
		display: none;
	}
	div.neb div.neb_left,
	div.neb div.neb_right{
		width:40%;
		float: left;
		position: relative;
	}
	div.neb div.neb_side{
		width:20%;
		padding-left:60px;
	}
	div.neb_side p{
		text-align: center;
		background:url("../images/logo_nebulashift_1.png") center top no-repeat;
		background-size:100%;
		padding-top:60px;
		margin-top:300px;
		font-weight: bold;
	}
	div.neb_right::after{
		content:"";
		background-image:url("../images/nab_arrow.svg");
		background-repeat:no-repeat;
		background-position: center bottom;
		background-size:32.5px;
		width:39px;
		height: 508px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-50px;
	}
	div.neb h4{
		background-color:var(--blue-color);
		color:#fff;
		line-height: 18px;
		padding-bottom:12px;
		padding-top:40px;
		text-align: center;
		margin-bottom:25px;
		position: relative;
	}
	div.neb div.neb_left h4{
		background-image:url("../images/icon_sol.svg");
		background-position: right center;
		background-repeat: no-repeat;
		background-size:24px;
	}
	div.neb  h4::before{
		position: absolute;
		width:150px;
		text-align: center;
		line-height: 1.5em;
		padding:0 10px;
		background:#fff;
		border-radius: 20px;
		left:20px;
		top:8px;
		color:var(--blue-color);
		font-size:15px;
		font-weight: bold;
	}
	div.neb div.neb_left h4::before{
		content: "企業のDX推進"
	}
	div.neb div.neb_right h4::before{
		content: "解決へのアプローチ"
	}
	div.nebColumn{
		height: calc(100% - 95px);
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:15px;
	}
	dl.neb{
		padding:15px;
		margin-bottom:15px;
		border:5px solid #ccc;
		border-radius: 6px;
	}
	dl.neb dt{
		color:var(--blue-color);
		font-weight: bold;
		border-bottom:2px solid var(--blue-color);
		margin-bottom:15px;
		pointer-events: stroke;
	}
	dl.neb dt::before{
		content: "";
		width:16px;
		height: 16px;
		border-radius: 16px;
		
	}
	dl.neb dd{
		font-size:16px;
	}
	dl.neb_right{
		padding:10px;
		background:#efefef;
		margin-bottom:15px;
		margin-left:25px;
		position: relative;
	}
	dl.neb_right::before{
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 10px solid var(--blue-color);
		border-right: 0;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		left:-15px;
	}
	dl.neb_right dt{
		color:var(--blue-color);
		font-weight: bold;
	}
	dl.neb_right dd{
		font-size:16px;
	}
	div.case{
		background:#efefef;
		margin-top:25px;
		width:100%;
		position: relative;
	}
	div.case::before{
		position: absolute;
		top:-25px;
		left:0;
		font-size:18px;
		font-weight: bold;
		color:#333;
	}
	div.case01::before{
		content: "Case01"
	}
	div.case02::before{
		content: "Case02"
	}
	div.case03::before{
		content: "Case03"
	}
    
	div.case h4{
		background:var(--blue-color);
		line-height: 3em;
		text-align: center;
		color:#fff;
		font-weight:bold;
	}
	div.case p{
		margin:15px;
        background-repeat: no-repeat;
        background-position: center top;
        background-size:80px;
        padding-top:100px;
	}
    div.case01 p{
        background-image: url("../images/usecase01.svg");
        background-position: center top 10px;
    }
    div.case02 p{
        background-image: url("../images/usecase02.svg");
    }
    div.case03 p{
        background-image: url("../images/usecase03.svg");
        background-size:70px;
        background-position: center top 10px;
    }
	table.careplus{
		display: block;
		width:100%;
		height: 0;
		background:url("../images/installation_mobile_06.jpg") no-repeat;
		background-size:contain;
		padding-top:70%;
	}
	table.careplus tr{
		display: none;
	}
	table.careplus td{
		vertical-align: middle;
		padding:25px 0;
		border:3px solid #ccc;
		text-align: center;
	}
	table.careplus span.line{
		display: block;
		border-top:3px solid #ccc;
		padding-top:15px;
	}
	img.careplus{
		width:75%;
		height: auto;
	}
	div.carePlusWrapper{
		background:url("../images/installation_mobile_05.jpg") no-repeat;
		background-size:contain;
		width:100%;
		height: 0;
		padding-top:62%;
	}
	div.carePlusWrapper div{
		display: none !important;
	}
	div.carePlusWrapper::after{
		content: "";
	}
	div.care{
		box-sizing: border-box;
		border:4px solid var(--blue-color);
		padding:15px;
		border-radius: 12px;
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:25px;
		min-height: 600px;
		font-size:16px;
	}
	div.care h4{
		position: absolute;
		height: 100px;
		text-align: center;
		top:25px;
		left:0;
		right:0;
		margin:auto;
		font-weight: bold;
		align-items: center;
	}
	div.care p{
		position: absolute;
		left:0;
		right:0;
		bottom:25px;
		margin:auto;
		padding:0 15px;
		text-align: justify;
	}
	div.incareWrapper{
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:15px;
		font-size:15px;
		font-weight: bold;
	}
	div.incare{
		box-sizing: border-box;
		min-height: 100px;
		background:gray;
		align-items: center;
		display: flex;
		justify-content: center;
		border-radius: 6px;
	}
	div.care1{
		flex:1.5;
		border-color:var(--k8s-color) !important;
		font-weight: bold;
		font-size:18px;
	}
	div.care1::after,
	div.care2::after{
		content: "";
		background:url("../images/arrow_double.svg") center center no-repeat;
		background-size:65px;
		width:65px;
		height: 25px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-49px;
		z-index: 1;
	}
	div.care3::after{
		content: "";
		background:url("../images/arrow_triple.svg") center center no-repeat;
		background-size:65px;
		width:73px;
		height: 304px;
		position: absolute;
		margin:auto;
		top:0;
		bottom:0;
		right:-52px;
		z-index: 1;
	}
	div.care2{
		flex:4;
	}
	div.care3{
		flex:2;
		border-color:var(--red-color) !important;
	}
	div.care4{
		flex:2;
		border-color:var(--red-color) !important;
	}
	div.care1 div.incare{
		background:var(--k8s-color);
		color:#fff;
	}
	div.care2 div.incare{
		background:var(--blue-color);
		color:#fff;
		font-size:18px;
	}
	div.care3 div.incare,
	div.care4 div.incare{
		background:var(--red-color);
		color:#fff;
	}
	div.incare.dummy{
		background:#fff !important;
	}
	div.spss{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:50px;
		margin-top:50px;
		background:url("../images/icon_spss.svg") center top 247px no-repeat;
		background-size:80px;
	}
	div.spss img{
		width:100%;
		height: auto;
	}
	div.spss h5{
		text-align: center;
		font-size:18px;
		font-weight: bold;
		color:#fff;
		line-height: 2em;
		margin-bottom:15px;
	}
	div.spss div.left h5{
		background:#666;
	}
	div.spss div.right h5{
		background:var(--blue-color);
	}
	div.merit3{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		margin-top:25px;
		margin-bottom:25px;
	}
	div.merit3 div.me{
		width:calc(100% - 20px);
		background:#efefef;
	}
	div.me h5{
		border-top:3px solid var(--blue-color);
		border-bottom:3px solid var(--blue-color);
		text-align: center;
		color:var(--blue-color);
		line-height: 2em;
		background:#fff;
		font-weight: bold;
	}
	div.me h5 span{
		font-size:24px;
		color:var(--red-color)
	}
	div.me p{
		padding:10px;
	}
	div.predominance ul{
		width:100%;
		display: flex;
		gap:50px;
	}
	#predominance{
		width:100%;
		height: 0;
		background:url("../images/installation_mobile_04.jpg") no-repeat;
		background-size:contain;
		padding-top:46%;
	}
	#predominance ul{
		display: none !important;
	}
	#predominance h2{
	  color:#fff;
	  font-size: 48px;
	  font-weight: bold;
	  text-align: center;
	  margin-bottom: 45px;
	}

	#predominance table td{
	  vertical-align: top;
	}


	#predominance table th{
	  color:#fff;
	  font-size: 24px;
	  font-weight: bold;
	  line-height:1.5;
	  text-align: center;
	  padding: 0 0 20px;
	}

	.srv_list{
	  background:#fff;
	  padding: 5px 10px;
	  box-sizing: border-box;
	  border-radius:4px;
	  width:calc(50% - 2.5px);
	}

	.srv_list.ic_d{
	  display:flex;
	  align-items: center;
	}


	.srv_list li{
	  color:var(--blue-color);
	  font-weight: bold;
	  font-size: 14px;
	  line-height: 1.28;
	  margin-bottom:2px;
	  padding-left:15px;
	  position: relative;
	}

	.srv_list li:last-child{
	  margin-bottom:0;
	}

	.srv_list li::before{
	  content:"●";
	  color:var(--blue-color);
	  position: absolute;
	  left:0;
	}

	#predominance table.t_01 tbody td p{
	  background:#fff;
	  color:#00143c;
	  font-size: 20px;
	  font-weight: bold;/**/
	  line-height:2.4;
	  border-radius:4px;
	  text-align: center;
	  padding: 6px 0;
	  margin:0;
	  margin-bottom:10px;
	}

	#predominance table.t_01 tr:nth-child(2) td{
	  padding:6px 0;
	}

	#predominance table.t_01 tbody td p > span{
	  display: block;
	  font-size: 15px;
	}

	#predominance table.t_02 tbody td{
	  background:#ccc;
	  border-radius:4px;
	  padding: 6px 7px;
	  box-sizing: border-box;
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: space-between;
	  margin-bottom:6px;
	  position:relative;
	  font-size:14px !important;
	}

	#predominance table.t_02 tbody td::after{
	  content:"";
	}

	#predominance table.t_02 tbody td::before,
	#predominance table.t_02 tbody td::after{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
	}
	#predominance table.t_02 tbody td::before{
		left: -65px;
		box-sizing: border-box;
		width: 20px;
		height: 40px;
		border: 20px solid transparent;
		border-left: 20px solid #ccc;
		z-index: 99;
		transform: rotate(180deg);
	}
	#predominance table.t_02 tbody td::after{
		left: -35px;
		width: 40px;
		height: 22px;
		border-left: 40px solid #ccc;
	}

	#predominance table.t_03 tbody td img{
	  display:block;
	  margin-bottom: 6px;
	}

	#predominance table.t_03 tbody td img:nth-of-type(2){
	  margin-top: 6px;
	}

	#predominance ul:not(.srv_list):not(.ssp_w){
	  display: flex;
	  flex-wrap: nowrap;
	  justify-content: space-between;
	}

	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(1){
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	  flex:2;
	  margin-right:30px;
	}

	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(2){
	  flex:2.5;
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	  margin-right:9px;
	}


	#predominance ul:not(.srv_list):not(.ssp_w) > li:nth-of-type(3){
	  flex:2;
	  border-radius: 12px;
	  background-color: var(--blue-color);
	  padding:20px 10px;
	}


	#predominance talbe.t_02 tr:nth-child(1) td,
	#predominance table.t_02 tr:nth-child(2) td{
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: space-between;
	  gap:5px;
	}


	#predominance table.t_02 tr:nth-child(3) td{
	  display: grid;
	  grid-template-columns: 49% 50%;
	  gap: 6px;
	}

	.srv_list.u1{
	  grid-column:1/2;
	  grid-row:1/2;
	  width:100%;
	}

	.srv_list.u2{
	  grid-column:1/2;
	  grid-row:2/3;
	  width:100%;
	}

	.srv_list.u3{
	  grid-column:2/3;
	  grid-row:1/3;
	  width:100%;
	}

	.srv_list.u2 li,.srv_list.u3 li{
	  line-height: 1.65;
	}

	.pm02{
	  margin-top:6px;
	}

	.pm03{
	   writing-mode: vertical-rl;
	  font-size: 18px !important;
	  line-height: 2.6 !important;
	}

	.pm04{
	  line-height:1.6 !important;
	}


	#predominance table.t_01 tr:nth-child(3) td div{
	  display: grid;
	  grid-template-columns: 200px 44px 44px;
	  gap: 6px;
	}

	.td3_1{
	  grid-column:1/2;
	  grid-row:1/2;
	}

	.td3_2{
	  grid-column:1/2;
	  grid-row:2/3;
	}

	.td3_3{
	  grid-column:2/3;
	  grid-row:1/3;
	}

	.td3_4{
	  grid-column:3/4;
	  grid-row:1/3;
	}


	.li02 li{
	  line-height:1.1;
	}

	.td_tx_s01{
	  color:#fff;
	  font-size:18px;
	  line-height:1.88;
	  font-weight: 500;
	}

	.td_tx_s02{
	  color:#fff;
	  font-size:18px;
	  line-height:1.58;
	  font-weight: 500;
	  margin-top:10px;
	}
	.td_tx_s02 a{
	  color:#fff;
	}

	.td_tx_s02 a:hover{
	  text-decoration:underline;
	}
}
@media(min-width:768px){
	h4.sec{
		text-align: left !important;
		font-weight: bold;
		font-size:20px;
		color:var(--red-color);
		margin-bottom:25px;
		border-bottom: 3px solid var(--red-color)
	}
	ul.ao.sec{
		margin-left:50px;
		margin-bottom:50px;
	}
	div.right ul.ao.sec,
	div.left ul.ao.sec{
		margin-left:0;
	}
	ul.ao.sec li{
		margin-bottom:1em;
		list-style: none;
	}
	div.secWrapper{
		display: flex;
		justify-content: space-between;
		margin-bottom:25px;
	}
	div.secWrapper > div{
		width:calc(50% - 25px);
	}
	div.leftright{
		display: flex;
		justify-content: space-between;
	}
	div.leftright > div{
		width:calc(50% - 25px);
	}
	table.sec{
		width:100%;
	}
	table.sec td,
	table.sec th{
		padding:10px;
		border:2px solid #ccc;
	}
	table.sec th{
		background:var(--red-color);
		color:#fff;
		font-weight: bold;
		margin:25px auto;
	}
	table.sec tr:nth-child(2n+1) td{
		background:#efefef;
	}
	table.sec tr.highlite{
		border:5px solid var(--red-color);
		position: relative;
	}
	table.sec tr.highlite::after{
		content:"↑Default※";
		color:var(--red-color);
		position: absolute;
		bottom:-35px;
		left:0;
		font-weight: bold;
	}
	pre.sec{
		background:#3f3f3f;
		color:#fff;
	}
	pre.sec span.orange{
		color:#ffc000
	}
	pre.sec span.red{
		color:#e30101
	}
	pre.sec span.blue{
		color:#00b0f0
	}
	pre.sec span.green{
		color:#92d050
	}
	pre.sec span.yellow{
		color:#ffff00
	}
	div.precomment{
		position: relative;
	}
	div.precomment p{
		position: absolute;
		background:#fff;
		padding:10px;
		width:200px;
		font-size:16px;
		line-height: 1.25em;
	}
	div.precomment p.cmt1{
		top:50px;
		right:15px;
	}
	div.precomment p.cmt2{
		top:250px;
		right:15px;
	}
	div.precomment p.cmt3{
		width:120px;
		bottom:20px;
		left:150px;
	}
	div.precomment p.cmt4{
		width:150px;
		top:5px;
		right:10px;
	}
	div.precomment p.cmt5{
		width:350px;
		bottom:92px;
		right:174px;
	}
	table.coreOs td{
		padding:15px;
		border-bottom:1px solid #ccc;
	}
	table.coreOs thead td{
		background:var(--red-color);
		text-align: center;
	}
	table.coreOs thead td:first-child{
		background:#fff;
	}
	table.coreOs thead td:last-child{
		border-left:1px solid #fff;
	}
	table.coreOs thead td img{
		height: 50px;
		width:auto;
	}
	table.coreOs thead td p{
		color:#FFF;
		font-weight: bold;
		border-radius: 50px;
		border:3px solid #fff;
		font-size:16px;
		line-height: 2em;
	}
	table.coreOs td.first{
		width:180px;
	}
	table.coreOs td.gray{
		font-size:20px;
		font-weight: bold;
		background:#999;
		color:#fff;
		text-align: center;
	}
	table.coreOs td.core{
		width:350px;
	}
	ul.benefits{
		margin-left:25px;
	}
	ul.benefits li{
		position: relative;
		padding-left:20px;
	}
	ul.benefits li::before{
		content: "";
		width:10px;
		height: 3px;
		background:var(--red-color);
		position: absolute;
		left:0;
		top:0.6em;
	}
	img.fr{
		float: right;
		width:300px;
		margin-left:25px;
	}
	div.layerWrapper{
		display: flex;
		justify-content: space-between;
	}
	div.layer{
		width:calc(33% - 10px);
		box-sizing: border-box;
		padding:15px;
		background:#EFEFEF;
	}
	div.layer h4{
		color:var(--red-color);
		font-weight: bold;
		border-bottom: 2px solid var(--red-color);
		margin-bottom:25px;
	}
	p.index{
		color:var(--red-color);
		font-weight: bold;
		border-bottom: 2px solid var(--red-color);
	}
	ol.sec{
		margin-left:25px;
	}
    div.guideWrapper{
        border:2px solid var(--red-color);
        border-radius: 12px;
        padding:25px;
        position: relative;
    }
    div.guideWrapper.clear{
        border:none;
    }
    div.guideWrapper h3{   
        width:450px;
        position: absolute;
        top:-25px;
        background:#fff;
        right:25px;
        font-size:16px;
        padding:0 15px;
        text-align: center;
        border:2px solid var(--red-color);
        border-radius: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 50px;
    }
    div.guideWrapper:first-child{
        margin-top:50px;
    }
    div.guideWrapper h4{
        color:var(--red-color);
        font-weight: bold;
    }
    div.guideWrapper p{
        margin-left:50px;
    }
    div.nistWrapper{
        display: flex;
        justify-content: space-between;
        gap:25px;
    }
    table.nist{
        width:100%;
        margin:25px auto 50px;
    }
    table.nist td{
        padding:15px;
        border:2px solid #ccc;
    }
    table.nist tr td:nth-child(1){
        font-size: 16px;
        width:60px;
    }
    table.nist tr td:nth-child(2){
        width:200px;
    }
	table.nist ul{
		margin-left:25px;
	}
	table.nist li{
		list-style:disc
	}
	p.nist span{
		display: block;
		padding-left:50px;
		margin-top:10px;
		position: relative;
	}
	p.nist span::before{
		content :"竊偵";
		position: absolute;
		top:0;
		left:15px;;
	}
	div.flowImg {
		width:100%;
		margin-bottom:25px;
	}
	div.flowImg img{
		width:100%;
		height: auto;
	}
	div.flowImg + p{
		font-size:20px;
		font-weight: bold;
		color:var(--blue-color);
	}
}
@media(max-width:767.99px){
	h4.sec{
		text-align: left !important;
		font-weight: bold;
		font-size:20px;
		color:var(--red-color);
		margin-bottom:25px;
		border-bottom: 3px solid var(--red-color)
	}
	ul.ao.sec{
		margin-left:10px;
		margin-bottom:25px;
	}
	div.right ul.ao.sec,
	div.left ul.ao.sec{
		margin-left:0;
	}
	ul.ao.sec li{
		margin-bottom:1em;
		list-style: none;
	}
	div.secWrapper{
		display: flex;
		justify-content: space-between;
		margin-bottom:25px;
		flex-direction: column;
	}
	div.secWrapper > div{
		width:calc(100% - 20px);
		margin:10px auto;
	}
	div.leftright{
		display: flex;
		justify-content: space-between;
		flex-direction: column-reverse;
	}
	div.leftright > div{
		width:calc(100% - 10px);
		margin:10px auto;
	}
	table.sec{
		width:100%;
	}
	table.sec td,
	table.sec th{
		padding:10px;
		border:2px solid #ccc;
	}
	table.sec th{
		background:var(--red-color);
		color:#fff;
		font-weight: bold;
		margin:25px auto;
	}
	table.sec tr:nth-child(2n+1) td{
		background:#efefef;
	}
	table.sec tr.highlite{
		border:5px solid var(--red-color);
		position: relative;
	}
	table.sec tr.highlite::after{
		content:"↑Default※";
		color:var(--red-color);
		position: absolute;
		bottom:-35px;
		left:0;
		font-weight: bold;
	}
	pre.sec{
		background:#3f3f3f;
		color:#fff;
	}
	pre.sec span.orange{
		color:#ffc000
	}
	pre.sec span.red{
		color:#e30101
	}
	pre.sec span.blue{
		color:#00b0f0
	}
	pre.sec span.green{
		color:#92d050
	}
	pre.sec span.yellow{
		color:#ffff00
	}
	div.precomment{
		position: relative;
	}
	div.precomment p{
		position: absolute;
		background:#fff;
		padding:10px;
		width:200px;
		font-size:16px;
		line-height: 1.25em;
	}
	div.precomment p.cmt1{
		top:72px;
		right:15px;
	}
	div.precomment p.cmt2{
		top:250px;
		right:15px;
	}
	div.precomment p.cmt3{
		width:120px;
		bottom:20px;
		left:150px;
	}
	div.precomment p.cmt4{
		width:150px;
		top:5px;
		right:10px;
	}
	div.precomment p.cmt5{
		width:215px;
		bottom:14px;
		left:20px;
	}
	table.coreOs{
		width:100%;
		height: 0;
		background:url("../images/developer_mobile_03.jpg") no-repeat;
		background-size:contain;
		display: block;
		padding-top:64%;
	}
	table.coreOs tr{
		display: none;
	}
	table.coreOs td{
		padding:15px;
		border-bottom:1px solid #ccc;
	}
	table.coreOs thead td{
		background:var(--red-color);
		text-align: center;
	}
	table.coreOs thead td:first-child{
		background:#fff;
	}
	table.coreOs thead td:last-child{
		border-left:1px solid #fff;
	}
	table.coreOs thead td img{
		height: 50px;
		width:auto;
	}
	table.coreOs thead td p{
		color:#FFF;
		font-weight: bold;
		border-radius: 50px;
		border:3px solid #fff;
		font-size:16px;
		line-height: 2em;
	}
	table.coreOs td.first{
		width:180px;
	}
	table.coreOs td.gray{
		font-size:20px;
		font-weight: bold;
		background:#999;
		color:#fff;
		text-align: center;
	}
	table.coreOs td.core{
		width:350px;
	}
	ul.benefits{
		margin-left:25px;
	}
	ul.benefits li{
		position: relative;
		padding-left:20px;
	}
	ul.benefits li::before{
		content: "";
		width:10px;
		height: 3px;
		background:var(--red-color);
		position: absolute;
		left:0;
		top:0.6em;
	}
	img.fr{
		float: right;
		width:300px;
		margin-left:25px;
	}
	div.layerWrapper{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:10px;
	}
	div.layer{
		width:calc(100% - 10px);
		box-sizing: border-box;
		padding:15px;
		background:#EFEFEF;
	}
	div.layer h4{
		color:var(--red-color);
		font-weight: bold;
		border-bottom: 2px solid var(--red-color);
		margin-bottom:25px;
	}
	p.index{
		color:var(--red-color);
		font-weight: bold;
		border-bottom: 2px solid var(--red-color);
	}
	ol.sec{
		margin-left:25px;
	}
    div.guideWrapper{
        border:2px solid var(--red-color);
        border-radius: 12px;
        padding:25px;
		padding-top:50px;
        position: relative;
    }
    div.guideWrapper.clear{
        border:none;
    }
    div.guideWrapper h3{   
        position: absolute;
        top:-25px;
        background:#fff;
        right:0;
		width:calc(100% - 40px);
		left:0;
		margin:auto;
        font-size:14px;
        padding:0 10px;
        text-align: center;
        border:2px solid var(--red-color);
        border-radius: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 50px;
    }
    div.guideWrapper:first-child{
        margin-top:50px;
    }
    div.guideWrapper h4{
        color:var(--red-color);
        font-weight: bold;
    }
    div.guideWrapper p{
        margin-left:50px;
    }
    div.nistWrapper{
        display: flex;
        justify-content: space-between;
		flex-direction: column;
        gap:25px;
    }
    table.nist{
        width:100%;
        margin:25px auto 50px;
    }
    table.nist td{
        padding:15px;
        border:2px solid #ccc;
    }
    table.nist tr td:nth-child(1){
        font-size: 16px;
        width:60px;
    }
    table.nist tr td:nth-child(2){
        width:200px;
    }
	table.nist ul{
		margin-left:25px;
	}
	table.nist li{
		list-style:disc
	}
	p.nist span{
		display: block;
		padding-left:50px;
		margin-top:10px;
		position: relative;
	}
	p.nist span::before{
		content :"竊偵";
		position: absolute;
		top:0;
		left:15px;;
	}
	div.flowImg {
		width:100%;
		/*margin-bottom:25px;*/
	}
	div.flowImg img{
		width:calc(100% - 20px);
		height: auto;
		margin:auto;
	}
	div.flowImg + p{
		font-size:20px;
		font-weight: bold;
		color:var(--blue-color);
	}
}
@media(min-width:768px){
	div.portalWrapper{
		width:100%;
		min-width:var(--min-width);
		margin: auto;
		padding: 50px 0;
		border-bottom: 1px solid #ccc;
	}
	div.portalWrapper:hover{
		background-color:#ccc;
	}
	div.portal{
		width:100%;
		max-width:var(--min-width);
		margin:auto;
		display: flex;
		justify-content: space-between;
	}
	div.portal > div{
		width:calc(50% - 25px);
		position: relative;
		color:#000;
	}
	div.portal > div span.new{
		content: "";
		width:53px;
		height: 21px;
		background:url("../images/icon_new_red.svg");
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: absolute;
		top:-20px;
		left:0;
	}
	div.portal > div img{
		display: block;
		margin:auto;
		border-radius: 12px;
	}
	div.portal h3{
		color:var(--red-color);
		font-size:32px;
		border-bottom:2px solid var(--red-color);
		margin-bottom:50px;
		background:url("../images/arrow_sitemap.svg") right center no-repeat;
	}
	div.portalWrapper:hover div.portal p{
		color:var(--red-color) !important;
	}
	a.toDetail{
		display: block;
		width:250px;
		height: 50px;
		margin:25px auto;
		background:var(--red-color);
		line-height: 50px;
		border-radius: 50px;
		text-align: center;
		color:#fff;
	}
	a.toDetail:hover{
		background:var(--blue-color);
	}
}
@media(max-width:767.99px){
	div.portalWrapper{
		width:calc(100% - 20px);
		margin: auto;
		padding: 25px 0;
		border-bottom: 1px solid #333;
	}
	div.portalWrapper:hover{
		background-color:#ccc;
	}
	div.portal{
		width:100%;
		max-width:var(--min-width);
		margin:auto;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		gap:10px;
	}
	div.portal.reverse{
		flex-direction: column-reverse
	}
	div.portal > div{
		width:calc(100%);
		position: relative;
	}
	div.portal > div img{
		display: block;
		margin:auto;
		border-radius: 12px;
		width:100%;
		height: 100px;
		object-fit: cover;
	}
	div.portal h3{
		color:var(--red-color);
		font-size:20px;
		border-bottom:2px solid var(--red-color);
		margin-bottom:10px;
		background:url("../images/arrow_sitemap.svg") right center no-repeat;
		background-size:20px;
	}
	div.portalWrapper:hover div.portal p{
		color:var(--red-color) !important;
	}
	a.toDetail{
		display: block;
		width:250px;
		height: 50px;
		margin:25px auto;
		background:var(--red-color);
		line-height: 50px;
		border-radius: 50px;
		text-align: center;
		color:#fff;
	}
	a.toDetail:hover{
		background:var(--blue-color);
	}
}

div.entryInfo2 {
    width:calc(100% - 20px);
    overflow: hidden;
    margin-bottom:30px;
    padding:10px;

}
div.entryInfo2Category{
    width:calc(100% - 120px);
    float: right;
}
div.entryInfo2Category a{
    display: inline-block;
    padding:5px 10px;
    margin-right: 5px;
    margin-bottom:5px;
    background:var(--blue-color);
    border-radius: 4px;
    color:#fff;
}
div.entryInfo2Category a:hover{
    background:var(--red-color);
}
time.entryInfo2Date{
    width:100px;
    height: 80px;
    border-radius: 10px;
    background:#efefef;
    float: left;
    margin-right: 10px;
    text-align: center;
    font-weight: bold;
}
time.entryInfo2Date p.year{
    line-height: 30px;
    height: 30px;
    background:#d80027;
    background:#666;
    color:#fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
	margin:0;
}
time.entryInfo2Date p.month{
    width:45px;
    float: left;
    line-height: 50px;
    font-size:22px;
    margin:0 0 0 5px !important;
}
time.entryInfo2Date p.date{
    width:45px;
    float: right;
    line-height: 50px;
    font-size:22px;
    margin:0 5px 0 0 !important;
}
time.entryInfo2Date span{
    font-size:12px;
    font-weight: normal;
	padding:0 2px;
}

/*OpenShift AI */
@media(min-width:768px){
	p.aiml{
		font-size:24px;
		text-align: left;
		color:var(--red-color)
	}
	ul.strategy{
		text-align: left;
	}
	div.aimlWrapper{
		display: flex;
		justify-content: space-between;
		gap:20px;
	}
	div.aiml{
		width:calc(33% - 20px);
		border:4px solid var(--red-color);
		padding:15px;
		border-radius: 12px;
	}
	div.aiml dt{
		text-align: center;
		color:var(--red-color);
		font-weight: bold;
		padding-top:100px;
		margin-bottom:25px;
		background-repeat: no-repeat;
		background-position: center top;
		background-size:80px;
		border-bottom:4px solid var(--red-color);
	}
	dt.aiml1{
		background-image:url("../images/openshift_ai_03.svg");
	}
	dt.aiml2{
		background-image:url("../images/openshift_ai_04.svg");
	}
	dt.aiml3{
		background-image:url("../images/openshift_ai_05.svg");
	}
	div.aiml dd span{
		display: block;
		margin-top:25px;
		font-size:16px;
		padding-left:25px;
		position: relative;
		color:var(--blue-color);
	}
	div.aiml dd span::before{
		content: "例：";
		position: absolute;
		left:0;
		top:0;
	}
	img.rhai{
		width:80%;
		margin-bottom: 50px;
	}
	p.hibrid{
		color:var(--red-color);
		font-weight: bold;
		padding-bottom:100px;
		background:url("../images/openshift_ai_09.svg") center bottom no-repeat;
		background-size:100%;
	}
	div.aimleng{
		display: flex;
		justify-content: space-between;
		gap:25px;
	}
	div.aimleng dl{
		width:calc(33% - 25px);
		position: relative;
		background:#efefef;
	}
	div.aimleng dl::after{
		content: "";
		background:url("../images/arrow_sitemap.svg");
		background-size:20px;
		width:20px;
		height:15px;
		position: absolute;
		top:0;
		bottom:0;
		right:-32px;
		margin:auto;
	}
	div.aimleng dl:last-child::after{
		display: none;
	}
	div.aimleng dt{
		width:100%;
		height: 2.5em;
		background:var(--red-color);
		line-height: 2.5em;
		text-align: center;
		color:#fff;
		font-weight: bold;
	}
	div.aimleng dd{
		padding:25px;
		height: calc(300px);
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: center;
		background:#efefef;
	}
	div.aimleng dd img{
		display: block;
		margin:auto;
	}
	h4.able{
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
		margin-bottom:25px;
	}
	dl.rhai{
		background:#efefef;
		margin-bottom:25px;
		padding:25px;
	}
	dl.rhai dt{
		color:var(--red-color);
		font-weight: bold;
		border-bottom:3px solid var(--red-color);
		margin-bottom:25px;
	}
	dl.rhai dd{
		text-align: left;
	}
	dl.model{
		text-align: left;
	}
	dl.model dt{
		font-weight: bold;
		margin:10px 0 5px;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
	}
	dl.model dd{
		margin-left:2em;
		font-size:16px;
	}
	div.modelWrapper{
		padding-top:120px;
		background:url("../images/openshift_ai_13.svg") center top no-repeat;
	}
	table.model{
		font-size:15px;
		width:100%;
	}
	table.model td{
		width:calc(100% / 7);
		box-sizing: border-box;
		padding:10px;
		border-bottom:1px solid #ccc;
		position: relative;
	}
	table.model td.check::after{
		content: "";
		width:100%;
		height: 4px;
		background:var(--red-color);
		position: absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		margin:auto;
	}
	table.model tr:first-child td{
		font-weight: bold;
		color:var(--red-color);
		text-align: center;
	}
	table.model tr td:nth-child(2n){
		background:#efefef;
	}
	p.openshiftai{
		width:100%;
		box-sizing: border-box;
		padding:100px;
		background:url("../images/openshift_ai_800383686.jpg") center center no-repeat;
		color:#fff;
		font-size:32px;
		font-weight: bold;
		text-align: justify;
		line-height: 2.5em;
	}
	p.about_openshiftai{
		font-size:20px;
		color:var(--red-color);
		font-weight: bold;
		margin:50px auto;
	}
	dl.openshiftaiFeature{
		margin:50px ;
	}
	dl.openshiftaiFeature dt{
		font-size:20px;
		font-weight: bold;
		color:var(--red-color);
		box-sizing: border-box;
		padding:15px;
		border-top-left-radius: 8px;
		border-top-right-radius: 8px;
		background:#dedede;
		padding-left:60px;
		position: relative;
	}
    dl.openshiftaiFeature.virt dt{
		border-bottom-left-radius: 8px;
		border-bottom-right-radius: 8px;
        margin-bottom:10px;
    }
	dl.openshiftaiFeature dt::before{
		content: "";
		width:18px;
		height: 18px;
		border-radius: 18px;
		background:var(--red-color);
		position: absolute;
		left:30px;
		top:20px;
	}
	dl.openshiftaiFeature dd{
		box-sizing: border-box;
		padding:15px;
		border-bottom-left-radius: 8px;
		border-bottom-right-radius: 8px;
		background:#efefef;
		margin-bottom:25px;
		padding-left:100px;
	}
	a.toOpenshitai{
		display: block;
		width:380px;
		height: 60px;
		line-height: 60px;
		text-align: center;
		margin:50px auto;
		font-size:22px;
		border:4px solid var(--red-color);
		border-radius: 12px;
	}
	a.toOpenshitai:hover{
		background:var(--red-color);
		color:#fff;
	}
	ul.openshiftTop,
	ol.openshiftTop{
		margin:25px 75px;
		box-sizing: border-box;
		background:#fff;
	}
	ul.openshiftTop{
		border:5px solid var(--red-color);
		border-radius: 8px;
		padding:15px;
		margin-top:-100px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35)
	}
	ul.openshiftTop.margin0{
		margin-top:0;
		box-shadow: 0 0 0 ;
	}
	ol.openshiftTop{
		background:#efefef;
		padding:15px;
		border-radius: 8px;
		color:var(--red-color);
	}
	ul.openshiftTop li:last-child,
	ol.openshiftTop li:last-child{
		margin-bottom:0;
	}
	ul.openshiftTop li{
		position: relative;
		padding-left:25px !important;
	}
	ol.openshiftTop li{
		margin-left:25px;
	}
	ol.openshiftTop li:last-child{
		margin-top:25px;
	}
	ul.openshiftTop li::before{
		content: "";
		width:18px;
		height: 18px;
		border-radius: 18px;
		background:var(--red-color);
		position: absolute;
		left:0;
		top:0.15em;
	}
	p.openshiftTop{
		text-align: left;
	}
	p.openshiftTop a{
		color:var(--red-color);
	}
	p.openshiftTop a:hover{
		color:var(--blue-color);
	}
	div.maker{
		display: flex;
		justify-content: flex-start;
		gap:15px;
		flex-wrap: wrap;
		background:#f5f5f5;
		padding:10px;
		margin:5px 0 0;
		border-left:3px solid var(--blue-color);
	}
	dl.product{
		
	}
	dl.product dt{
		border:none;
		margin:0 !important;
	}
	dl.product dd{
		margin-left:0 !important;
		margin-top:5px;
	}
	dl.product dd img{
		height: 23px;
	}
	p.maker{
		padding:10px;
		margin:0 !important;
		background:#f5f5f5;
		font-size:14px;
		border-left:3px solid var(--blue-color);
	}
	a.ansible{
		display: block;
		background-image:url("../images/toAnsible.svg");
		background-repeat: no-repeat;
		background-size:334px;
		width:334px;
		height: 64px;
		background-position: center top;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	a.ansible:hover{
		background-position: center bottom;
	}
}
@media(max-width:767.99px){
	p.aiml{
		font-size:24px;
		text-align: left;
		color:var(--red-color)
	}
	ul.strategy{
		text-align: left;
	}
	div.aimlWrapper{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:20px;
	}
	div.aiml{
		width:calc(100% - 20px);
		border:4px solid var(--red-color);
		padding:15px;
		border-radius: 12px;
	}
	div.aiml dt{
		text-align: center;
		color:var(--red-color);
		font-weight: bold;
		padding-top:70px;
		margin-bottom:25px;
		background-repeat: no-repeat;
		background-position: center top;
		background-size:50px;
		border-bottom:4px solid var(--red-color);
	}
	dt.aiml1{
		background-image:url("../images/openshift_ai_03.svg");
	}
	dt.aiml2{
		background-image:url("../images/openshift_ai_04.svg");
	}
	dt.aiml3{
		background-image:url("../images/openshift_ai_05.svg");
	}
	div.aiml dd span{
		display: block;
		margin-top:25px;
		font-size:16px;
		padding-left:25px;
		position: relative;
		color:var(--blue-color);
	}
	div.aiml dd span::before{
		content: "例：";
		position: absolute;
		left:0;
		top:0;
	}
	img.rhai{
		width:80%;
		margin-bottom: 25px;
		display: block;
		margin:25px auto 25px;
	}
	p.hibrid{
		color:var(--red-color);
		font-weight: bold;
		padding-bottom:100px;
		background:url("../images/openshift_ai_09.svg") center bottom no-repeat;
		background-size:100%;
	}
	div.aimleng{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:25px;
	}
	div.aimleng dl{
		width:calc(100% - 25px);
		position: relative;
		background:#efefef;
	}
	div.aimleng dl::after{
		content: "";
		/*background:url("../images/arrow_sitemap.svg");*/
		background-size:20px;
		width:20px;
		height:15px;
		position: absolute;
		bottom:0;
		right:0;
		left:0;
		margin:auto;
	}
	div.aimleng dl:last-child::after{
		display: none;
	}
	div.aimleng dt{
		width:100%;
		height: 2.5em;
		background:var(--red-color);
		line-height: 2.5em;
		text-align: center;
		color:#fff;
		font-weight: bold;
	}
	div.aimleng dd{
		padding:25px;
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: center;
		background:#efefef;
	}
	div.aimleng dd img{
		display: block;
		margin:auto;
	}
	h4.able{
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
		margin-bottom:25px;
	}
	dl.rhai{
		background:#efefef;
		margin-bottom:25px;
		padding:25px;
	}
	dl.rhai dt{
		color:var(--red-color);
		font-weight: bold;
		border-bottom:3px solid var(--red-color);
		margin-bottom:25px;
	}
	dl.rhai dd{
		text-align: left;
	}
	dl.model{
		text-align: left;
	}
	dl.model dt{
		font-weight: bold;
		margin:10px 0 5px;
		color:var(--red-color);
		border-bottom:2px solid var(--red-color);
	}
	div.modelWrapper{
		padding-top:0;
		background:none;
	}
	table.model{
		font-size:15px;
		width:100%;
	}
	table.model td{
		width:calc(100% / 7);
		box-sizing: border-box;
		padding:10px;
		border-bottom:1px solid #ccc;
		position: relative;
	}
	table.model td.check::after{
		content: "";
		width:100%;
		height: 4px;
		background:var(--red-color);
		position: absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		margin:auto;
	}
	table.model tr:first-child td{
		font-weight: bold;
		color:var(--red-color);
		text-align: center;
	}
	table.model tr td:nth-child(2n){
		background:#efefef;
	}
	p.openshiftai{
		width:100%;
		box-sizing: border-box;
		padding:20px;
		background:url("../images/openshift_ai_800383686.jpg") center center no-repeat;
		color:#fff;
		font-size:20px;
		font-weight: bold;
		text-align: justify;
		line-height: 2em;
	}
	p.about_openshiftai{
		font-size:20px;
		color:var(--red-color);
		font-weight: bold;
		margin:50px auto 10px;
	}
	dl.openshiftaiFeature{
		margin:50px auto 0;
	}
	dl.openshiftaiFeature dt{
		font-size:18px;
		font-weight: bold;
		color:var(--red-color);
		box-sizing: border-box;
		padding:10px;
		border-top-left-radius: 8px;
		border-top-right-radius: 8px;
		background:#dedede;
		padding-left:50px;
		position: relative;
	}
    dl.openshiftaiFeature.virt dt{
		border-bottom-left-radius: 8px;
		border-bottom-right-radius: 8px;
        margin-bottom:10px;
        text-align: left;
    }
	dl.openshiftaiFeature dt::before{
		content: "";
		width:18px;
		height: 18px;
		border-radius: 18px;
		background:var(--red-color);
		position: absolute;
		left:20px;
		top:15px;
	}
	dl.openshiftaiFeature dd{
		box-sizing: border-box;
		padding:15px;
		border-bottom-left-radius: 8px;
		border-bottom-right-radius: 8px;
		background:#efefef;
		margin-bottom:25px;
		padding-left:30px;
	}
	a.toOpenshitai{
		display: block;
		width:calc(100% - 20px);
		height: 60px;
		line-height: 60px;
		text-align: center;
		margin:auto auto 25px;
		font-size:22px;
		border:4px solid var(--red-color);
		border-radius: 12px;
        font-size: min(18px, 5vw);
	}
	a.toOpenshitai:hover{
		background:var(--red-color);
		color:#fff;
	}
	ul.openshiftTop,
	ol.openshiftTop{
		box-sizing: border-box;
		background:#fff;
	}
	ul.openshiftTop{
		border:5px solid var(--red-color);
		border-radius: 8px;
		padding:15px;
		box-shadow: 3px 3px 9px rgba(0,0,0,0.35)
	}

	ul.openshiftTop.margin0{
		margin-top:0;
		box-shadow: 0 0 0 ;
	}
	ol.openshiftTop{
		background:#efefef;
		padding:15px;
		border-radius: 8px;
		color:var(--red-color);
	}
	ul.openshiftTop li:last-child,
	ol.openshiftTop li:last-child{
		margin-bottom:0;
	}
	ul.openshiftTop li{
		position: relative;
		padding-left:25px !important;
	}
	ol.openshiftTop li{
		margin-left:25px;
	}
	ol.openshiftTop li:last-child{
		margin-top:25px;
	}
	ul.openshiftTop li::before{
		content: "";
		width:15px;
		height: 15px;
		border-radius: 18px;
		background:var(--red-color);
		position: absolute;
		left:0;
		top:0.25em;
	}
	p.openshiftTop{
		text-align: left;
	}
	p.openshiftTop a{
		color:var(--red-color);
	}
	p.openshiftTop a:hover{
		color:var(--blue-color);
	}
	div.maker{
		display: flex;
		justify-content: flex-start;
		gap:15px;
		flex-wrap: wrap;
		background:#f5f5f5;
		padding:10px;
		margin:5px 0 0;
		border-left:3px solid var(--blue-color);
	}
	dl.product{
		
	}
	dl.product dt{
		border:none;
		margin:0 !important;
	}
	dl.product dd{
		margin-left:0 !important;
		margin-top:5px;
	}
	dl.product dd img{
		height: 23px;
	}
	p.maker{
		padding:10px;
		margin:0 !important;
		background:#f5f5f5;
		font-size:14px;
		border-left:3px solid var(--blue-color);
	}
	a.ansible{
		display: block;
		background-image:url("../images/toAnsible.svg");
		background-repeat: no-repeat;
		background-size:167px;
		width:167px;
		height: 32px;
		background-position: center top;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	a.ansible:hover{
		background-position: center bottom;
	}
}
/*OpenShift Virtualization */
@media(min-width:768px){
    ul.osv li{
        list-style: disc;
        padding-left:10px;
        margin-left:15px;
    }
	p.osvMerit,
	h4.osv{
		font-weight: bold;
		background:var(--red-color);
		color:#fff;
		line-height: 2em;
		text-align: center;
	}
	h4.osv{
		margin-bottom:25px;
	}
	table.osv{
		width:100%;
		
	}
	table.osv td{
		border-bottom:1px solid #ccc;
		padding:10px;
		font-size:14px;
		vertical-align: middle;;
	}
	table.osv tr td:first-child{
		font-size:16px;
		font-weight: bold;
	}
	table.osv span{
		display: block;
		width:100px;
		height: 40px;
		line-height: 40px;
		padding-top:16px;
		padding-left:16px;
		background-size:116px;
		background-position: right bottom;
		background-repeat: no-repeat;
		text-align: center;
		font-weight: bold;
		color:#fff;
	}
	table.osv span.green{
		background-image:url("../images/card_green.svg") 
	}
	table.osv span.gray{
		background-image:url("../images/card_gray.svg") 
	}
	table.osv div.osv_imgWrapper{
		display: flex;
		justify-content: space-around;
	}
	table.osv div.osv_imgWrapper img{
		height: 50px;
		width:auto;
	}
	.osv_left{
		text-align: left !important;
		margin-left:30px;
	}
	.osv_left strong{
		font-size:22px;
		font-weight: bold;
		color:var(--red-color);
	}
	.osv_left ul{
		border:2px solid var(--red-color);
		padding:20px 20px 0;
		border-radius: 6px;
	}
	h4.osv2{
		text-align: left !important;
		font-size:20px;
		font-weight: bold;
		color:var(--red-color);
		margin-bottom:25px;
	}
	div.osv2Wrapper{
		padding-left:120px;
		background-repeat: no-repeat;
		background-size:80px;
		background-position: left center;
		margin-bottom:15px;
	}
	div.osv2Wrapper:nth-child(1){
		background-image:url("../images/osv11.svg");
	}
	div.osv2Wrapper:nth-child(2){
		background-image:url("../images/osv12.svg");
	}
	div.osv2Wrapper:nth-child(3){
		background-image:url("../images/osv13.svg");
	}
	div.osv2Wrapper ul{
		margin-left:50px;
	}
	dl.osv{
		
	}
	dl.osv dt{
		font-weight: bold;
		margin-bottom:25px;
		color:var(--red-color);
	}
	dl.osv ul{
		margin-bottom:30px;
	}
	dl.osv ul li{
		list-style: disc;
		margin-left:35px;
	}
	ul.osv2{
		
	}
	ul.osv2 li > ul{
		margin-left:50px;
		margin-top:15px;
	}
	ul.osv2 li > ul ul{
		margin-top:15px;
	}
	ul.osv2 li > ul ul li{
		list-style: circle;
	}
	ul.osv2 li > ul ul li::before{
		display: none;
	}
	div.feature ul.osv_user{
		padding-left:200px;
		margin-bottom:50px;
		background-position: left top;
		background-repeat: no-repeat;
		background-size:150px;
		min-height:80px;
	}
	div.feature ul.osv_user.l1{
		background-image:url("../images/osv_logo7.svg");
	}
	div.feature ul.osv_user.l2{
		background-image:url("../images/osv_logo8.svg");
	}
	div.feature ul.osv_user.l3{
		background-image:url("../images/osv_log9.webp");
		background-size:80px;
		background-position: left 30px top;
	}
	div.feature ul.osv_user.l4{
		background-image:url("../images/osv_logo10.webp");
		background-size:80px;
		background-position: left 30px top;	
	}
	div.feature ul.osv_user.l5{
		background-image:url("../images/osv_logo11.svg");
		background-size:80px;
		background-position: left 30px top;
	}
	div.feature ul.osv_user.l6{
		background-image:url("../images/osv_logo12.svg");
		background-size:80px;
		background-position: left 30px top;
	}
	h5.osv_user{
		font-weight: bold;
		margin-bottom:15px;
		margin-left:200px;
	}
	div.osv3wrapper {
		display: flex;
		justify-content: space-between;
		gap:15px;
	}
	div.osv3wrapper div{
		width:calc(33% - 7.5px);
		box-sizing: border-box;
		padding:15px;
		border:3px solid var(--red-color);
		padding-bottom: 200px;
		position: relative;
		border-radius: 8px;
	}
	div.osv3wrapper div h4{
		line-height: 2em;
		background:var(--red-color);
		text-align: center;
		font-weight: bold;
		color:#fff;
		margin-bottom:25px;
	}
	div.osv3wrapper div img{
		height:200px;
		width:auto;
		display: block;
		margin:auto;
		position: absolute;
		bottom:15px;
		right:0;
		left:0;
	}
    table.vsphere{
        width:100%;
        box-sizing: border-box;
    }
    table.vsphere td{
        padding:5px 10px;
        font-size: 14px;
        border:1px solid #ccc;
    }
    table.vsphere tr:nth-child(2n) td{
        background:#efefef;
    }
    table.vsphere thead td,
    table.vsphere tr td:first-child{
        font-weight: bold;
    }
     table.vsphere tr td:first-child{
         width:150px;
     }
     table.vsphere thead tr td:nth-child(1),
     table.vsphere thead tr td:nth-child(2){
         background:#333;
         color:#fff;
         text-align: center;
     }
     table.vsphere thead tr td:nth-child(3){
         background:var(--red-color);
         color:#fff;
         text-align: center;
     }
     table.vsphere thead tr td:nth-child(4){
         background:var(--blue-color);
         color:#fff;
         text-align: center;
     }
}
@media(max-width:767.99px){
    ul.osv li{
        list-style: disc;
        padding-left:10px;
        margin-left:15px;
    }
	p.osvMerit,
	h4.osv{
		font-weight: bold;
		background:var(--red-color);
		color:#fff;
		line-height: 2em;
		text-align: center;
	}
	h4.osv{
		margin-bottom:25px;
	}
    .js-scrollable{
        display: block;
    }
    .js-scrollable table.osv{
        width:800px;
    }
    .js-scrollable table.vsphere{
        width:800px;
    }
	table.osv{
		width:100%;
		
	}
	table.osv td{
		border-bottom:1px solid #ccc;
		padding:10px;
		font-size:14px;
		vertical-align: middle;;
	}
	table.osv tr td:first-child{
		font-size:16px;
		font-weight: bold;
	}
	table.osv span{
		display: block;
		width:100px;
		height: 40px;
		line-height: 40px;
		padding-top:16px;
		padding-left:16px;
		background-size:116px;
		background-position: right bottom;
		background-repeat: no-repeat;
		text-align: center;
		font-weight: bold;
		color:#fff;
	}
	table.osv span.green{
		background-image:url("../images/card_green.svg") 
	}
	table.osv span.gray{
		background-image:url("../images/card_gray.svg") 
	}
	table.osv div.osv_imgWrapper{
		display: flex;
		justify-content: space-around;
	}
	table.osv div.osv_imgWrapper img{
		height: 50px;
		width:auto;
	}
	.osv_left{
		text-align: left !important;
		margin-left:30px;
	}
	.osv_left strong{
		font-size:22px;
		font-weight: bold;
		color:var(--red-color);
	}
	.osv_left ul{
		border:2px solid var(--red-color);
		padding:20px 20px 0;
		border-radius: 6px;
	}
	h4.osv2{
		text-align: left !important;
		font-size:20px;
		font-weight: bold;
		color:var(--red-color);
		margin-bottom:25px;
	}
	div.osv2Wrapper{
        padding-top: 90px;
        background-repeat: no-repeat;
        background-size: 80px;
        background-position: center top;
        margin-bottom: 30px;
        margin-top: 15px;
	}
	div.osv2Wrapper:nth-child(1){
		background-image:url("../images/osv11.svg");
	}
	div.osv2Wrapper:nth-child(2){
		background-image:url("../images/osv12.svg");
	}
	div.osv2Wrapper:nth-child(3){
		background-image:url("../images/osv13.svg");
	}
	div.osv2Wrapper ul{
		margin-left:10px;
	}
	dl.osv{
		
	}
	dl.osv dt{
		font-weight: bold;
		margin-bottom:25px;
		color:var(--red-color);
	}
	dl.osv ul{
		margin-bottom:30px;
	}
	dl.osv ul li{
		list-style: disc;
		/*margin-left:35px;*/
	}
	ul.osv2{
		
	}
	ul.osv2 li > ul{
		margin-left:50px;
		margin-top:15px;
	}
	ul.osv2 li > ul ul{
		margin-top:15px;
	}
	ul.osv2 li > ul ul li{
		list-style: circle;
	}
	ul.osv2 li > ul ul li::before{
		display: none;
	}
	div.feature ul.osv_user{
		padding-top:95px;
		margin-bottom:50px;
		background-position: center top;
		background-repeat: no-repeat;
		background-size:150px;
	}
	div.feature ul.osv_user.l1{
		background-image:url("../images/osv_logo7.svg");
	}
	div.feature ul.osv_user.l2{
		background-image:url("../images/osv_logo8.svg");
	}
	div.feature ul.osv_user.l3{
		background-image:url("../images/osv_log9.webp");
		background-size:80px;
		background-position: left 30px top;
	}
	div.feature ul.osv_user.l4{
		background-image:url("../images/osv_logo10.webp");
		background-size:80px;
		background-position: left 30px top;	
	}
	div.feature ul.osv_user.l5{
		background-image:url("../images/osv_logo11.svg");
		background-size:80px;
		background-position: left 30px top;
	}
	div.feature ul.osv_user.l6{
		background-image:url("../images/osv_logo12.svg");
		background-size:80px;
		background-position: left 30px top;
	}
	h5.osv_user{
		font-weight: bold;
		margin-bottom:15px;
		/*margin-left:200px;*/
	}
	div.osv3wrapper {
		display: flex;
		justify-content: space-between;
		gap:15px;
        flex-direction: column;
	}
	div.osv3wrapper div{
		width:calc(100%);
		box-sizing: border-box;
		padding:15px;
		border:3px solid var(--red-color);
		padding-bottom: 200px;
		position: relative;
		border-radius: 8px;
	}
	div.osv3wrapper div h4{
		line-height: 2em;
		background:var(--red-color);
		text-align: center;
		font-weight: bold;
		color:#fff;
		margin-bottom:25px;
	}
	div.osv3wrapper div img{
		height:200px;
		width:auto;
		display: block;
		margin:auto;
		position: absolute;
		bottom:15px;
		right:0;
		left:0;
	}
    table.vsphere{
        width:100%;
        box-sizing: border-box;
    }
    table.vsphere td{
        padding:5px 10px;
        font-size: 14px;
        border:1px solid #ccc;
    }
    table.vsphere tr:nth-child(2n) td{
        background:#efefef;
    }
    table.vsphere thead td,
    table.vsphere tr td:first-child{
        font-weight: bold;
    }
     table.vsphere tr td:first-child{
         width:150px;
     }
     table.vsphere thead tr td:nth-child(1),
     table.vsphere thead tr td:nth-child(2){
         background:#333;
         color:#fff;
         text-align: center;
     }
     table.vsphere thead tr td:nth-child(3){
         background:var(--red-color);
         color:#fff;
         text-align: center;
     }
     table.vsphere thead tr td:nth-child(4){
         background:var(--blue-color);
         color:#fff;
         text-align: center;
     }
    ul.osv li{
        list-style: disc;
        padding-left:10px;
        margin-left:15px;
    }
	p.osvMerit{
		font-weight: bold;
		background:var(--red-color);
		color:#fff;
		line-height: 2em;
		padding-left:10px !important;
	}
}

ul.osvFeature{
    
}
ul.osvFeature li{
    position: relative;
	list-style: none !important;
	text-align: left;
}
ul.osvFeature > li{
    font-size:18px !important;
    padding-left:22px !important;
}
ul.osvFeature > li li{
    font-size:16px !important;
    margin-bottom:1em;
}
ul.osvFeature > li::before{
    content: "";
    width:14px !important;
    height: 14px !important;
    border-radius: 16px;
    background:var(--red-color);
    position: absolute;
    left:0 !important;
    top:5px !important;
}
ul.osvFeature > li  ul{
    margin-top:.5em;
}
ul.osvFeature > li > ul li{
    font-size:16px !important;
    padding-left:16px !important;
}
ul.osvFeature > li > ul > li::before{
    content: "" !important;
    background-image:none !important;
    width:14px;
    height: 14px;
    border-radius: 14px;
    border:2px solid var(--red-color);
    top:5px !important;
}
ul.osvCheck{
	width:100%;
}
ul.osvCheck > li{
	background:url("../images/icon_servicecheck2.svg") left top no-repeat;
	padding-left:40px !important;
	font-weight: bold;
	line-height: 2em;
}
ul.osvCheck > li ul{
	padding-left:10px;
	background:url("../images/icon_asterisk.svg") left top 9px no-repeat;
	font-weight: normal;
	background-size:15px;
}
ol.osv{
	box-sizing: border-box;
}
ol.osv > li{
	background:#efefef;
	padding:10px 10px 10px 10px;
	list-style: none;
	font-weight: bold;
	margin-bottom:20px;
}
ol.osv > li ul{
	background:#fff;
	margin-top:10px;
	padding:10px 20px 5px;
	font-weight: normal !important;
}
ol.osv > li ul li{
	font-weight: normal;
	font-size:14px;
}
a.osv_link::after{
	content: "";
	background:url("../images/icon_link_1.svg") center center no-repeat;
	width:16px;
	height: 16px;
	background-size:16px;
	padding-left:10px;
	display: inline-block;
}
a.toOsvirt{
	width:480px;
	height: 90px;
	display: block;
	text-align: center;
	line-height: 90px;
	font-size:26px;
	font-weight: bold;
	margin:auto;
	background:url("../images/toOsvirt.jpg") center no-repeat;
	background-size:cover;
	color:#fff;
	position: relative;
	border-radius: 12px;
}
a.toOsvirt:hover{
	opacity: 0.75;
}
a.toOsvirt::after{
	content: "";
	width:480px;
	height: 90px;
	background:rgba(0,0,0,0.5);
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	z-index: -1;
	border-radius: 12px;
}
@media(max-width:767.99px){
	a.toOsvirt{
		width:calc(100% - 20px);
		height: 60px;
		display: block;
		text-align: center;
		line-height: 60px;
		font-size:20px;
		font-weight: bold;
		margin:auto;
		background:url("../images/toOsvirt.jpg") center no-repeat;
		background-size:cover;
		color:#fff;
		position: relative;
		border-radius: 12px;
	}
	a.toOsvirt:hover{
		opacity: 0.75;
	}
	a.toOsvirt::after{
		content: "";
		width:480px;
		height: 90px;
		background:rgba(0,0,0,0.5);
		position: absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
		z-index: -1;
		border-radius: 12px;
	}
}
.bracket-list {
	list-style: none;
	counter-reset: item;
	/*padding-left: 1.5em;*/
}

.bracket-list li::before {
	counter-increment: item;
	content: "(" counter(item) ") ";
}
div.contactPerson{
	width:100%;
	overflow: hidden;
	display: flex;
	justify-content: flex-start;
	gap:20px;
}
@media(max-width:767.99px){
	div.contactPerson{
		flex-direction: column;
	}
}
div.contactPerson img{
	width:150px;
	display: block;
	margin:auto;
}
div.contactPerson dl{
	flex: 1;
	overflow: hidden;
	margin-bottom:50px;
}
div.contactPerson dt{
	width:80px;
	float: left;
	clear: both;
}
div.contactPerson dd{
	width:calc(100% - 100px);
	float: right;
}
dl.isc{
	margin-bottom:2em;
}
dl.isc dl.isc{
	margin-left:100px;
}
@media(max-width:767.99px){
	dl.isc dl.isc{
		margin-left:30px;
	}
}
dl.isc dt{
	font-weight: bold;
	position: relative;
	padding-left:24px;
	margin-bottom:1em;
}
dl.isc dt::before{
	content:"";
	width:16px;
	height: 16px;
	background:#000;
	position: absolute;
	left:0;
	top:0.5em;
}
dl.isc dl.isc dt::before{
    border-radius: 16px;
	width:14px;
	height: 14px;
}
dl.isc span.square{
    display: block;
    position: relative;
    margin-left: -24px;
    padding-left:24px;
}
dl.isc span.square::before{
	content:"";
	width:16px;
	height: 16px;
	background:#000;
	position: absolute;
	left:0;
	top:0.5em;
}
dl.inli{
	overflow: hidden;
	border:1px solid #ccc;
	padding:15px;
	border-radius: 12px;
	margin:1em auto 1.5em;
}
dl.inli dt::before{
	display: none;
}
dl.inli dt{
	width:20% !important;
	float: left;
	clear: both;
	font-weight: normal;
	padding-left:0;
}
dl.inli dd{
	width:80% !important;
	float: right;
}
table.isc{
	width:100%;
	margin-bottom:25px;
}
table.isc thead{
    background-color:lightblue;
}
table.isc td{
	padding:10px;
	border:1px solid #ccc;
}
pre.blk span.afternum::after{
	color:lightgreen
}
pre.blk span.afternum.num1::after{
	content:"・・・ ①"
}
pre.blk span.afternum.num2::after{
	content:"・・・ ②"
}
pre.blk span.afternum.num3::after{
	content:"・・・ ③"
}
pre.blk span.afternum.num4::after{
	content:"・・・ ④"
}
pre.blk span.afternum.num5::after{
	content:"・・・ ⑤"
}
pre.blk span.afternum.num6::after{
	content:"・・・ ⑥"
}
pre.blk span.afternum.num7::after{
	content:"・・・ ⑦"
}
pre.blk span.afternum.num8::after{
	content:"・・・ ⑧"
}
pre.blk span.afternum.num9::after{
	content:"・・・ ⑨"
}

.maru-number-list {
  list-style: none;
  counter-reset: maru;
  padding-left: 2em;
}

.maru-number-list li::before {
  counter-increment: maru;
  content: attr(data-maru);
  font-weight: bold;
  margin-left: -2em;
  display: inline-block;
  width: 2em;
}
div.isc{
	padding:15px;
	background:lightblue;
	border-radius: 8px;
	margin:25px;
}
div.isc p{
	font-weight: bold;
	border-bottom:1px solid #000;
}
div.scskblog h2,
div.scskblog h3,
div.scskblog h4,
div.scskblog h5,
div.scskblog h6{
	margin:2em auto 1em;
}
div.scskblog h5::before{
	content:"< "
}
div.scskblog h5::after{
	content:" >"
}




div.iscimageflex {
	display: flex;
	justify-content: space-between;
	gap:25px;
	align-items: flex-start;
	margin-bottom:15px;
}
@media(max-width:767.99px){
	div.iscimageflex {
		flex-direction: column;
	}
}
div.preblkWrapper{
	position: relative;
	z-index: 1
}
div.preblkWrapper::before{
    content: "";
    width: 10px;
    height: 55em;
    border: 1px solid lightgreen;
    border-left: none;
    position: absolute;
    right: 50%;
    top: 16em;
}
div.preblkWrapper::after{
    content: "1ノード分の設定。ノード数分記載する。";
    position: absolute;
	z-index: 2;
    right: 10%;
    top: 40em;
	color:lightgreen;
}
@media(max-width:767.99px){
	div.preblkWrapper::before{
		content: "";
		width: 10px;
		height: 36em;
		border: 1px solid lightgreen;
		border-left: none;
		position: absolute;
		right: 29%;
		top: 11em;
	}
	div.preblkWrapper::after{
		content: "１ノード分の設定。ノード数分記載する。";
		position: absolute;
		z-index: 2;
		right: 14%;
		top: 20em;
		color: lightgreen;
		writing-mode: vertical-rl;
	}
}
pre.blk span.limegreen{
    color: #049ea2;
}
pre.blk span.green{
    color: #43fc4e;
}
ul.blogattention {
    padding-left: 1.2em;
    padding: 25px;
    border: 1px solid var(--red-color);
    border-radius: 12px;
    margin: 25px !important;
}
ul.blogattention li{
  list-style: none !important; /* デフォルトのリストマークを無効化 */
  padding-left:1em;
  text-indent: -1em;
}
ul.blogattention li::before {
  content: "※"; /* アスタリスクに変更 */
  margin-right: 0.5em;
  font-weight: bold;
}
p.finish{
    margin:25px;
    font-size:20px;
    color:var(--blue-color);
}
