@charset "UTF-8";
/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

.sp{display: none!important;}
a[href^="tel:"] {
    cursor: default;
    pointer-events:none;
}
/* !wrapper
---------------------------------------------------------- */
#wrapper {
	overflow: hidden;
	width: 100%;
}
.menuOpen{
	overflow: hidden;
	height: 100vh;
}
.menuOpen #wrapper{
	position: fixed;
}
.overlay{
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background: none;
	z-index: 97;
	text-indent: -999rem;
	pointer-events: auto;
}

.inner,
.inner02 {
	margin: 0 auto;
	width: 100%;
	max-width: 130rem;
	padding: 0 5rem;
	position: relative;
	z-index: 3;
}
.inner02 {
	max-width: 114rem;
}
/* !header
---------------------------------------------------------- */
#header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 98;
	width: 100%;
}

#headerIn {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
#headerLogo a{
	width: 36rem;
	height: 22.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #126D7B;
	transition: opacity .3s!important;
}
#headerLogo a img{
	width: 18.9rem;
}

#header.is_fixed {
	position: fixed;
	background: #fff;
}
.is_fixed #headerLogo a{
	background: url(../img/common/logo_fixed.svg)no-repeat center center #126D7B;;
	background-size: 26.2rem auto;
	width: 36rem;
	height: 10.4rem;
}
.is_fixed #headerLogo a img{
	display: none;
}
.is_fixed .nav_list li a{
	color: #000000;
}

#headerLinks {
	
}

@media screen and (max-width: 1319px) {
	#headerLogo a {
		width: 24rem;
	}

	.is_fixed #headerLogo a{
		background-size: 17.4rem auto;
		width: 24rem;
	}
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {
    width: 100%;
    padding: 1.9rem 0;
	font-size: 1.2rem;
	font-weight: bold;
}

#breadcrumb ul {
  display: inline-flex;
  align-items: flex-start;
  justify-content: flex-start;
}

#breadcrumb ul li {
  word-break: keep-all;
  white-space: nowrap;
  position: relative;
  color: #000;
  font-size: 1.2rem;
}

#breadcrumb ul li + li:before {
  content: '〉';
  z-index: 2;
  width: 2em;
  padding-left: .5em;
  text-align: center;
  display: inline-block;
  text-indent: 0;
  color: #000;
}

#breadcrumb ul li + li {
  padding-left: 2em;
  text-indent: -2em;
}

#breadcrumb ul li:last-child {
  word-break: break-all;
  white-space: unset;
}

#breadcrumb ul li a{
  text-indent: 0;
  color: #000;
}
/* !gNavi
---------------------------------------------------------- */
#gNavi {
	
}
#gNavi li {
	
}
#gNavi li a {
	
}
.nav_list{
	grid-gap: 5rem;
	display: flex;
	align-items: center;
}
.nav_list li a{
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	position: relative;
}
.nav_list li.header_contact a{
	color: #fff;
	background: #B2AA43;
	width: 43.4rem;
	min-height: 10.4rem;
}
.nav_list li.header_contact a span{
	padding-left: 4.4rem;
	background: url(../img/common/icon_email.svg)no-repeat left center;
	background-size: 3.1rem auto;
	font-size: 1.6rem;
}

@media screen and (max-width: 1739px) {
	.nav_list {
		gap: 1.2rem;
	}

	.nav_list li.header_contact a {
		width: 30rem;
	}
}
	
/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	/*background: url(../img/top/img_mv.jpg)no-repeat center center;*/
	background-size: cover;
	height: 100dvh;
	max-height: 109rem;
	position: relative;
	z-index: 9;
	display: flex;
	align-items: center;
	justify-content: center;
}
.mv_video{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.mv_video video{
	object-fit:cover;
	width: 100%;
	height: 100%;
	display: block;
} 
#mainVisual .inner{
	max-width: 158rem;
	z-index: 3;
}
.mv_cont .ttl{
	width: 81.8rem;
}
.mv_cont .txt{
	font-size: 2.7rem;
	letter-spacing: .1em;
	color: #fff;
}
.scroll_line {
	position: absolute;
	bottom: 0;
	left: 8.4rem;
	z-index: 9;
	color: #fff;
	font-size: 1.3rem;
	letter-spacing: .1em;
}
.scroll_line span{
	transform: rotate(90deg);
	transform-origin: left;
	position: absolute;
	left: 0;
	bottom: 17.5rem;
	z-index: 1;
	white-space: nowrap;
}
.scroll_line:after,
.scroll_line:before{
    content: '';
    position: absolute;
    left: 0;
    border-right: 1px solid #fff;
    height: 8.6rem;
    bottom: 0;
}
.scroll_line:after{
	border-right: 1px solid #A5A5A5;
	top: 100%;
	bottom: auto;
}

.mv_product{
	position: absolute;
	left: 14rem;
	bottom: -14rem;
	z-index: 2;
	width: 27.8rem;
}
.mv_product:after{
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%) scale(1.25);
	z-index: 1;
	width: 38.3rem;
	height: 38.3rem;
	background: url(../img/top/bg_black.png)no-repeat center center;
	background-size: 100% 100%;
	opacity: .5;
}
.mv_product_rotate{
	content: '';
	position: absolute;
	left: 50%;
	top: 47%;
	transform: translate(-50%,-50%);
	z-index: 2;
	width: 32.7rem;
	height: 32.7rem;
}
.mv_product_rotate img{
	animation: circle 20s infinite linear;
}
@keyframes circle {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.mv_product a{
	position: relative;
	z-index: 3;
	display: block;
}

@media only screen and (max-width : 1365px){
	.mv_product{
		left: 2rem;
		transform: scale(.9);
	}
}

.mv_news{
	z-index: 3;
	position: absolute;
	right: 0;
	bottom: -8rem;
	background: #fff;
	padding: 4.4rem 5.4rem;

	display: flex;
	align-items: flex-end;
	grid-gap: 5.6rem;
}
.mv_news_detail{
	width: 57rem;
	display: flex;
	grid-gap: 3.7rem;
	opacity: 1!important;
}
.mv_news_detail .img_box{
	width: 17.7rem;
	padding-top: 12.4rem;
}
.mv_news_detail .cont{
	width: calc(100% - 17.7rem - 3.7rem);
}
.mv_news_detail .ttl{
	font-size: 1.9rem;
}
.mv_news_detail .row{
	display: flex;
	align-items: center;
	grid-gap: 1.6rem;
	margin: 1.2rem 0 .8rem;
}
.mv_news_detail .date{
	font-size: 1.9rem;
	font-weight: 400;
}
.mv_news_detail .txt{
	font-size: 1.6rem;
	line-height: 2.1;
	font-weight: 400;

    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.mv_news_detail .categ_span {
    padding: .4rem 2rem;
    border-radius: 2rem;
    background: #126D7B;
    color: #fff;
    font-size: 1rem;
    font-weight: 500;
}

/* !teaser
---------------------------------------------------------- */
#teaser {
	margin-left: 10%;
	position: relative;
}
.teaser_img.img_box{
	padding-top: 33.9rem;
}
.teaser_hd{
	font-size: 4rem;
	font-weight: bold;
	letter-spacing: .1em;
	color: #fff;
	position: absolute;
	z-index: 9;
	left: 28.7rem;
	top: 19rem;
}
.teaser_img:after{
	opacity: .5!important;
}
/* !contents
---------------------------------------------------------- */
#contents {
	
}

#main {
	
}

#side {
	
}


/* !pageTop
---------------------------------------------------------- */
.pageTop {
	
}

/* !footer
---------------------------------------------------------- */
.common_environment{
	padding: 0 0 6.8rem;
}
.common_environment_hd{
	text-align: center;
	font-size: 4.3rem;
	color: #174948;
	margin-bottom: 2rem;
}
.common_environment_list{
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: 1.5rem;
}
.common_environment_list a{
	display: block;
	color: #fff;
	opacity: 1!important;
	position: relative;
}
.common_environment_list .img_box{
	padding-top: 72.5%;
}
.common_environment_list .ttl{
	font-size: 2.7rem;
	line-height: 1.44;
	position: absolute;
	left: 3.5rem;
	top: 4.4rem;
	z-index: 2;
}
.common_environment_list .btn{
	position: absolute;
	z-index: 2;
	right: 2.26rem;
	bottom: 2.4rem;
	background: url(../img/common/arrow_bg_white.svg)no-repeat right center;
	background-size: auto 100%;
	min-height: 3.2rem;
	display: flex;
	align-items: center;
	padding-right: 4.5rem;
	font-size: 1.4rem;
	font-weight: 500;
}

.common_bottom_dl{
	display: flex;
	flex-direction: row-reverse;
	grid-gap: 1px;
	margin-bottom: 1px;
}
.common_bottom_dl dt,
.common_bottom_dl dd{
	width: 100%;
}
.common_bottom_dl a{
	display: block;
	color: #fff;
	opacity: 1!important;
	position: relative;
}
.common_bottom_dl .img_box{
	padding-top: 29rem;
}
.common_bottom_dl .cont{
	position: absolute;
	z-index: 9;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.common_bottom_dl .ttl{
	font-size: 2.9rem;
	margin-bottom: 1.2rem;
}
.common_bottom_dl .btn{
	width: 26.2rem;
}
.common_bottom_dl .tel{
	background: url(../img/common/icon_tel.svg)no-repeat left center;
	background-size: 4.1rem auto;
	padding-left: 5.4rem;
	font-size: 4.6rem;
	line-height: 1.4;
}

#footer {
	background: #126D7B;
	color: #fff;
	padding: 7rem 0 6.3rem;
}
#footer a{
	color: #fff;
}
#footer .footerIn {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row-reverse;
	max-width: 114rem;
}
.footet_link{
	display: flex;
	justify-content: space-between;
}
.footet_link ul{
	display: grid;
	height: 100%;
	grid-gap: 1.8rem;
}
.footet_link a{
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}
.footer_btn{
	margin: 5rem 0 4rem;
	width: 44.7rem;
}
	
.copyright {
	text-align: right;
	font-size: 1rem;
	font-weight: bold;
}
.footer_logo{
	width: 21rem;
}
.footer_addr{
	margin-top: 3.3rem;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 2.1;
}

@media screen and (max-width: 1200px) {
	.footet_link a,
	.footer_addr {
		font-size: 1.6rem;
	}
}

/* !h(n)eading
---------------------------------------------------------- */
.hdL {
	
}

.hdM {
	
}

.hdS {
	
}

.hd01 {
	
}



/* !list
---------------------------------------------------------- */
.img_box {
    position: relative;
    z-index: 1;
    width: 100%;
    padding-top: 66%;
    overflow: hidden;
}
.img_box img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    object-fit: cover;
    transition: transform .4s ease;
}
a:hover .img_box img{
	transform: scale(1.05);
}
.green_before{
	position: relative;
}
.green_before:after{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	z-index: 9;
	width: 100%;
	height: 100%;
	background: #174948;
	opacity: .65;
}

/*contact*/
.contact_wrap{
	padding: 15rem 0;
	font-weight: 500;
}
.contact_top{
	padding-left: 18.8rem;
	margin-bottom: 1rem;
	font-size: 1.8rem;
}
.contact_tel_row p,
.contact_tel_row{
	display: flex;
	align-items: center;
	grid-gap: 4rem;
}
.contact_tel_row input{
	max-width: 46.4rem;
}
.contact_box{
}
.contactTable{
    width: 100%;
}
.contactTable th,
.contactTable td{
    font-size: 1.8rem;
    font-weight: 500;
    padding: 2.2rem 0;
}
.contactTable th{
    vertical-align: middle;
    text-align: left;
    width: 18.8rem;
}
.contactTable th.ver_top{
	vertical-align: top;
}
span.required{
    color: #FF0000;
}

.contactTable input[type=text],
.contactTable input[type=tel],
.contactTable input[type=email],
.contactTable select,
.contactTable textarea{
    width: 100%;
    height: 7.4rem;
    border-radius: 0;
    border: 0;
    padding: 0 3.2rem;
    font-size: 1.8rem;
    font-weight: 500;
    border: 1px solid #707070;
    background: #fff;
    color: #000;
}
.contactTable select {
    width: 46.4rem;
    background: url(../img/common/select.svg) no-repeat right 2.4rem center #fff;
    background-size: 1.7rem auto;
    padding: 0 6rem 0 3.2rem;
}
.contactTable textarea{
    display: block;
    resize: none;
    min-height: 29rem;
    padding: 1.5rem 3.2rem;
}
.p-region,
.p-postal-code{
    max-width: 21.2rem!important;
}

.formButton{
    margin-top: 9rem;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    grid-gap: 2rem;
}
.formButton .btn_form{
    width: 19.4rem;
    height: 5.2rem;
    border-radius: 7rem;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    border: 0;
    box-shadow: none;
    position: relative;
    z-index: 9;
    background: url(../img/common/arrow_bg_transparent.svg)no-repeat right 1.5rem center #126D7B;
    background-size: 2.5rem auto;
    transition: opacity .5s;
    padding: 0 2.6rem;
    text-align: left;
}
.formButton .btn_form:hover{
	opacity: .7;
}
.formButton .disabled{
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .5;
    pointer-events: none;
}

/*news*/
.news_wrap{
	padding: 12rem 0;
}
.news_wrap .inner{
	display: flex;
	justify-content: space-between;
}
.news_wrap #side{
	width: 28rem;
	padding-top: 2.5rem;
}
.news_wrap #main{
	width: calc(100% - 28rem);
}
.hd_s{
	margin-bottom: 2rem;
}
.hd_s .jap{
	display: block;
	font-size: 4.3rem;
	line-height: 1.3;
	font-weight: bold;
}
.hd_s .eng{
	display: block;
	font-size: 3.2rem;
	line-height: 1.3;
	font-weight: 500;
	color: #126D7B;
}
.categ_span{
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	padding: .3rem 1.2rem;
	border-radius: 2rem;
	background: #126D7B;
	color: #fff;
	font-size: .8rem;
	font-weight: 500;
}
.side_list{
	display: grid;
	grid-gap: .5rem;
}
.news_list a{
	display: block;
	border-bottom: 1px solid #C9C9C9;
	padding: 3.2rem 0;
	padding-right: 4rem;
	background: url(../img/common/arrow_bg_yellow.svg)no-repeat right center;
	background-size: 3.2rem auto;
}
.news_list .date{
	font-size: 1.4rem;
	font-weight: 400;
	margin-right: 1rem;
	vertical-align: middle;
}
.news_list .txt{
	margin-top: .5rem;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;

    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}


/* !wp-pagenavi
---------------------------------------------------------- */
.wp-pagenavi {
    display: flex;
    justify-content: center;
    align-items: center;
    grid-gap: 1.6rem;
    width: 100%;
    margin: 6.4rem auto 0;
    position: relative;
    padding: 0;
    text-align: center;
}

.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .pages {
    display: none;
}

.wp-pagenavi a, 
.wp-pagenavi span {
    border: 0;
    padding: 0;
    margin: 0;
}

.wp-pagenavi a, 
.wp-pagenavi .current {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .5s;
    color: #fff;
    background: #6BB7C3;
}

.wp-pagenavi a:hover,
.wp-pagenavi .current {
    color: #fff;
    background: #126D7B;
    opacity: 1;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    font-style: normal;
    width: auto;
    color: #6BB7C3!important;
    background: none!important;
}


.news_detail_top{
	display: flex;
	align-items: center;
	grid-gap: 1rem;
	font-size: 1.4rem;
	font-weight: 400;
	margin: 2.5rem 0 3.2rem;
}
.news_detail_hd{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.5rem;
}
.news_detail_cont{
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.1;
}
.news_detail_cont p+figure,
.news_detail_cont p+p{
	margin-top: 8rem;
}
.news_detail_cont figure{
	display: block;
	margin: 0;
}
.news_detail_btn{
	margin-top: 8rem;
	text-align: center;
}
.btn_link01{
	display: inline-flex;
	align-items: center;
    width: 19.4rem;
    height: 5.2rem;
    border-radius: 7rem;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    border: 0;
    box-shadow: none;
    position: relative;
    z-index: 9;
    background: url(../img/common/arrow_bg_transparent.svg)no-repeat right 1.5rem center #126D7B;
    background-size: 2.5rem auto;
    transition: opacity .5s;
    padding: 0 2.6rem;
    text-align: left;
}
.btn_link01:hover{
	opacity: .7;
}

/*environment*/
.environment_wrap{
	padding: 17rem 0;
}
.flex_dl{
	display: flex;
}
.flex_dl+.flex_dl{
	margin-top: 15rem;
}
.flex_dt{
	width: 24rem;
}
.flex_dd{
	width: calc(100% - 24rem);
}
.environment_wrap .flex_dd{
	border-top: 1px solid #707070;
	padding-top: 4rem;
}
.line_hd{
	color: #126D7B;
	font-size: 3rem;
	line-height: 1.5;
}
.line_hd span{
	border-bottom: .5rem solid #126D7B;
}
.environment_hd{
	font-size: 3rem;
	color: #126D7B;
	margin-bottom: 2rem;
}
.common_txt,
.common_txt p{
	font-size: 1.6rem;
	line-height: 1.875;
}
.common_txt p+p{
	margin-top: 3rem;
}
.environment_list01{
	border-top: 1px solid #707070;
	margin-top: 3rem;
}
.environment_list01 li{
	border-bottom: 1px solid #707070;
}
.environment_list01 li:nth-of-type(odd){
	background: #FFFFF4;
}
.environment_list01 dl{
	display: flex;
	align-items: center;
	padding: 1.8rem 0;
	min-height: 8.8rem;
}
.environment_list01 dt{
	width: 5.3rem;
	font-size: 1.8rem;
	color: #126D7B;
	text-align: center;
}
.environment_list01 dd{
	width: calc(100% - 5.3rem);
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 500;
}

.environment_list02{
	margin-top: 2.8rem;
}
.environment_list02 li{
	font-size: 1.8rem;
	padding: .7rem 0;
	font-weight: 500;
}
.environment_list02 li:nth-of-type(odd){
	background: #FFFFF4;
}
.environment_img{
	margin-top: 8rem;
}

.environment_list03{
	margin-top: 6rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	grid-gap: 8rem;
}
.environment_list03 li{
	width: calc(50% - 4rem);
}
.environment_list03 li:nth-of-type(1){
	width: 100%;
}
.environment_list03 li:last-of-type{
	width: 35.2rem;
}
.environment_list03 .txt{
	font-size: 2rem;
	color: #126D7B;
	margin-top: 1.5rem;
	text-align: center;
}

/*product*/
.product_wrap{
	padding: 10rem 0 13rem;
}
.product_wrap .inner{
	max-width: 162rem;
	display: flex;
	justify-content: space-between;
}
.product_side{
	width: 33.8rem;
	border-right: 1px solid #707070;
}
.product_main{
	width: calc(100% - 43rem);
	padding-bottom: 5rem;
}
.product_side ul{
	width: 30.8rem;
	display: grid;
	grid-gap: 2.4rem;
}
.product_side li{
	border-left: 1px solid #707070;
	border-top: 1px solid #707070;
}
.product_side a{
	height: 19rem;
	display: block;
	padding: 2.5rem 0 0 3rem;
}
.product_side a .txt{
	padding-left: 4.2rem;
	background: url(../img/common/arrow_bg_yellow.svg)no-repeat left center;
	background-size: 3.2rem auto;
	font-size: 2.4rem;
	margin-bottom: 1.2rem;
	white-space: nowrap;
}
.product_side a.is_active .txt{
	color: #126D7B;
}
.product_side a .img{
	text-align: center;
}
.product_side a .img img{
	height: 20rem;
	margin-top: -5rem;
}

.product_item+.product_item{
	margin-top: 12rem;
}
.product_hd{
	font-size: 3.4rem;
	color: #126D7B;
	margin-bottom: 2rem;
}
.product_hd:before{
	content: '';
	border: .7rem solid currentColor;
	margin-right: 2.3rem;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 50%;
	display: inline-block;
}
.product_list{
	margin-top: 5rem;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: 8.6rem 7rem;
}
.product_list a{
	display: block;
	border-bottom: 1px solid #707070;
	opacity: 1!important;
	pointer-events: none;
}
.product_list.is_link a{
	pointer-events: auto;
}
.product_list .img_box{
	padding-top: 23.7rem;
	margin-bottom: 1.7rem;
}
.product_list .img_box img{
	/*transform: scale(1)!important;*/
}
.product_list .name01{
	border-bottom: 1px solid #707070;
	border-top: 1px solid #707070;
	padding: 1.2rem 0;
	font-size: 2rem;
	line-height: 1.45;
}
.product_list .categ{
	display: flex;
	flex-wrap: wrap;
	grid-gap: 1.5rem;
	padding: 1.7rem 0;
}
.product_list .categ span{
	padding: .4rem 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #707070;
	font-size: 1.2rem;
	font-weight: 500;
	white-space: nowrap;
}

.product_p01{
	font-size: 1.4rem;
	margin-bottom: 4rem;
}
.product_note{
	font-size: 1.2rem;
	font-weight: 500;
	margin-top: 1.5rem;
}
.product_table table{
	width: 100%;
}
.product_table th,
.product_table td{
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #707070;
	padding: 2rem;
}
.product_table th{
	background: #FEFFE6;
}
.product_table th:first-of-type{
	border-left: 0;
}
.product_table th:last-of-type,
.product_table td:last-of-type{
	border-right: 0;
}

.process_list{
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: 5.7rem 4.4rem;
}
.process_list .img_box{
	padding-top: 21.7rem;
}
.process_list .txt{
	font-size: 1.6rem;
	font-weight: 500;
	margin-top: 1rem;
}

/*product02*/
.product_list .name02{
	border-top: 1px solid #707070;
	padding: 1.2rem 0 0;
	font-size: 2rem;
	line-height: 1.45;
}
.product_list .categ02{
	font-size: 1.4rem;
	padding-bottom: 1.9rem;
	border-bottom: 1px solid #707070;
}
.product_list .categ03 span,
.product_list .categ02 span{
	text-decoration: underline;
}
.product_list a:hover .categ03 span,
.product_list a:hover .categ02 span{
	text-decoration: none;
}

.product_list .txt{
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
	margin: 1.2rem 0;
	min-height: 4.5em;
}

.product02_note{
	margin-top: 6.5rem;
	font-size: 1.6rem;
}


/*product03*/
.product_list .categ03{
	font-size: 1.4rem;
	margin: .2rem 0;
}
.product_list .from{
	font-size: 2rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid #707070;
}

/*product05*/
.product_list .change_box{
	font-size: 2rem;
	line-height: 1.45;
	padding: 1.2rem 0;
	border-top: 1px solid #707070;
	min-height: 16.7rem;
}
.product_list .change_txt{
	display: flex;
	justify-content: space-between;
	margin-bottom: 2.5rem;
}
.product_list .change_txt span{
	width: 14rem;
	text-align: center;
}

/*product04*/
.product04_p01{
	font-size: 2.7rem;
	margin: 6.3rem 0 3rem;
}
.product04_item+.product04_item{
	margin-top: 5rem;
}
.product04_hd{
	font-size: 2.7rem;
	color: #126D7B;
	margin-bottom: 2.3rem;
}
.product04_table{
	width: 100%;
}
.product04_table th,
.product04_table td{
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
	padding: 3rem 0;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
}
.product04_table th{
	width: 21rem;
	vertical-align: top;
}

.product04_list{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: 4.5rem;
}
.product04_list a{
	display: block;
	opacity: 1!important;
	pointer-events: none;
}
.product04_list .img_box{
	padding-top: 91.7%;
	padding-top: 107%;
}
.product04_list .name04{
	font-size: 1.6rem;
	margin-top: 1.1rem;
}
.product04_note{
	font-size: 1.6rem;
	font-weight: 500;
	margin-top: 3.4rem;
}

/*company*/
.company_sec01{
	padding: 10rem 0 20rem;
}
.company_sec01_eng{
	font-size: 2.9rem;
	color: #126D7B;
	margin-bottom: 3.2rem;
}
.company_sec01_jap{
	font-size: 5.9rem;
	line-height: 1.45;
	color: #126D7B;
	margin-bottom: 3.2rem;
}
.company_sec01_dl{
	display: flex;
	justify-content: space-between;
}
.company_sec01_dl dt{
	width: 50%;
}
.company_sec01_dl dd{
	width: 50%;
	padding-left: 9rem;
}
.company_sec01_dl .name{
	font-size: 1.6rem;
	font-weight: bold;
	margin-top: 1.7rem;
	display: flex;
	justify-content: center;
	grid-gap: 5.5rem;
}

.company_sec02{
	background: url(../img/company/bg_sec02.jpg)no-repeat center center;
	background-size: cover;
	padding: 15rem 0 13rem;
	color: #fff;
	text-align: center;
}
.company_sec02_item+.company_sec02_item{
	margin-top: 10rem;
}
.company_sec02_hd{
	font-size: 4.5rem;
	line-height: 1.45;
	margin-bottom: 2.8rem;
}
.company_sec02_txt{
	font-size: 2.4rem;
	line-height: 2.08;
}
.company_sec02_date{
	text-align: right;
	padding: 0 5.6rem;
	font-size: 1.4rem;
	line-height: 2.14;
}

.company_sec03{
	padding: 23rem 0;
}
.company_sec03_item+.company_sec03_item{
	margin-top: 18rem;
}
.company_table01{
	width: 100%;
	border-top: 1px solid #707070;
}
.company_table01 th,
.company_table01 td{
	font-size: 1.4rem;
	line-height: 2.85;
	font-weight: bold;
	padding: 2rem 0;
	border-bottom: 1px solid #707070;
}
.company_table01 th{
	vertical-align: top;
	padding: 2rem;
	width: 25.5rem;
}
.company_table01 td p{
	/*max-width: 34.5rem;*/
}
.company_table01 tr:nth-of-type(odd){
	background: #FFFFF4;
}

.company_table02{
	width: 100%;
}
.company_table02 th,
.company_table02 td{
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 2.85;
	vertical-align: middle;
	padding: 2rem;
}
.company_table02 thead th{
	text-align: center;
	padding: .8rem 0;
}
.company_table02 thead th:nth-of-type(1){
	width: 16.7rem;
}
.company_table02 thead th:nth-of-type(2){
	width: 25.5rem;
}
.company_table02 tbody th,
.company_table02 tbody td{
	border: 1px solid #707070;
}
.company_table02 tbody td:first-of-type{
	border-left: 0;
}
.company_table02 tbody td:last-of-type{
	border-right: 0;
	padding: 2rem 3.6rem;
}

.company_table02 .bg_yellow,
.company_table02 tbody tr:nth-of-type(odd){
	background: #FFFFF4;
}
.company_table02 .date{
	text-align: center;
}

.company_map{
	background: #FEFFE3;
	padding: 3.6rem;
	margin-bottom: 3.4rem;
	text-align: center;
}
.company_map img{
	width: 56.4rem;
}
.company_sec03_list li{
	padding: 3.8rem 0 3.2rem;
	border-bottom: 1px solid #707070;
	position: relative;
}
.company_sec03_list .ttl{
	font-size: 2rem;
	color: #126D7B;
	margin-bottom: 1.5rem;
}
.company_sec03_list .box{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.company_sec03_list .txt{
	font-size: 1.4rem;
}
.btn_link01.btn_yellow{
    width: 13.7rem;
    height: 3.7rem;
    font-size: 1.1rem;
    font-weight: bold;
    background: url(../img/common/arrow_bg_transparent.svg)no-repeat right 1rem center #B2AA43;
    background-size: 1.8rem auto;
    padding: 0 2.2rem;
}

/*business*/
.business_sec01{
	padding: 10rem 0 0;
}
.business_sec02{
	padding: 17rem 0 0;
}
.business_sec02_item+.business_sec02_item{
	margin-top: 14.5rem;
}
.business_sec02_item{
	display: flex;
	justify-content: space-between;
}
.business_sec02_left{
	width: 17.5rem;
	background: #126D7B;
	color: #fff;
	font-size: 3rem;
	letter-spacing: .5em;
	font-weight: bold;
	padding: 5rem 0;
	display: flex;
	align-items: center;

	writing-mode: vertical-rl;
	writing-mode: tb-rl;
}
.business_sec02_left span{
	height: 100%;
	display: flex;
	overflow: hidden;
}
.business_sec02_left font{
	padding-bottom: 2rem;
	position: relative;
}
.business_sec02_left font:after{
	position: absolute;
	left: 50%;
	top: 100%;
	content: '';
	width: 1px;
	height: 100vw;
	background: #fff;
}
.business_sec02_right{
	width: calc(100% - 17.5rem - 7.5rem);
}
.business_sec02_dl{
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.business_sec02_dl dt{
	width: 50rem;
}
.business_sec02_dl dd{
	width: calc(100% - 54rem);
}
.business_sec02_dl p{
	font-size: 1.6rem;
	line-height: 2.5;
}

.business_sec01 .company_sec01_dl dt{
	width: calc(100% - 55.5rem);
}
.business_sec01 .company_sec01_dl dd{
	width: 53.5rem;
	padding-left: 0;
}

.business_sec02_p01{
	font-size: 2rem;
	color: #126D7B;
	margin: 5rem 0 6.4rem;
}
.business_sec02_p02{
	text-align: center;
}
.business_sec02_p02 img{
	width: 87.7rem;
}
.business_sec02_dl+.business_sec02_dl{
	margin-top: 5.4rem;
}
.business_sec02_dl .box{
	width: 100%;
}
.business_sec02_dl p span{
	color: #126D7B;
}
.business_sec02_p03{
	text-align: center;
	margin-top: 4.5rem;
}
.business_sec02_p03 img{
	width: 67.4rem;
}
.business_sec02_item_hd{
	font-size: 2rem;
	color: #126D7B;
	margin-bottom: 2rem;
}

.business_sec03{
	padding: 18rem 0;
}
.business_map{
	background: #FEFFE3;
	padding: 3.6rem;
	text-align: center;
	margin-top: 4rem;
}
.business_map img{
	width: 52.4rem;
}

.business_sec03_item+.business_sec03_item{
	margin-top: 10rem;
}
.business_table{
	width: 100%;
}
.business_table th,
.business_table td{
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
	padding: 3rem 0;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
}
.business_table th{
	width: 16.6rem;
	color: #126D7B;
	vertical-align: top;
	font-weight: bold;
}
.business_sec03_p{
	font-size: 1.6rem;
	line-height: 2.5;
	margin-bottom: 5.5rem;
}
.business_sec03_list{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: 5.3rem 4.7rem;
	text-align: center;
}
.business_sec03_list .txt{
	font-size: 1.6rem;
	margin-top: 1rem;
}

/*symlet*/
.symlet_sec01{
	padding: 10rem 0;
	background: url(../img/symlet/bg_sec01.jpg)no-repeat bottom center;
	background-size: 100% 145rem;
	position: relative;
}
.symlet_sec01:before{
	content: '';
	position: absolute;
	right: -78.4rem;
	bottom: 20.7rem;
	width: 198.9rem;
	height: 197.8rem;
	background: url(../img/symlet/before_sec01.png)no-repeat bottom center;
	background-size: 100% 100%;
	pointer-events: none;
}
.symlet_sec01:after{
	content: '';
	position: absolute;
	left: -120rem;
	bottom: -83.7rem;
	width: 198.9rem;
	height: 197.8rem;
	background: url(../img/symlet/after_sec01.png)no-repeat bottom center;
	background-size: 100% 100%;
	pointer-events: none;
}
.symlet_video{
	max-width: 103rem;
	margin: 0 auto;
	position: relative;
}
.symlet_video:after{
	content: '';
	position: absolute;
	z-index: 11;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(../img/symlet/play.svg)no-repeat center center;
	background-size: 16.2rem auto;
	pointer-events: none;
}
.symlet_video.is_play:after{
	content: none;
}

.symlet_video video{
	object-fit:cover;
	width: 100%;
	height: 56.5rem;
	box-shadow: 0 .6rem 2rem rgba(0,0,0,.69);
} 
.symlet_sec01_p01{
	font-size: 2.4rem;
	line-height: 2.08;
	text-align: center;
	margin-top: 15rem;
	margin-bottom: 4.5rem;
}
.symlet_sec01_p02{
	font-size: 2.7rem;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 8.4rem;
	background: #126D7B;
	color: #fff;
	margin-bottom: 2.5rem;
}
.symlet_sec01_dl01{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 5rem;
}
.symlet_sec01_dl01 dt{
	width: 50%;
}
.symlet_sec01_dl01 dd{
	width: 50%;
	display: flex;
	justify-content: flex-end;
	grid-gap: 4rem;
}
.symlet_sec01_dl01 dd img{
	height: 13.5rem;
}

.symlet_sec01_dl02{
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	padding: 3.6rem 4rem 3.6rem 7rem;
	border-radius: 1.2rem;
}
.symlet_sec01_dl02 dt{
	width: calc(100% - 24.5rem - 2rem);
}
.symlet_sec01_dl02 dd{
	width: 24.5rem;
}
.symlet_sec01_dl02 .ttl{
	font-size: 2.4rem;
	color: #126D7B;
	margin-bottom: 2rem;
}
.symlet_sec01_dl02 .txt{
	font-size: 1.4rem;
	line-height: 2.14;
}

.symlet_sec02{
	padding-top: 6rem;
	text-align: center;
}
.symlet_sec02_hd{
	font-size: 6.4rem;
	line-height: 1.44;
	color: #126D7B;
	margin-bottom: 1.4rem;
}
.symlet_sec02_p01{
	font-size: 2.6rem;
	color: #126D7B;
	margin-bottom: 3rem;
}
.symlet_sec02_p02{
	font-size: 2rem;
	line-height: 2;
	margin-bottom: 4.5rem;
}
.symlet_sec01_p02 span{
	font-size: 4.6rem;
}
.symlet_sec02_box{
	border: .3rem solid #126D7B;
	padding: 3.5rem 2rem;
	margin-bottom: 4.5rem;
}
.symlet_sec02_box .ttl{
	font-size: 4rem;
	margin-bottom: 1.4rem;
	color: #126D7B;
}
.symlet_sec02_box .txt{
	font-size: 1.6rem;
}
.symlet_sec02_p03{
	font-size: 4.9rem;
	color: #126D7B;
	margin-bottom: .5rem;
}
.symlet_sec02_p04{
	font-size: 4rem;
	margin-bottom: 7rem;
}
.symlet_sec02_list{
	display: grid;
	grid-template-columns: repeat(3,1fr);
	text-align: left;
	grid-gap: 5rem;
}
.symlet_sec02_list .point span{
	font-size: 4rem;
	width: 6.6rem;
	color: #126D7B;
	border-right: 1px solid #707070;
	display: inline-block;
}
.symlet_sec02_list .ttl{
	font-size: 2.9rem;
	line-height: 1.45;
	margin: 1.3rem -2rem 3rem 0;
	color: #126D7B;
}
.symlet_sec02_list .img{
	margin-top: 3.4rem;
}

.symlet_sec03{
	padding: 16.5rem 0;
}
.faq_list dl{
	padding: 3.8rem 0;
	border-bottom: 1px solid #707070;
	background: #fff;
}
.faq_list dl:last-of-type{
	border-bottom: 0;
}
.faq_list dl dt{
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 8.6rem;
	font-size: 2rem;
	line-height: 1.45;
	min-height: 2.9em;
	color: #126D7B;
	margin-bottom: 2.8rem;
}
.faq_list dl dt:before{
	content: 'Q';
	position: absolute;
	z-index: 2;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 5.8rem;
	height: 5.8rem;
	background: #126D7B;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3rem;
	font-weight: bold;
	border-radius: 50%;
}
.faq_list dl dd{
	font-size: 2rem;
	line-height: 1.45;
	min-height: 2.9em;
}
.faq_list dl dd .cont{
	position: relative;
	padding-left: 8.6rem;
	display: flex;
	align-items: center;
	min-height: 5.8rem;
}
.faq_list dl dd .cont:before{
	content: 'A';
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	width: 5.8rem;
	height: 5.8rem;
	background: #126D7B;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3rem;
	font-weight: bold;
	border-radius: 50%;
}

.symlet_contact{
	margin: 10rem auto 0;
	max-width: 92.4rem;
	background: #126D7B;
	color: #fff;
	position: relative;
	padding: 3.3rem 3.7rem;
}
.symlet_contact .img{
	position: absolute;
	right: 1.4rem;
	top: -2rem;
	width: 39rem;
}
.symlet_contact .txt{
	font-size: 2rem;
	line-height: 1.45;
}
.symlet_contact .ttl{
	font-size: 4.2rem;
	line-height: 1.45;
	margin-bottom: 1.47rem;
}
.btn_link01.btn_white{
    width: 18rem;
    height: 5.1rem;
    font-size: 1.1rem;
    font-weight: bold;
    background: url(../img/common/arrow_bg_blue.svg)no-repeat right 2.7rem center #fff;
    background-size: 1.8rem auto;
    padding: 0 2.6rem;
    color: #174948;
}

/*palette*/
.palette_wrap{
	padding-top: 11rem;
}
.palette_hd{
	background: #126D7B;
	color: #fff;
	padding: 1.6rem .8rem;
	margin-bottom: 4rem;
	display: flex;
	align-items: center;
}
.palette_hd span{
	font-size: 4rem;
	text-align: center;
	width: 9.6rem;
}
.palette_hd p{
	padding-left: 3rem;
	border-left: 1px solid #fff;
	font-size: 4rem;
	line-height: 1.45;
}
.palette_dl01{
	display: flex;
	justify-content: space-between;
	margin-bottom: 5rem;
}
.palette_dt01{
	width: 65rem;
}
.palette_dt02{
	width: 48.5rem;
}
.palette_dt03{
	width: 14.4rem;
	height: 26.7rem;
	margin: 0 4.4rem;
	display: flex;
	align-items: center;
}
.palette_dt03 span{
	width: 14.4rem;
	height: 14.4rem;
	border-radius: 50%;
	background: #126D7B;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.43;
}
.palette_dd01{
	width: 48.3rem;
}
.palette_dl01 .ttl{
	font-size: 2.9rem;
	color: #126D7B;
	margin-bottom: 3rem;
}
.palette_item01+.palette_item01{
	margin-top: 4.5rem;
}
.palette_item_hd{
	font-size: 2.8rem;
	margin-bottom: 2.5rem;
	color: #126D7B;
	overflow: hidden;
}
.palette_item_hd span{
	padding-right: 3rem;
	position: relative;
}
.palette_item_hd span:after{
	content: '';
	position: absolute;
	left: 100%;
	top: 50%;
	width: 100vw;
	height: 1px;
	background: #707070;
}
.palette_item_box{
	margin-top: 2rem;
	background: #FEFFE6;
	padding: 2.5rem 3.6rem;
}
.palette_item_box span{
	color: #126D7B;
}

.palette_section+.palette_section{
	padding-top: 13rem;
}
.palette_sec02_img{
	margin-bottom: 2rem;
}
.common_txt a{
	text-decoration: underline;
}
.common_txt a:hover{
	text-decoration: none;
	opacity: 1;
}

.palette_dl02{
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.palette_dl02+.palette_dl02{
	margin-top: 4rem;
}
.palette_dl02_dt{
	width: 77rem;
}
.palette_dl02_dd{
	width: 36.7rem;
}
.palette_dl02 .ttl{
	font-size: 2rem;
	color: #126D7B;
	padding-bottom: 2.9rem;
	margin-bottom: 2.9rem;
	border-bottom: 1px solid #707070;
}
.palette_sec04_p01{
	margin-top: 5.5rem;
}

.palette_sec05_01+.palette_sec05_01{
	margin-top: 8.8rem;
}

.palette_table table{
	width: 100%;
}
.palette_table th,
.palette_table td{
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #707070;
	padding: 1rem .5rem;
	width: 16rem;
}
.palette_table th{
	width: auto;
	text-align: left;
}
.palette_table thead{
	background: #FEFFE6;
}
.palette_table th:first-of-type{
	border-left: 0;
}
.palette_table td:last-of-type{
	border-right: 0;
}

.palette_bottom{
	padding-bottom: 22rem;
}
.palette_contact_box a{
	display: block;
	position: relative;
}
.palette_contact_box a span{
	position: absolute;
	right: 1.7rem;
	bottom: -9.5rem;
	z-index: 1;
	width: 38.2rem;
}
.palette_contact_link{
	text-align: center;
	margin-top: 10.2rem;
}
.palette_contact_link a{
	display: inline-block;
	color: #126D7B;
	font-size: 2.7rem;
	text-decoration: underline;
}
.palette_contact_link a:hover{
	text-decoration: none;
	opacity: 1;
}

.palette_video{
	margin-top: 14rem;
}
.palette_video_link{
	text-align: center;
	margin-top: 5.4rem;
}
.palette_video_link a{
	display: inline-block;
	color: #126D7B;
	font-size: 2.7rem;
	text-decoration: underline;
	padding-right: 4.2rem;
	background: url(../img/palette/link_target.svg)no-repeat right center;
	background-size: 2.7rem auto;
}
.palette_video_link a:hover{
	text-decoration: none;
	opacity: 1;
}

/*top*/
.top_sec01{
	padding: 16.4rem 0 19.3rem;
	position: relative;
	z-index: 3;
}
.top_sec01_hd{
	font-size: 4.3rem;
	color: #126D7B;
	text-align: center;
	margin-bottom: 1.5rem;
}
.top_sec01_p01 {
	text-align: center;
	font-size: 1.9rem;
	line-height: 1.57;
}
.top_sec01 .palette_contact{
	margin-top: 5rem;
}

.top_sec02{
	padding: 9rem 0 13.7rem;
	background: url(../img/symlet/bg_sec01.jpg)no-repeat bottom center;
	background-size: 100% 100%;
	position: relative;
	text-align: center;
}
.top_sec02 .inner{
	max-width: 112rem;
}
.top_sec02:before{
	right: -74.3rem;
	bottom: 65.5rem;
}
.top_sec02:after{
	left: -127rem;
	bottom: auto;
	top: 48rem;
}
.top_sec02_hd{
	margin-bottom: 2rem;
}
.top_sec02_hd .eng{
	display: block;
	font-size: 2.9rem;
	color: #577C1F;
}
.top_sec02_hd .jap{
	font-size: 5.9rem;
}
.top_sec02_list{
	margin-top: 6rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	grid-gap: 7rem 57rem;
	position: relative;
	background: url(../img/top/before_logo.png)no-repeat center center;
	background-size: 97.7rem auto;
}
.top_sec02_list li{
	width: 21.6rem;
	position: relative;
}
.top_sec02_list .point{
	position: absolute;
	right: -1.3rem;
	top: 2.2rem;
	z-index: 9;
	width: 5.6rem;
	height: 5.6rem;
	border-radius: 50%;
	font-size: 2rem;
	background: #126D7B;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.top_sec02_list .img_box{
	padding-top: 21.6rem;
	border-radius: 50%;
}
.top_sec02_list .txt{
	margin: 1.5rem -2rem 0;
	font-size: 1.9rem;
	line-height: 1.42;
}
.top_sec02_list li.list_logo{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 40.8rem;
}

.top_sec03{
	padding: 10.6rem 0 13rem;
	position: relative;
}
.top_sec03:before{
	content: '';
	position: absolute;
	right: -137.7rem;
	top: -68.5rem;
	width: 198.9rem;
	height: 197.8rem;
	background: url(../img/symlet/before_sec01.png)no-repeat bottom center;
	background-size: 100% 100%;
	pointer-events: none;
}
.top_sec03_row{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.top_sec03_btn{
	margin-bottom: 2.4rem;
}
.top_sec03_btn .btn_link01{
	width: 17rem;
	height: 4.5rem;
	font-size: 1rem;
	background-position: right 1.3rem center;
}
.top_sec03_list{
	display: flex;
	flex-wrap: wrap;

}
.top_sec03_list li{
	margin: -1px 0 0 -1px;
	width: 33.33%;
}
.top_sec03_list li.half_li{
	width: calc(50% - 1px);
}
.top_sec03_list a{
	display: block;
	border: 1px solid #CBCBCB;
	background: #fff;
	position: relative;
	opacity: 1!important;
}
.top_sec03_list .ttl{
	position: absolute;
	top: 3.4rem;
	left: 3.4rem;
	z-index: 9;
	font-size: 2rem;
}
.top_sec03_list .img_box{
	width: 32.8rem;
	max-width: 100%;
	padding-top: 32.8rem;
	margin: 0 auto;
}
.top_sec03_list .btn {
    position: absolute;
    z-index: 9;
    right: 2.5rem;
    bottom: 3.4rem;
    background: url(../img/common/arrow_bg_yellow.svg) no-repeat right center;
    background-size: auto 100%;
    min-height: 3.2rem;
    display: flex;
    align-items: center;
    padding-right: 4.5rem;
    font-size: 1.4rem;
    font-weight: 500;
}

.top_sec04{
	position: relative;
	padding: 25.8rem 0 30.8rem;
    background: url(../img/top/bg_sec04.jpg) no-repeat center center;
    background-size: cover;
    border-radius: 12.5rem;
}
.top_sec04 .inner{
	max-width: 160rem;
}
.loop_txt {
  background: url(../img/top/txt_flow.svg) repeat-x left center/auto 100%;
  height: 20.4rem;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;

  z-index: 7;
  -webkit-animation: flowBgLeft 1500s linear infinite;
          animation: flowBgLeft 1500s linear infinite;
}
@-webkit-keyframes flowBgLeft {
  0% {
    background-position: left 0 center;
  }
  100% {
    background-position: left -100000px center;
  }
}
@keyframes flowBgLeft {
  0% {
    background-position: left 0 center;
  }
  100% {
    background-position: left -100000px center;
  }
}
.top_sec04_list{
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: 8.3rem;
}
.top_sec04_list a{
	display: block;
	height: 100%;
	background: #fff;
	opacity: 1!important;
}
.top_sec04_list .img_box{
	padding-top: 30.7rem;
}
.top_sec04_list .cont{
	padding: 3rem 4.8rem;
}
.top_sec04_list .ttl{
	font-size: 2.6rem;
	color: #126D7B;
	margin-bottom: 1.7rem;
}
.top_sec04_list .txt{
	font-size: 1.6rem;
	line-height: 1.875;
}
.top_sec04_list .btn{
	margin-top: 1.7rem;
}

.top_sec05{
	padding-top: 14.6rem;
}
.top_sec05 .hd_s{
	margin-bottom: 4.5rem;
}
.top_sec05_slider_item{
	width: 44.5rem;
	max-width: 44.5rem;
}
.top_sec05_slider_item a{
	display: block;
	color: #fff;
	opacity: 1!important;
	position: relative;
}
.top_sec05_slider_item .img_box{
	padding-top: 82.28%;
}
.top_sec05_slider_item .ttl{
	font-size: 2.7rem;
	line-height: 1.44;
	position: absolute;
	left: 3.5rem;
	top: 4.4rem;
	z-index: 2;
}
.top_sec05_slider_item .btn{
	position: absolute;
	z-index: 2;
	right: 2.26rem;
	bottom: 2.4rem;
	background: url(../img/common/arrow_bg_white.svg)no-repeat right center;
	background-size: auto 100%;
	min-height: 3.2rem;
	display: flex;
	align-items: center;
	padding-right: 4.5rem;
	font-size: 1.4rem;
	font-weight: 500;
}

.top_sec05_slider .slick-list{
	overflow: visible;
}
.top_sec05_slider .slick-arrow {
    border: 0;
    text-indent: -9999px;
    cursor: pointer;
}
.top_sec05_slider .slick-prev,
.top_sec05_slider .slick-next{
    position: absolute;
    width: 7.6rem;
    height: 7.6rem;
    z-index: 3;
    background: url(../img/top/slick_prev.svg)no-repeat;
    background-size: 100% auto;
    left: auto;
    top: auto;
    right: 8.3rem;
    bottom: calc(100% + 4.5rem);
    transform: translateY(0%);
}
.top_sec05_slider .slick-next{
    right: 0;
    background: url(../img/top/slick_next.svg)no-repeat;
    background-size: 100% auto;
}

.top_sec06{
	padding: 8.6rem 0 8.3rem;
}
.top_sec06 .inner{
	display: flex;
	justify-content: space-between;
}
.top_sec05_left{
	padding-top: 2.8rem;
	width: 28.4rem;
}
.top_sec05_right{
	width: 91.6rem;
}
.top_sec06_btn{
	margin-top: 2.8rem;
}

.anchor_link{
    position: relative;
}
.anchor_link span{
    position: absolute;
    top: -12.4rem;
}

/*1028*/
.product05_cont{
	margin-top: 9rem;
	border-top: 1px solid #707070;
}
.product05_item{
	padding: 3rem 0;
	border-bottom: 1px solid #707070;
}
.product05_list{
	display: grid;
	grid-gap: 1.8rem;
}
.product05_list .ttl{
	color: #126D7B;
	font-size: 2.2rem;
	font-weight: bold;
}
.product05_p01,
.product05_list .txt{
	font-size: 1.6rem;
}
.product05_list .note{
	font-size: 1.2rem;
}