html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body{
	font-family: 'Noto Sans JP', sans-serif !important;
	margin: 0!important;
}

.post,
.page {
	margin: 0!important;
}

.container{
	width: 1180px;
	max-width: 1180px;
	margin: auto;
}
.banner-sec{
	min-height: 775px;
	background: url('../images/Mask Group 1.png');
	background-position: center;
	background-size: cover;
	position: relative;
}
.banner-sec:before{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background-color: rgba(48, 51, 53, .46);
	z-index: 0;
}
.header-logo{
	position: relative;
	z-index: 1;
	text-align: center;
	padding: 20px 0px;
}
.banner-bottom-content{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 73px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.banner-bottom-content h3{
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 43px;
    color: rgba(255,255,255,1);
    position: relative;
    z-index: 1;
}
.banner-bottom-content .banner-cta{
	padding-top: 50px;
}
.banner-bottom-content .banner-cta a{
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 23px;
    color: #303335;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
    padding: 15px 30px;
    background-color: #CBA153;
    text-decoration: none;
    border-radius: 50px;
}
 h3{
	text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
    font-size: 28px;
    color: rgba(48,51,53,1);
    padding-bottom: 30px;
    line-height: 53px;
}

.header-logo img{
	width: 161px;
}
.form-sec{
	background-color: #303335;
	padding-bottom: 35px;
	padding-top: 55px;
}
.form-sec h3{
	font-size: 35px;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	color: #CBA153;
	padding-bottom: 30px;
}
.form-sec p{
	color: #fff;
	font-size: 18px;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
}
.form-sec .input-grid{
	display: grid;
    grid-template-columns: auto auto auto auto;
	grid-gap: 0px 43px;
	padding-top: 65px;
	padding-bottom: 57px;
}
.form-sec .input-grid .input-text input::placeholder{
	color: #fff;
	font-size: 18px;
	font-weight: 300; 
	font-family: 'Noto Sans JP', sans-serif;
}
.form-sec .input-grid .input-text{
	position: relative;
}
.form-sec .input-grid .input-text:before{
	position: absolute;
	right: 0;
	content: '*';
	top: 0;
	bottom: 0;
	margin: auto;
	color: #fff;
}
.form-sec .input-grid .input-text input{
	border: none;
	background: transparent;
	color: #fff;
	font-size: 18px;
	font-weight: 300;
	font-family: 'Noto Sans JP', sans-serif;
	border-bottom: 1px solid #fff;
	width: 100%;
	outline: none;
}
.form-sec .form-btn{
	text-align: center;
}
.form-sec .form-btn a{
	color: #CBA153;
	font-size: 20px;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 15px 20px;
	border: 1px solid #CBA153;
	text-decoration: none;

}
.form-sec .check-grp{
	text-align: center;
	color: #ffff;
	padding-top: 50px;
}
.form-sec .check-grp label{
	font-size: 13px;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	padding-left: 30px;
}
.footer-sec{
	padding-bottom: 35px;
	padding-top: 30px;
}
.footer-sec .footer-contents{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.footer-sec .footer-contents .social-icons{
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer-sec .footer-contents .social-icons img{
	width: 30px;
	height: 30px;
	object-fit: contain;
	object-position: center;
	margin: 0 14px;
}
.footer-sec .footer-contents .logo{
	display: flex;
    align-items: center;
    justify-content: flex-start;
}
.footer-sec .footer-contents .right-text p{
	color: rgba(48, 51, 51, .52);
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 11px;
}
.footer-sec .footer-contents .right-content{
	    text-align: -webkit-right;
}
.footer-sec .footer-contents .right-text{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 500;
	flex-direction: column;
	width: fit-content;
}
.copy-footer{
	background-color: #CBA153;
	padding: 15px 0px;
}
.copy-footer p{
	font-size: 13px;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	color: #303335;
	text-align: center;
}
.copy-footer p a{
    font-size: 13px;
    font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
    color: #303335;
    text-align: center;
    text-decoration: none;
}




.pillar-sec .lin-vector01.in-view svg path.path-top{
  	stroke-dasharray: 1000;
  	animation: animateMe linear 10s normal forwards;
  	animation-delay: 0s;
}
.pillar-sec .lin-vector01 svg path.path-top{
  	stroke-dashoffset: 1000;
}	
.pillar-sec .lin-vector01.in-view svg path.path-bottom{
  	stroke-dasharray: 1000;
  	animation: animateMe linear 5s normal forwards;
  	animation-delay: 2s;
}
.pillar-sec  .lin-vector01 svg path.path-bottom{
  	stroke-dashoffset: 1000;
}

.pillar-sec .lin-vector01.in-view circle.round-zoom {
    opacity: 1;
    transition-duration: 1.5s; 
  	transition-timing-function: linear;
  	transition-delay: 0.85s;
}
.pillar-sec .lin-vector01 circle.round-zoom {
    opacity: 0;
    transition-duration: 0.2s; 
  	transition-timing-function: linear;
  	transition-delay: 0.2s;
}
.pillar-sec .lin-vector01.in-view g.round-earth path{
	opacity: 1;
	transition-duration: 1s; 
  	transition-timing-function: linear;
  	transition-delay: 2s;
}
.pillar-sec .lin-vector01 g.round-earth path {
    opacity: 0;
    transition-duration: 1s; 
  	transition-timing-function: linear;
  	transition-delay: 2s;
}

.pillar-sec  .lin-vector02 svg path.bottom-line{
  	stroke-dashoffset: 1000;
}
.pillar-sec .lin-vector02.in-view svg path.bottom-line{
  	stroke-dasharray: 1000;
  	animation: animateMe linear 5s normal forwards;
  	animation-delay: 1.5s;
}
.pillar-sec .lin-vector02.in-view path.key {
    opacity: 1;
    transition-duration: 1s;
  	transition-timing-function: linear;
  	transition-delay: 1s;
}
.pillar-sec .lin-vector02 path.key {
    opacity: 0;
    transition-duration: 1s; 
  	transition-timing-function: linear;
  	transition-delay: 1s;
}

.pillar-sec .lin-vector03.in-view path.top-icon {
    opacity: 1;
    transition-duration: 1s;
  	transition-timing-function: linear;
  	transition-delay: 1s;
}
.pillar-sec .lin-vector03 path.top-icon {
    opacity: 0;
    transition-duration: 1s; 
  	transition-timing-function: linear;
  	transition-delay: 1s;
}
.pillar-sec  .lin-vector03 svg path.path-bottom-line{
  	stroke-dashoffset: 1000;
}
.pillar-sec .lin-vector03.in-view svg path.path-bottom-line{
  	stroke-dasharray: 1000;
  	animation: animateMe linear 6s normal forwards;
  	animation-delay: 1.5s;
}



@keyframes animateMe {
 	0% { stroke-dashoffset: 1000; }
 	100% { stroke-dashoffset: 0; }
}
.pillar-sec{
	position: relative;
	color: #FFFFFF;
	overflow: hidden;
}
.pillar-sec:before{
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	background-color: #303335;
	width: 100%;
	height: 100%;
	z-index: -2;
}
.pillar-sec .lin-vector01{
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: 0;
	top: 30px;
	margin: auto;
	/*background: url('../images/linear vector01.svg');*/
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 190px;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}
.pillar-sec .lin-vector02{
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: 0;
	top: 15px;
	margin: auto;
	/*background: url('../images/lin-vector02.svg');*/
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 145px;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}


.pillar-sec .lin-vector03{
	position: absolute;
	content: '';
	top: 0px;
    left: -60px;
	right: 0;
	bottom: 0;
	margin: auto;
	/*background: url('../images/lin-vector03.svg');*/
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	width: 150px;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}
.content-list .container{
	z-index: 9;
	position: relative;
}
.pillar-sec .header-row h3{
	font-size: 28px;
	font-weight: 500;
	line-height: 37px;
	color: #FFFFFF;
	padding-top: 57px;
	position: relative;
}
.pillar-sec .content-list .content-col {
	padding-top: 313px;
	padding-bottom: 70px;
	position: relative;
}
.pillar-sec .content-list .content-col.content-col-01{
	padding-bottom: 235px;
}
.pillar-sec .content-list .content-col.content-col-02 {
    padding-top: 120px;
    padding-bottom: 220px;
}
.pillar-sec .content-list .content-col.content-col-03 {
    padding-top: 160px;
}
.pillar-sec .content-list{
	position: relative;
}
.pillar-sec .content-list:before{
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 100%;
    background: linear-gradient(180deg, #303335, transparent);
    /*z-index: 9;*/
}
.pillar-sec .content-list:after{
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 100%;
    background: linear-gradient(360deg, #303335, transparent);
    /*z-index: 9;*/
}
.pillar-sec .content-list01{
	/*background: url('../images/Mask Group 11.png');*/
	background-size: cover !important;	
	background-position: center !important;
	background-repeat: no-repeat !important;
}
.pillar-sec .content-col{
	display: flex;
	justify-content: space-between;
}
.pillar-sec .content-col .list-contents{
	width: 40%;
	padding-left: 25px;
	position: relative;
	padding-bottom: 15px;
}
.pillar-sec .content-col .list-contents:before{
	position: absolute;
	content: '';
	top: 15px;
	left: 0;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	background-color: #C58C3E;
}
.pillar-sec .content-col .zero-col{
	width: 40%;
}
.pillar-sec .content-col .list-contents h4{
	font-size: 27px;	
	line-height: 36px;
	font-weight: 500;
	padding-bottom: 15px;
}
.pillar-sec .content-col .list-contents p{
	font-size: 14px;	
	line-height: 25px;
	font-weight: 400;
}
.pillar-sec .content-list02{
	/*background: url('../images/Mask Group 12.png');*/
	background-size: cover !important;	
	background-position: center !important;
	background-repeat: no-repeat !important;
}
.pillar-sec .content-list03{
	/*background: url('../images/Mask Group 13.png');*/
	background-size: cover !important;	
	background-position: center !important;
	background-repeat: no-repeat !important;
}
.pillar-sec .content-list03 .content-col{
	padding-bottom: 330px;
}
.simple-banner-sec{
	background-image: url(../images/pexels-vecislavas-popa-1571468.png);
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	position: relative;
	padding-top: 245px;
	padding-bottom: 245px;
	text-align: center;
}
.simple-banner-sec:before{
	position: absolute;
	left: 0;
	top: 0;
	margin: auto;
	content: '';
	width: 100%;
	height: 100%;
    background-color: rgb(48 51 53 / 28%);
}
.simple-banner-sec .s-banner-cont{
	position: relative;
	z-index: 9;
}
.simple-banner-sec .s-banner-cont .text-content h4{
	color: #fff;
	font-size: 40px;
	line-height: 57px;
	font-weight: 500;
	padding-bottom: 43px;
}
.simple-banner-sec .s-banner-cont .ban-cta a{
	font-size: 23px;
	font-weight: 500;
	line-height: 31px;
	background-color: #fff;
	padding: 15px 45px;
	text-decoration: none;
	cursor: pointer;
	color: #303335;
	border-radius: 45px;
	display: inline-block;
}
.layout-sec{
	padding-top: 66px;
	padding-bottom: 100px;
	position: relative;
	background: #F8F8F8;
	overflow: hidden;
}
.layout-sec01 .layout-vector01{
	position: absolute;
	content: '';
	left: 0;
	bottom: 48px;
	width: 100%;
	height: 30%;
	background: url('../images/Group171.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.layout-sec .layout-head h2{
	font-size: 43px;
	font-weight: 500;
	line-height: 57px;
	color: #303335;
	padding-bottom: 74px;
	text-align: center;
}
.layout-sec .lay-img{
	width: 65%;
}
.layout-sec .lay-img img{
	width: 100%;
	object-fit: cover;
	object-position: center;
}
.layout-sec .lay-img h6{
	color: #303335;
	font-size: 27px;
	line-height: 34px;
	font-weight: 500;
	padding-top: 30px;
	padding-left: 65px;
	margin-bottom: 10px;
}
.layout-sec .lay-img h6:last-child{
	margin-bottom: 0;
}
.layout-sec02{
	background: #303335;
}
.layout-sec02 .linear-vector02{
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	width: 50%;
	height: 60%;
	background: url('../images/vector bulb.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.layout-sec02 .lay-col{
	display: flex;
	justify-content: space-between;
}
.layout-sec02 .lay-col .z-area{
	width: 40%;
}
.layout-sec02 .lay-img h6 {
    color: #fff;
}
.layout-sec03{
	padding-top: 100px;
	padding-bottom: 120px; 
}
.layout-sec03 .layout-vector03{
	position: absolute;
	content: '';
	left: 0;
	bottom: 20px;
	width: 100%;
	height: 30%;
	background: url('../images/Group 19.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}