#mainvisual .mv_area .img_area { width: 100%; height: auto; aspect-ratio: 1440 / 729; border-top-left-radius: 250px; overflow: hidden; position: relative; }
#mainvisual .mv_area .img_area .main_img { width: 100%; position: absolute; top: 0; left: 0; opacity: 0; transition-duration: 1s; }
#mainvisual .mv_area .img_area .main_img.show { opacity: 1; }
#mainvisual .mv_area .img_area img { display: block; width: 100%; height: auto; }

#quality { margin-top: 10rem; }
#quality .quality_top { background: linear-gradient(180deg, #07a33e 0%, #07a33e 50%, #37b94f 50%, #37b94f 100%); }
#quality .quality_top .quality_inner { padding-bottom: 9rem; background: #eff4f0; border-top-right-radius: 18rem; border-bottom-left-radius: 18rem; }
#quality .quality_top .quality_top_wrap { display: flex; flex-wrap: wrap; flex-direction: row-reverse; align-items: flex-end; }
#quality .quality_top .txt_area { width: 50%; padding: 0 0 3%; }
#quality .quality_top .img_area { width: 50%; transform: translateY(-15%); position: relative; }
#quality .quality_top .img_area .quality_btn { width: 45%; padding: 1.5rem 4rem 1.5rem 1rem; font-size: 1.8rem; transform: translateY(50%); position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; }
#quality .quality_top .quality_icon_list { margin-top: 3rem; border-left: 1px solid #07a33e; display: flex; align-items: flex-end; }
#quality .quality_top .quality_icon_list li { width: calc(100% / 3); padding: 2rem; border-right: 1px solid #07a33e; }
#quality .quality_top .quality_icon_list .qua_img { width: 70%; height: auto; aspect-ratio: 1 / 1; margin: 0 auto; display: flex; justify-content: center; align-items: center; }
#quality .quality_top .quality_icon_list .qua_ttl { margin-top: 1rem; font-size: 1.8rem; font-weight: 600; text-align: center; line-height: 1.2; height: 2em; display: flex; justify-content: center; align-items: flex-end; }
#quality .quality_top .quality_icon_list .quality_btn { margin-top: 2.5rem; }
#quality .quality_top .quality_catch { width: auto; height: 95%; aspect-ratio: 45 / 320; transform: translateX(50%); position: absolute; top: 0; right: 0; }
#quality .quality_ttl { font-size: 4rem; font-weight: 900; margin-bottom: 1.5em; }
#quality .quality_ttl span { color: #07a33e; }
#quality .quality_img { border-radius: 50px; overflow: hidden; }
#quality .quality_btn { display: block; width: 60%; margin: 0 auto; padding: 1.2rem 3.6rem 1.2rem 1rem; font-size: 1.4rem; font-weight: 500; text-align: center; background: #fff url(/english/common/img/icon_arrow_cgr01.png) no-repeat center right 1.5rem/3rem; border-radius: 40px; box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.4); }
#quality .quality_btn:hover { color: #fff; background-image: url(/english/common/img/icon_arrow_cwr01.png); background-color: #42ac96; }
#quality .quality_btm { padding-right: 2rem; background: #eff4f0; }
#quality .quality_btm .quality_inner { padding: 8rem 0 2rem; background: linear-gradient(90deg, #37b94f 0%, #37b94f 20%, #77d385 50%, #37b94f 100%); border-bottom-right-radius: 3rem; }
#quality .quality_btm .quality_btm_wrap { display: flex; justify-content: space-between; align-items: flex-start; }
#quality .quality_btm .img_area { width: 40%; position: relative; }
#quality .quality_btm .img_area .quality_btn { width: 55%; padding: 1.5rem 4rem 1.5rem 1rem; font-size: 1.8rem; transform: translateY(50%); position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; }
#quality .quality_btm .quality_ttl { text-align: right; }
#quality .quality_btm .quality_img { border-radius: 30px; }
#quality .quality_btm .quality_img_list { width: 55%; display: flex; justify-content: space-between; }
#quality .quality_btm .quality_img_list li { width: 46%; }
#quality .quality_btm .quality_img_list li a { display: block; }
#quality .quality_btm .quality_img_list li a:hover .qua_img img { transform: scale(1.1); }
#quality .quality_btm .quality_img_list li a:hover .qua_ttl { color: #fff; }
#quality .quality_btm .quality_img_list .qua_img { border: 2px solid #fff; border-top-left-radius: 30px; border-bottom-right-radius: 15px; overflow: hidden; }
#quality .quality_btm .quality_img_list .qua_img img { transition-duration: 0.5s; }
#quality .quality_btm .quality_img_list .qua_ttl { font-size: 1.8rem; text-align: center; margin-top: .5em; }

#ir_area { padding-top: 8rem; position: relative; }
#ir_area::before { content: ''; width: 45%; height: auto; aspect-ratio: 1 / 0.1; background-color: #eff4f0; border-bottom-left-radius: 18rem; position: absolute; top: 0; right: 0; }
#ir_area .ir_ttl { font-size: 4rem; font-weight: 900; }
#ir_area .ir_img { border-radius: 30px; overflow: hidden; }
#ir_area .ir_btn { display: block; width: 80%; margin: 0 auto; padding: 1.2rem 3.6rem 1.2rem 1rem; font-size: 1.4rem; font-weight: 500; text-align: center; background: #fff url(/english/common/img/icon_arrow_cgr01.png) no-repeat center right 1.5rem/3rem; border-radius: 40px; box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.4); }
#ir_area .ir_btn:hover { color: #fff; background-image: url(/english/common/img/icon_arrow_cwr01.png); background-color: #42ac96; }
#ir_area .ir_wrap { display: flex; justify-content: space-between; align-items: center; }
#ir_area .img_area { width: 40%; position: relative; }
#ir_area .img_area .ir_btn { width: 55%; padding: 1.5rem 4rem 1.5rem 1rem; font-size: 1.8rem; transform: translateY(50%); position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; }
#ir_area .ir_icon_list { width: 50%; }
#ir_area .ir_icon_list li { margin: 1.5em 0; }
#ir_area .ir_icon_list li:nth-child(1) a { border-bottom-right-radius: 0; }
#ir_area .ir_icon_list li:nth-child(2) a { border-top-right-radius: 0; }
#ir_area .ir_icon_list a { padding: 2em 3em; background: #f4f5f4 url(/english/common/img/icon_arrow_cgr01.png) no-repeat center right 3rem/2.5rem; border: 1px solid #07a33e; border-radius: 30px; display: flex; align-items: center; }
#ir_area .ir_icon_list a:hover { color: #fff; background-color: #2d8673; }
#ir_area .ir_icon_list .txt { font-size: 2rem; font-weight: 500; margin-left: 2em; }
#ir_area .ir_icon_list .icon01 { max-width: 49px; }
#ir_area .ir_icon_list .icon02 { max-width: 46px; }

#news { margin: 12rem 0; padding-top: 8rem; position: relative; }
#news::before { content: ''; width: auto; height: 75%; aspect-ratio: 684 / 583; background: url(../img/news_img.jpg) no-repeat center/100%; border-bottom-right-radius: 5rem; position: absolute; bottom: -4rem; left: 0; z-index: -1; }
#news::after { content: ''; width: 68%; height: 100%; background-color: #fff; border-top-left-radius: 10rem; border-top-right-radius: 18rem; border-bottom-left-radius: 18rem; box-shadow: 2px -2px 6px 0 rgba(0, 0, 0, 0.2); position: absolute; top: 0; right: 0; z-index: -1; }
#news .news_wrap { display: flex; justify-content: space-between; }
#news .ttl_area { width: 20%; }
#news .news_area { width: 60%; }
#news .btn_area { width: 40%; margin: 1rem 0 0 auto; transform: translateY(50%); }
#news .news_ttl { font-size: 4rem; font-weight: 900; }
#news .news_list { border-top: 1px solid #e5e5e3; }
#news .news_list li { border-bottom: 1px solid #e5e5e3; }
#news .news_list a { display: block; padding: 3rem 1rem; background: url(/english/common/img/icon_arrow_gr03.png) no-repeat center right 1.5rem/2.4rem; }
#news .news_list a:hover { background-color: #eff4f0; }
#news .news_list .news_txt { margin-top: 1rem; padding-right: 2em; font-size: 1.6rem; }
#news .news_list .news_txt.pdf::after { content: ''; display: inline-block; width: 1.2em; height: auto; aspect-ratio: 38 / 48; background: url(/english/common/img/icon_pdf.png) no-repeat center/100%; transform: translate(0.5em, 0.2em); }
#news .news_list .news_date { display: inline-block; margin-right: 1rem; font-size: 1.5rem; font-weight: bold; }
#news .news_list .news_icon { display: inline-block; color: #fff; padding: 0.2rem 1rem; font-size: 1.4rem; border-radius: 5px; }
#news .news_list .news_icon.col_pink { background-color: #fb505d; }
#news .news_list .news_icon.col_blue { background-color: #4b8cd5; }
#news .news_list .news_icon.col_green { background-color: #07a33e; }
#news .news_btn { width: 100%; color: #fff; font-size: 1.8rem; font-weight: bold; padding: 1.2rem 4.8rem 1.2rem 1.5rem; background: url(/english/common/img/icon_arrow_cwr01.png) no-repeat center right 1.5rem/3rem; border-radius: 40px; display: flex; justify-content: center; align-items: center; }
#news .news_btn.col_green { background-color: #07a33e; background-image: url(/english/common/img/icon_arrow_cwr01.png); }
#news .news_btn.col_green:hover { background-color: #045d23; }

@media screen and (min-width: 768px) and (max-width: 1240px) { #quality .quality_top .quality_txt { font-size: 1.5vw; }
  #quality .quality_top .quality_icon_list .qua_ttl { font-size: 1.5vw; }
  #quality .img_area .quality_btn { font-size: 1.5vw; }
  #quality .quality_btn { font-size: 1.16vw; background-size: 2.5vw; background-position: center right 1rem; }
  #quality .quality_btm .quality_img_list .qua_ttl { font-size: 1.5vw; padding: 1.2rem 3rem 1.2rem 1rem; background-size: 2.5vw; background-position: center right 1rem; }
  #ir_area .ir_icon_list .txt { font-size: 1.5vw; }
  #news::after { width: 65%; }
  #news .ttl_area { padding-left: 1.5rem; }
  #news .news_list .news_txt { font-size: 1.33vw; }
  #news .news_list .news_date { font-size: 1.25vw; }
  #news .news_list .news_icon { font-size: 1.16vw; }
  #news .btn_area { width: 80%; }
  #news .news_btn { font-size: 1.5vw; }
  #news .news_btn.col_green { width: 55%; }
  #news .news_btn.col_pink { width: 45%; } }
@media screen and (min-width: 768px) and (max-width: 1140px) { .inner.narrow { width: 90%; } }
@media screen and (max-width: 767px) { #mainvisual .mv_area { position: relative; }
  #mainvisual .mv_area .img_area { aspect-ratio: 749 / 1050; /*border-top-left-radius: 100px;*/ border-top-left-radius: 0; }
  #mainvisual .mv_area .img_area::before { content: ''; width: 10rem; height: auto; aspect-ratio: 1 / 1; background: url(../img/mask.png) no-repeat center/contain; position: absolute; top: 0; left: 0; z-index: 5; }
  #quality { margin-top: 33.6vw; }
  #quality .quality_top { background: linear-gradient(180deg, #07a33e 0%, #07a33e 50%, #37b94f 50%, #37b94f 100%); }
  #quality .quality_top .quality_inner { padding-bottom: 19.8vw; border-top-right-radius: 87px; border-bottom-left-radius: 87px; }
  #quality .quality_top .quality_top_wrap { display: block; }
  #quality .quality_top .txt_area { width: 100%; padding: 0 5%; }
  #quality .quality_top .img_area { width: 90%; transform: translateY(-50%); margin-bottom: -10vw; }
  #quality .quality_top .img_area .quality_btn { width: 80%; padding: 1.2rem 3rem 1.2rem 1rem; font-size: 3.7vw; }
  #quality .quality_top .quality_icon_list { margin-top: 0; border-left: none; flex-wrap: wrap; }
  #quality .quality_top .quality_icon_list li { width: 100%; padding: 0 0 8vw; border-right: none; display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid #07a33e; }
  #quality .quality_top .quality_icon_list li:last-child { border-bottom: none; }
  #quality .quality_top .quality_icon_list li:last-child .qua_img img { width: 100%; }
  #quality .quality_top .quality_icon_list .qua_img { width: 48%; margin: 0; align-items: flex-end; }
  #quality .quality_top .quality_icon_list .qua_img img { width: 85%; }
  #quality .quality_top .quality_icon_list .qua_ttl { height: auto; display: block; font-size: 4.6vw; text-align: left; }
  #quality .quality_top .quality_icon_list .quality_btn { margin: 6vw auto 0 0; }
  #quality .quality_top .quality_icon_list .list_txt_area { width: 45%; }
  #quality .quality_ttl { font-size: 6.4vw; margin: 1em 0 0; }
  #quality .quality_img { border-radius: 25px; }
  #quality .quality_btn { width: 75%; padding: 1rem 3.6rem 1rem 1rem; font-size: 3.2vw; font-weight: bold; background-size: 6.6vw auto; background-position: center right 1rem; }
  #quality .quality_btm .quality_inner { padding: 16vw 0 8vw; background: linear-gradient(180deg, #37b94f 0%, #37b94f 20%, #77d385 50%, #37b94f 100%); border-bottom-right-radius: 15px; }
  #quality .quality_btm .quality_btm_wrap { display: block; }
  #quality .quality_btm .img_area { width: 100%; }
  #quality .quality_btm .img_area .quality_btn { width: 60%; padding: 1.2rem 3rem 1.2rem 1rem; font-size: 3.7vw; }
  #quality .quality_btm .quality_img { border-radius: 15px; }
  #quality .quality_btm .quality_img_list { margin: 5rem auto 0; width: 95%; }
  #quality .quality_btm .quality_img_list li { width: 47%; }
  #quality .quality_btm .quality_img_list .qua_img { border-width: 1px; border-top-left-radius: 15px; border-bottom-right-radius: 8px; }
  #quality .quality_btm .quality_img_list .qua_ttl { font-size: 3.7vw; }
  #ir_area { padding: 16vw 0 0; }
  #ir_area::before { width: 60%; aspect-ratio: 1 / 0.2; border-bottom-left-radius: 87px; }
  #ir_area .ir_ttl { font-size: 6.4vw; }
  #ir_area .ir_img { border-radius: 15px; }
  #ir_area .ir_wrap { display: block; }
  #ir_area .img_area { margin: 3rem 0 0; width: 100%; }
  #ir_area .img_area .ir_btn { width: 45%; padding: 1.2rem 3rem 1.2rem 1rem; font-size: 3.7vw; background-size: 6.6vw auto; background-position: center right 1rem; }
  #ir_area .ir_icon_list { margin: 6rem 0 0; width: 100%; }
  #ir_area .ir_icon_list li { margin: 1em 0 0; }
  #ir_area .ir_icon_list li:nth-child(1) a { border-bottom-right-radius: 0; }
  #ir_area .ir_icon_list li:nth-child(2) a { border-top-right-radius: 0; }
  #ir_area .ir_icon_list a { padding: 1em 1.5em; background-size: 4.6vw auto; background-position: center right 1.5rem; border-radius: 15px; }
  #ir_area .ir_icon_list .txt { font-size: 3.7vw; margin-left: 1.5em; }
  #ir_area .ir_icon_list .icon01 { max-width: 29px; }
  #ir_area .ir_icon_list .icon02 { max-width: 27.5px; }
  #news { margin: 16vw 0 8vw; padding-top: 0; }
  #news::before { content: none; }
  #news::after { content: none; }
  #news .news_wrap { display: block; }
  #news .ttl_area { width: 100%; padding: 0 0 58vw; position: relative; }
  #news .ttl_area::before { content: ''; width: 98%; height: auto; aspect-ratio: 684 / 409; background: url(../img/news_img_sp.jpg) no-repeat center/100%; border-top-right-radius: 25px; border-bottom-right-radius: 25px; position: absolute; bottom: 0; left: -1.5rem; z-index: -1; }
  #news .news_area { width: 100%; padding: 10vw 0 10vw 8vw; background-color: #fff; border-top-left-radius: 50px; border-bottom-left-radius: 87px; box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.4); transform: translate(1.5rem, -2rem); }
  #news .btn_area { width: 60%; margin: 2rem auto 0; transform: translateY(0); }
  #news .news_ttl { font-size: 6.4vw; text-align: left; }
  #news .news_list a { padding: 1rem 1rem 1rem 0; background: url(/english/common/img/icon_arrow_gr03.png) no-repeat center right 1.5rem/2.4rem; background-size: 3.7vw auto; }
  #news .news_list a:hover { background-color: #eff4f0; }
  #news .news_list .news_txt { margin-top: 0.5rem; font-size: 3.6vw; line-height: 1.3; }
  #news .news_list .news_date { margin-right: 0.5rem; font-size: 3.2vw; }
  #news .news_list .news_icon { padding: 0.2rem 0.8rem; font-size: 2.6vw; }
  #news .news_btn { font-size: 3.4vw; padding: 1rem 3.2rem 1rem 1rem; background-size: 1.5rem; background-position: center right 1rem; } }

/*# sourceMappingURL=top.css.map */
