@charset "UTF-8";
/* CSS Document */
/*--------------------
01.top
02.company
03.blog
03-01.blog_detail
04.privacy
05.contact
05-01.contact_confirm
05-02.contact_thanks
06.error_page
--------------------*/

/*----------
01.top
----------*/
#top {
color: #676767;
}

#top #top_mv_area {
margin-top: 84px;
}

#top #top_mv_area .contents_in {
position: relative;
padding: 80px 0 85px;
}

#top #top_mv_area .contents_in .bg_img {
position: absolute;
max-width: 635px;
width: 60%;
top: 50%;
transform: translateY(-47%);
right: -50px;
z-index: -1;
}

#top #top_mv_area .contents_in .bg_img img {
animation: 80s linear infinite rotation1;
}

@keyframes rotation1{
  0%{ transform:rotate(0);
	}
  100%{ transform:rotate(360deg);
	}
}

#top #top_mv_area .contents_in .bg_line01 {
position: absolute;
width: 390px;
top: 15px;
left: -32%;
z-index: -1;
}

#top #top_mv_area .contents_in .bg_line02 {
position: absolute;
width: 390px;
top: -150px;
right: -34%;
z-index: -1;
}

#top #top_mv_area .contents_in .bg_line03 {
position: absolute;
width: 390px;
bottom: -208px;
left: -15%;
z-index: -1;
}

#top #top_mv_area .cnt_g {
max-width: 431px;
}

#top #top_mv_area .cnt_g h2 {
font-size: 38px;
line-height: 1;
font-weight: 700;
letter-spacing: 0.3px;
color: #17AC12;
margin-bottom: 49px;
}

#top #top_mv_area .cnt_g h2.inview {
opacity: 0;
transform: translateY(100px);
}

#top #top_mv_area .cnt_g h2.inview.is_show {
animation-name: InViewAnime_h2;
animation-duration: 1.6s;
animation-fill-mode:forwards;
animation-delay: 0.4s;
}

@keyframes InViewAnime_h2{
from {
opacity: 0;
transform: scale(0.4);
}

to {
opacity: 1;
transform: scale(1);
}
}

#top #top_mv_area .cnt_g h2 span {
font-size: 28px;
font-weight: 500;
letter-spacing: 0;
display: block;
margin-bottom: 12px;
}

#top #top_mv_area .cnt_g .cnt_list li {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 20px;
}

#top #top_mv_area .cnt_g .cnt_list li:last-child {
margin-bottom: 0;
}

#top #top_mv_area .cnt_g .cnt_list li.inview {
opacity: 0;
transform: translateY(100px);
}

#top #top_mv_area .cnt_g .cnt_list li.inview.is_show {
animation-name: InViewAnime_li;
animation-duration: 01s;
animation-fill-mode:forwards;
animation-delay: 2s;
}

#top #top_mv_area .cnt_g .cnt_list li:nth-child(2).inview.is_show {
animation-delay: 2.3s;
}

#top #top_mv_area .cnt_g .cnt_list li:nth-child(3).inview.is_show {
animation-delay: 2.6s;
}

@keyframes InViewAnime_li{
from {
opacity: 0;
transform: translateY(20%);
}

to {
opacity: 1;
transform: translateY(0);
}
}

#top #top_mv_area .cnt_g .cnt_list li .cnt_img {
max-width: 100px;
margin-right: 20px;
}

#top #top_mv_area .cnt_g .cnt_list li .cnt_text .title_text {
font-size: 22px;
line-height: 1;
font-weight: 500;
letter-spacing: 0.25px;
color: #66B94F;
margin-bottom: 15px;
}

#top #top_mv_area .cnt_g .cnt_list li .cnt_text p {
font-size: 14px;
line-height: 22px;
letter-spacing: 0.25px;
}

#top #direct_area {
background: #FFE062;
color: #000000;
padding: 15px 0 16px;
/*margin-bottom: 126px;*/
position: fixed;
bottom: 0;
left: 0;
width: 100%;
z-index: 5;
}

#top #direct_area .contents_in {
max-width: 1180px;
width: 96%;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
}

#top #direct_area .h2_title {
font-size: 22px;
line-height: 42px;
font-weight: 700;
min-width: 435px;
margin: 0 auto;
text-align: center;
}

#top #direct_area .cnt_g {
display: flex;
align-items: center;
justify-content: space-between;
max-width: 741px;
width: 100%;
margin: 0 auto;
}

#top #direct_area .tel_box {
display: flex;
align-items: center;
justify-content: space-between;
min-width: 252px;
margin-right: 10px;
}

#top #direct_area .tel_box .cnt_img {
max-width: 45px;
}

#top #direct_area .tel_box .cnt_text {
font-size: 12px;
line-height: 1;
letter-spacing: 0.2px;
}

#top #direct_area .tel_box .cnt_text a {
font-size: 30px;
line-height: 1;
font-weight: 700;
color: #000000;
display: block;
text-align: center;
}

#top #direct_area .btn_box {
display: flex;
align-items: center;
justify-content: space-around;
max-width: 450px;
width: 69%;
}

#top #direct_area .btn_box .btn_ptn02 {
max-width: 220px;
min-width: 200px;
height: 49px;
margin: 5px 0;
}

#top #direct_area .btn_box .btn_ptn02::before {
border-radius: 4px;
width: calc(100% - 10px);
height: calc(100% - 10px);
}

#top #direct_area .btn_box .btn_ptn02 a {
font-size: 16px;
width: calc(100% - 6px);
border-radius: 4px;
padding: 11px 0 12px;
}

#top #direct_area .btn_box .btn_ptn02 a:hover {
transform: translateX(6px)translateY(6px);
}

#top #about_area {
padding: 200px 0 130px;
position: relative;
}

#top #about_area .bg_img01 {
width: 100%;
position: absolute;
top: -50px;
right: 0;
z-index: -2;
}

#top #about_area .cnt_g {
display: flex;
align-items: center;
justify-content: space-between;
}

#top #about_area .cnt_g .cnt_text {
max-width: 428px;
}

#top #about_area .cnt_g .cnt_text .h2_title_ptn01 .big{
font-size: 40px;
}

#top #about_area .cnt_g .cnt_text p {
font-size: 16px;
line-height: 35px;
font-weight: 500;
letter-spacing: 0.25px;
margin-bottom: 25px;
}

#top #about_area .cnt_g .cnt_text .point_text {
font-size: 34px;
line-height: 1;
font-weight: 300;
letter-spacing: 0.5px;
color: #E07000;
}

#top #about_area .cnt_g .cnt_text .point_text .cnt_img {
width: 12px;
margin: 0 15px 4px;
display: inline-block;
}

#top #about_area .cnt_g .cnt_slider {
max-width: 540px;
width: 50%;
}

#top #about_area .cnt_g .slider_list {
max-width: 540px;
}

#top #about_area .cnt_g .slider_list li img {
border-radius: 5px;
}

#top #about_area .cnt_g .slick-dots {
width: fit-content;
margin: 0 auto;
position: absolute;
left: -30px;
bottom: 0;
}

#top #about_area .cnt_g .slick-dots li {
position: relative;
display: block;
width: 10px;
height: 10px;
margin: 0 0 18px;
padding: 0;
cursor: pointer;
}

#top #about_area .cnt_g .slick-dots li:last-child {
margin: 0;
}

#top #about_area .cnt_g .slick-dots li button {
font-size: 0;
line-height: 0;
display: block;
width: 10px;
height: 10px;
padding: 0;
cursor: pointer;
color: transparent;
border: 0;
outline: none;
background: transparent;
}

#top #about_area .cnt_g .slick-dots li button:before {
content: '';
position: absolute;
background: rgba(159,159,159,0.25);
top: 0;
left: 0;
width: 10px;
height: 10px;
border-radius: 50%;
}

#top #about_area .cnt_g .slick-dots li.slick-active button:before{
background: #17AC12;
}

#top #feature_area {
padding: 120px 0 140px;
margin-top: -120px;
}
/*
#top #feature_area .h3_title_ptn01 {
margin: 0 auto 81px;
padding: 0 0 30px;
max-width: 519px;
width: 100%;
text-align: center;
}

#top #feature_area .h3_title_ptn01::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 0;
}

#top #feature_area .h3_title_ptn01 .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
}
*/
#top #feature_area .h3_title_box {
margin: 0 auto 81px;
max-width: 520px;
width: 100%;
}

#top #feature_area .h3_title_box::before {
position: absolute;
content: "";
background: #17AC12;
width: 100%;
height: 0.5px;
bottom: 0;
left: 0;
transform-origin: top center;
transform: scale(0, 1);
transition: transform 2.2s;
}

#top #feature_area .h3_title_box.is_draw::before {
transform-origin: top center;
transform: scale(1, 1);
}

#top #feature_area .h3_title_box .h3_title_ptn01 {
padding: 0 0 30px;
width: 100%;
text-align: center;
}

#top #feature_area .h3_title_box .h3_title_ptn01::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 50%;
transition: 2.2s;
}

#top #feature_area .h3_title_box.is_draw .h3_title_ptn01::before{
left: -6px;
}

#top #feature_area .h3_title_box .h3_title_ptn01::after {
left: 50%;
}

#top #feature_area .h3_title_box.is_draw .h3_title_ptn01::after {
left: 100%;
}

#top #feature_area .h3_title_box .h3_title_ptn01 .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
}

#top #feature_area .cnt_g {
display: flex;
align-items: stretch;
justify-content: space-between;
max-width: 844px;
margin: 0 auto;
}

#top #feature_area .cnt_g .cnt_box {
max-width: 241px;
width: 31%;
}

#top #feature_area .cnt_g .cnt_box .point_text {
background: #A6D319;
border-radius: 5px;
color: #FFFFFF;
font-size: 14px;
line-height: 1;
font-weight: 500;
letter-spacing: 0.5px;
text-align: center;
padding: 8px 0 9px;
max-width: 112px;
margin: 0 auto 26px;
position: relative;
}

#top #feature_area .cnt_g .cnt_box .point_text::before {
position: absolute;
content: "";
background: url("../img/top/icon_arrow01.png")no-repeat center/contain;
width: 12px;
height: 10px;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
}

#top #feature_area .cnt_g .cnt_box .inview {
opacity: 0;
transform: translateY(100px);
}

#top #feature_area .cnt_g .cnt_box .inview.is_show {
animation-name:fadeUpAnime;
animation-duration: 1.6s;
animation-fill-mode:forwards;
}
@keyframes fadeUpAnime{
from {
opacity: 0;
transform: translateY(60px);
}

to {
opacity: 1;
transform: translateY(0);
}
}

#top #feature_area .cnt_g .cnt_box .delay_time01{
animation-delay: 0.3s;
}

#top #feature_area .cnt_g .cnt_box .delay_time02{
animation-delay: 1s;
}

#top #feature_area .cnt_g .cnt_box .delay_time03{
animation-delay: 1.7s;
}

#top #feature_area .cnt_g .cnt_box .cnt_img {
max-width: 110px;
margin: 0 auto 26px;
}

#top #feature_area .cnt_g .cnt_box .title_text {
font-size: 16px;
line-height: 1;
font-weight: 700;
letter-spacing: 0.25px;
color: #17AC12;
text-align: center;
margin-bottom: 5px;
}

#top #feature_area .cnt_g .cnt_box p {
font-size: 12px;
line-height: 22px;
font-weight: 500;
letter-spacing: 0.25px;
color: #676767;
margin-bottom: 10px;
}

#top #feature_area .cnt_g .cnt_box .item_list {
font-size: 14px;
line-height: 30px;
font-weight: 700;
letter-spacing: 0.25px;
color: #17AC12;
}

#top #feature_area .cnt_g .cnt_box .item_list li {
padding-left: 16px;
position: relative;
}

#top #feature_area .cnt_g .cnt_box .item_list li::before {
position: absolute;
content: "";
background: #A6D319;
width: 6px;
height: 6px;
border-radius: 50%;
top: 13px;
left: 0;
}

/*モーダル*/
#top #feature_area .cnt_g .cnt_box .item_list .modal_btn input {
display: none;
}

#top #feature_area .cnt_g .cnt_box .item_list .btn_text, #top #feature_area .cnt_g .cnt_box .item_list .close_btn {
cursor: pointer;
}

#top #feature_area .cnt_g .cnt_box .item_list .btn_text {
color: #17AC12;
text-decoration: underline;
}

#top #feature_area .cnt_g .cnt_box .item_list .btn_text:hover {
cursor: pointer;
}

#top #feature_area .cnt_g .cnt_box .item_list .modal_wrap {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 11;
display: none;
}

#top #feature_area .cnt_g .cnt_box .item_list .modal_open:checked + label + input + .modal_wrap {
display: block;
/*animation: modal-001-animation .6s;*/
}

#top #feature_area .cnt_g .cnt_box .item_list .cnt_modal {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: 96%;
max-width: 1080px;
background-color: #FFFFFF;
z-index: 2;
border-radius: 5px;
}

#top #feature_area .cnt_g .cnt_box .item_list .close_btn {
/*background-color: #777;*/
background: #17AC12;
color: #fff;
border: 2px solid #fff;
border-radius: 20px;
width: 36px;
height: 36px;
line-height: 1.5;
text-align: center;
display: table-cell;
position: fixed;
top: -10px;
right: -10px;
z-index: 12;
font-size: 20px;
}

#top #feature_area .cnt_g .cnt_box .item_list .modal_in {
/*max-height: 90vh;*/
overflow-y: auto;
padding: 20px;
}

#top #feature_area .cnt_g .cnt_box .item_list .modal_bg {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .45);
z-index: 1;
}
/*
@keyframes modalAnimation {
  0% {
      opacity: 0;
  }
  100% {
      opacity: 1;
  }
}
*/

#top #feature_area .cnt_g .cnt_box .item_list .img_list {
display: flex;
align-items: stretch;
justify-content: flex-start;
flex-wrap: wrap;
width: 100%;
}

#top #feature_area .cnt_g .cnt_box .item_list .img_list .cnt_img {
max-width: 320px;
width: 25%;
padding: 10px;
margin: 0;
}

#top #feature_area .cnt_g .cnt_box .item_list .img_list .cnt_img::before {
display: none;
}

#top #photos_area {
padding: 0 0 123px;
position: relative;
}

#top #photos_area .cnt_g {
display: flex;
align-items: center;
justify-content: space-between;

}

#top #photos_area .cnt_g .cnt_text {
max-width: 428px;
}

#top #photos_area .cnt_g .cnt_text p {
font-size: 16px;
line-height: 35px;
font-weight: 500;
letter-spacing: 0.25px;
margin-bottom: 25px;
}

#top #photos_area .slider_g {
width: 50%;
position: absolute;
top: -7px;
right: -4%;
}

#top #photos_area .slider_list {
max-width: 690px;
}

#top #photos_area .slider_list li img {
border-radius: 5px;
}

#top #photos_area .slick-list {
padding: 0 30% 0 0!important;
}

#top #photos_area .slick-list li {
margin: 0 20px 0 0;
}

#top #photos_area .slick-dots {
width: fit-content;
margin: 0 auto;
position: absolute;
left: 0;
bottom: -18px;
}

#top #photos_area .slick-dots li {
position: relative;
display: inline-block;
width: 10px;
height: 10px;
margin: 0 18px 0 0;
padding: 0;
cursor: pointer;
}

#top #photos_area .slick-dots li:last-child {
margin: 0;
}

#top #photos_area .slick-dots li button {
font-size: 0;
line-height: 0;
display: block;
width: 10px;
height: 10px;
padding: 0;
cursor: pointer;
color: transparent;
border: 0;
outline: none;
background: transparent;
}

#top #photos_area .slick-dots li button:before {
content: '';
position: absolute;
background: rgba(159,159,159,0.25);
top: 0;
left: 0;
width: 10px;
height: 10px;
border-radius: 50%;
}

#top #photos_area .slick-dots li.slick-active button:before{
background: #17AC12;
}

#top #contact_area {
padding: 80px 0 160px;
}

/*----------
02.company
----------*/
#company #cnt_area01 {
padding: 90px 0 120px;
}

#company #cnt_area01 .h3_title_box {
margin: 0 auto 81px;
max-width: 340px;
width: 100%;
}

#company #cnt_area01 .h3_title_ptn01 {
padding: 0 0 30px;
text-align: center;
}

#company #cnt_area01 .h3_title_ptn01::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 0;
}

#company #cnt_area01 .h3_title_ptn01 .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
}

#company #cnt_area01 .cnt_g {
max-width: 850px;
margin: 0 auto;
border: solid #429640 1px;
border-radius: 10px;
}

#company #cnt_area01 .cnt_g .flex_box {
display: flex;
align-items:stretch;
justify-content: flex-start;
}

#company #cnt_area01 .cnt_g dt {
font-size: 16px;
line-height: 35px;
font-weight: 700;
color: #66B94F;
background: #F2F6F1;
min-width: 151px;
border-bottom: solid #429640 1px;
padding: 13px 15px 13px 30px;
}

#company #cnt_area01 .cnt_g .flex_box:first-child dt {
border-radius: 10px 0 0 0;
}

#company #cnt_area01 .cnt_g .flex_box:last-child dt {
border-radius: 0 0 0 10px;
border-bottom: none;
}

#company #cnt_area01 .cnt_g dd {
font-size: 16px;
line-height: 35px;
color: #343434;
border-bottom: solid #E2DED7 1px;
width: 100%;
padding: 13px 30px 13px 50px;
}
#company #cnt_area01 .cnt_g .flex_box:last-child dd {
border-bottom: none;
}

#company #cnt_area01 .cnt_g dd .map_btn {
font-size: 14px;
line-height: 1;
color: #17AC12;
background: #FFFFFF;
border: solid #17AC12 1px;
border-radius: 13px;
padding: 3px 10px 6px 23px;
position: relative;
margin-left: 17px;
display: inline-block;
}

#company #cnt_area01 .cnt_g dd .map_btn:hover {
background: #17AC12;
color: #FFFFFF
}

#company #cnt_area01 .cnt_g dd .map_btn::before {
position: absolute;
content: "";
background: url("../img/company/icon_map01.png")no-repeat center/contain;
width: 9px;
height: 12px;
top: 6px;
left: 10px;
}

#company #cnt_area01 .cnt_g dd .map_btn:hover::before {
background: url("../img/company/icon_map02.png")no-repeat center/contain;
}

#company #cnt_area01 .cnt_g dd .business_list li {
position: relative;
padding-left: 10px;
}

#company #cnt_area01 .cnt_g dd .business_list li::before {
position: absolute;
content: "";
background: #343434;
width: 3px;
height: 3px;
border-radius: 50%;
top: 17px;
left: 0;
}

#company #history_area {
background: #F8F6ED;
padding: 97px 0 180px;
}

#company #history_area .contents_in {
position: relative;
}
/*
#company #history_area .h3_title_ptn01 {
border-bottom: none;
text-align: center;
width: 100%;
padding: 0 0 30px;
}

#company #history_area .h3_title_ptn01::after {
display: none;
}

#company #history_area .h3_title_ptn01 .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
}
*/
#company #cnt_area01 .h3_title_box {
margin: 0 auto 81px;
max-width: 520px;
width: 100%;
}

#company #cnt_area01 .h3_title_box::before {
position: absolute;
content: "";
background: #17AC12;
width: 100%;
height: 0.5px;
bottom: 0;
left: 0;
transform-origin: top center;
transform: scale(0, 1);
transition: transform 2.2s;
}

#company #cnt_area01 .h3_title_box.is_draw::before {
transform-origin: top center;
transform: scale(1, 1);
}

#company #cnt_area01 .h3_title_box .h3_title_ptn01 {
padding: 0 0 30px;
width: 100%;
text-align: center;
}

#company #cnt_area01 .h3_title_box .h3_title_ptn01::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 50%;
transition: 2.2s;
}

#company #cnt_area01 .h3_title_box.is_draw .h3_title_ptn01::before{
left: -6px;
}

#company #cnt_area01 .h3_title_box .h3_title_ptn01::after {
left: 50%;
}

#company #cnt_area01 .h3_title_box.is_draw .h3_title_ptn01::after {
left: 100%;
}

#company #cnt_area01 .h3_title_ptn01 .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
}

#company #history_area .cnt_g {
position: relative;
}

#company #history_area .h3_title {
color: #17AC12;
font-size: 38px;
line-height: 1;
font-weight: 700;
letter-spacing: 1px;
/*border-bottom: solid #17AC12 0.5px;*/
position: relative;
margin: 0 auto 50px;
text-align: center;
}

#company #history_area .h3_title .title_en {
display: block;
text-align: center;
margin: 0 auto 10px;
color: #E07000;
font-size: 14px;
line-height: 1;
font-weight: 400;
letter-spacing: 0.5px;
font-family: 'Roboto', sans-serif;
}

#company #history_area .cnt_g dl {
max-width: 850px;
margin: 0 auto;
position: relative;
padding-bottom: 180px;
}

#company #history_area .cnt_g dl::before {
position: absolute;
content: "";
background: #17AC12;
width: 1px;
height: 100%;
top: 0;
left: 50%;
transform: translateX(50%);
}

#company #history_area .cnt_g .cnt_box {
width: 50%;
position: relative;
margin-bottom: 40px;
}

#company #history_area .cnt_g .cnt_box:last-child {
margin-bottom: 0;
}

#company #history_area .cnt_g .cnt_box::before {
position: absolute;
content: "";
background: #F8F6ED;
width: 16px;
height: 20px;
border-radius: 50%;
top: 5px;
z-index: 1;
}

#company #history_area .cnt_g .cnt_box.left::before {
right: -5px;
}

#company #history_area .cnt_g .cnt_box.right::before {
left: -5px;
}

#company #history_area .cnt_g .cnt_box::after {
position: absolute;
content: "";
background: #C5D6BE;
width: 100%;
height: 1px;
top: 15px;
left: 0;
}

#company #history_area .cnt_g .cnt_box.left{
text-align: right;
}

#company #history_area .cnt_g .cnt_box.right {
margin: 0 0 40px auto;
}

#company #history_area .cnt_g .cnt_box dt {
font-size: 20px;
line-height: 29px;
font-weight: 700;
color: #E07000;
background: #F8F6ED;
width: fit-content;
padding: 0 8px;
position: relative;
z-index: 1;
}

#company #history_area .cnt_g .cnt_box.left dt {
margin: 0 47px 0 auto;
}

#company #history_area .cnt_g .cnt_box.right dt {
margin: 0 auto 0 47px;
}

#company #history_area .cnt_g .cnt_box dt::before {
position: absolute;
content: "";
background: #17AC12;
width: 10px;
height: 10px;
border-radius: 50%;
top: 10px;
z-index: 2;
}

#company #history_area .cnt_g .cnt_box.left dt::before {
right: -53px;
}

#company #history_area .cnt_g .cnt_box.right dt::before {
left: -51px;
}

#company #history_area .cnt_g .cnt_box.point dt::before {
background: #E07000;
}

#company #history_area .cnt_g .cnt_box dd {
font-size: 16px;
line-height: 29px;
color: #5C5C5C;
padding: 20px 0;
position: relative;
}

#company #history_area .cnt_g .cnt_box.left dd {
margin: 0 57px 0 auto;
}

#company #history_area .cnt_g .cnt_box.right dd {
margin: 0 auto 0 57px;
}

#company #history_area .cnt_g .cnt_box dd .cnt_img {
max-width: 269px;
position: absolute;
bottom: -180px;
}

#company #history_area .cnt_g .cnt_box.left dd .cnt_img {
right: 0;
}

#company #history_area .cnt_g .cnt_box.right dd .cnt_img {
left: 0;
}

#company #history_area .cnt_g .bg_img08 {
position: absolute;
max-width: 41px;
bottom: -70px;
left: 50%;
transform: translateX(-50%);
}

#company #history_area .contents_in .bg_img01 {
position: absolute;
max-width: 615px;
top: 0;
left: -36%;
}

#company #history_area .contents_in .bg_img02 {
position: absolute;
max-width: 530px;
top: -130px;
right: -36%;
}

#company #history_area .contents_in .bg_img03 {
position: absolute;
max-width: 503px;
top: 34%;
left: -36%;
}

#company #history_area .contents_in .bg_img04 {
position: absolute;
max-width: 468px;
top: 18%;
right: -36%;
}

#company #history_area .contents_in .bg_img05 {
position: absolute;
max-width: 526px;
top: 70%;
left: -36%;
}

#company #history_area .contents_in .bg_img06 {
position: absolute;
max-width: 450px;
top: 45%;
right: -36%;
}

#company #history_area .contents_in .bg_img07 {
position: absolute;
max-width: 486px;
top: 85%;
right: -36%;
}

#company #history_area .fadeinup {
transform: translate(0, 140px);
opacity: 0;
transition: 1.6s;
}

#company #history_area .fadeinup.is_show {
transform: translate(0, 0);
opacity: 1;
}

/*----------
03.blog
----------*/
#blog .under_title_area .h2_title_ptn01::after {
background: url(../img/blog/h2_title_img.png)no-repeat center/contain;
width: 119px;
height: 138px;
bottom: 20px;
right: 52px;
}

#blog #cnt_area01 {
padding: 80px 0 120px;
}

#blog #cnt_area01 .cnt_g .blog_list {
max-width: 850px;
margin: 0 auto 70px;
}

#blog #cnt_area01 .cnt_g .blog_list li {
display: flex;
align-items: stretch;
justify-content: flex-start;
margin-bottom: 15px;
width: 100%;
}

#blog #cnt_area01 .cnt_g .blog_list li .date {
font-size: 16px;
line-height: 1;
color: #E07000;
border-bottom: solid #EFB67D 1px;
padding: 23px 20px 0 0;
}

#blog #cnt_area01 .cnt_g .blog_list li a {
font-size: 18px;
line-height: 32px;
font-weight: 500;
color: #343434;
padding: 15px 0 18px 10px;
width: 100%;
position: relative;
display: block;
}

#blog #cnt_area01 .cnt_g .blog_list li a::before {
position: absolute;
content: "";
background: #17AC12;
width: calc(100% - 6px);
height: 1px;
bottom: 0;
left: 0;
transition: 0.3s;
}

#blog #cnt_area01 .cnt_g .blog_list li a:hover::before {
width: calc(100% + 4px);
}


#blog #cnt_area01 .cnt_g .blog_list li a::after {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -2.5px;
right: 0;
transition: 0.3s;
}

#blog #cnt_area01 .cnt_g .blog_list li a:hover::after {
right: -10px;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi {
display: flex;
align-items: center;
width: fit-content;
margin: 0 auto;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .previouspostslink {
position: relative;
width: 40px;
height: 40px;
margin-right: 35px;
border: none;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .previouspostslink::before {
position: absolute;
content: "";
background: url("../img//blog/arrow_prev01.jpg")no-repeat center/contain;
width: 40px;
height: 40px;
top: 0;
left: 0;
border: none;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .previouspostslink:hover::before {
background: url("../img//blog/arrow_prev02.jpg")no-repeat center/contain;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .nextpostslink {
position: relative;
width: 40px;
height: 40px;
margin-left: 35px;
border: none;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .nextpostslink::before {
position: absolute;
content: "";
background: url("../img/blog/arrow_next01.jpg")no-repeat center/contain;
width: 40px;
height: 40px;
top: 0;
right: 0;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .nextpostslink:hover::before {
background: url("../img/blog/arrow_next02.jpg")no-repeat center/contain;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .page {
font-size: 18px;
line-height: 1;
color: #BABABA;
padding: 0 7px;
margin: 0 5px;
font-family: 'Roboto', sans-serif;
border: none;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .current {
font-size: 18px;
line-height: 1;
font-weight: 700;
color: #FFFFFF;
background: #17AC12;
border-radius: 5px;
width: 34px;
height: 34px;
text-align: center;
padding: 8px 0 6px;
margin: 0 5px;
font-family: 'Roboto', sans-serif;
border: none;
}

#blog #cnt_area01 .cnt_g .wp-pagenavi .extend {
font-size: 18px;
line-height: 1;
color: #BABABA;
padding: 0 7px;
margin: 0 5px;
font-family: 'Roboto', sans-serif;
border: none;
}


/*----------
03-01.blog_detail
----------*/
#blog_detail .title_area {
background: #F8F6ED;
padding: 60px 0 70px;
position: relative;
}

#blog_detail .title_area .contents_in {
position: relative;
}

#blog_detail .title_area .h2_title {
font-size: 36px;
line-height: 67px;
font-weight: 700;
color: #17AC12;
}

#blog_detail .title_area .pankuzu_area {
padding-top: 20px;
width: 70%;
}

#blog_detail .title_area .contents_in .title_img {
position: absolute;
width: 141px;
top: -30px;
right: 48px;
}

#blog_detail .title_area .contents_in .bg_img01 {
position: absolute;
width: 390px;
top: -40px;
left: -35%;
}

#blog_detail .title_area .contents_in .bg_img02 {
position: absolute;
width: 390px;
top: -240px;
right: -8%;
}

#blog_detail .title_area .contents_in .bg_img03{
position: absolute;
width: 390px;
top: -109px;
right: -36%;
}

#blog_detail #cnt_area01 {
padding: 93px 0 120px;
}

#blog_detail #cnt_area01 .cnt_g {
max-width: 850px;
margin: 0 auto 80px;
}

#blog_detail #cnt_area01 .cnt_g .title_box {
border-bottom: solid #17AC12 0.5px;
padding: 0 0 28px;
position: relative;
margin-bottom: 50px;
}

#blog_detail #cnt_area01 .cnt_g .title_box::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 0;
}

#blog_detail #cnt_area01 .cnt_g .title_box::after {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
right: 0;
}

#blog_detail #cnt_area01 .cnt_g .title_box .h3_title {
font-size: 26px;
line-height: 67px;
font-weight: 500;
letter-spacing: 0.3px;
text-align: center;
}

#blog_detail #cnt_area01 .cnt_g .title_box .cnt_bottom {
font-size: 14px;
line-height: 24px;
color: #A3A3A3;
display: flex;
align-items: center;
justify-content: flex-start;
width: fit-content;
margin: 0 auto;
}

#blog_detail #cnt_area01 .cnt_g .title_box .cnt_bottom .author {
margin-left: 30px;
}

#blog_detail #cnt_area01 .cnt_g .blog_box {
max-width: 810px;
margin: 0 auto;
}

#blog_detail #cnt_area01 .cnt_g .blog_box p {
font-size: 16px;
line-height: 29px;
letter-spacing: 0.3px;
color: #676767;
margin-bottom: 50px;
}

#blog_detail #cnt_area01 .cnt_g .blog_box .cnt_img {
max-width: 652px;
margin: 0 auto 50px;
}

#blog_detail #cnt_area01 .cnt_g .blog_box .cnt_img img {
border-radius: 5px;
}

#blog_detail #cnt_area01 .btn_ptn01.back {
margin: 0 auto;
}

#blog_detail #cnt_area01 .btn_ptn01.back a::after {
background: url(../common//img/icon_arrow02.png)no-repeat center/contain;
left: 24px;
}

#blog_detail #cnt_area01 .btn_ptn01.back a:hover::after {
left: 14px;
}

/*----------
04.privacy
----------*/
#privacy .pankuzu_area br.sp_550 {
display: none;
}

#privacy .under_title_area .h2_title_ptn01::after {
background: url(../img/privacy/h2_title_img.png)no-repeat center/contain;
width: 135px;
height: 138px;
bottom: 0;
right: 30px;
}

#privacy #cnt_area01 {
padding: 80px 0 120px;
}

#privacy #cnt_area01 br.sp_450 {
display: none;
}

#privacy #cnt_area01 .cnt_g {
max-width: 850px;
margin: auto;
}

#privacy #cnt_area01 .top_text {
position: relative;
font-size: 20px;
line-height: 36px;
font-weight: 700;
color: #17AC12;
text-align: center;
border-bottom: solid #17AC12 0.5px;
padding-bottom: 33px;
max-width: 850px;
margin: 0 auto 53px;
}

#privacy #cnt_area01 .top_text::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 0;
}

#privacy #cnt_area01 .top_text::after {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
right: 0;
}

#privacy #cnt_area01 .cnt_g {
margin-bottom: 40px;
}

#privacy #cnt_area01 .cnt_g:last-child {
margin-bottom: 0;
}

#privacy #cnt_area01 .cnt_g h3 {
font-size: 20px;
line-height: 36px;
font-weight: 700;
letter-spacing: 0.5px;
background: #F8F6ED;
padding: 8px 10px 8px 40px;
position: relative;
margin-bottom: 25px;
}

#privacy #cnt_area01 .cnt_g h3::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
top: 23px;
left: 20px;
}

#privacy #cnt_area01 .cnt_g .cnt_text {
margin: 0 21px 40px;
}

#privacy #cnt_area01 .cnt_g .cnt_text:last-child {
margin-bottom: 0;
}

#privacy #cnt_area01 .cnt_g .cnt_text p {
font-size: 16px;
line-height: 29px;
letter-spacing: 0.25px;
color: #676767;
}

#privacy #cnt_area01 .cnt_g .cnt_text ol {
list-style: decimal;
margin-top: 25px;
}

#privacy #cnt_area01 .cnt_g .cnt_text ol li {
font-size: 16px;
line-height: 29px;
color: #676767;
margin-left: 20px;
display: list-item;
}

/*----------
05.contact
----------*/
.contact_page .under_title_area .h2_title_ptn01::after {
background: url(../img/contact/h2_title_img.png)no-repeat center/contain;
width: 180px;
height: 106px;
bottom: 20px;
right: 18px;
}

.contact_page #cnt_area01 {
padding: 80px 0 120px;
}

.contact_page #cnt_area01 .cnt_g {
max-width: 850px;
margin: auto;
}

.contact_page #cnt_area01 .top_box {
position: relative;
border-bottom: solid #17AC12 0.5px;
padding-bottom: 18px;
max-width: 753px;
margin: 0 auto 53px;
}

.contact_page #cnt_area01 .top_box::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
left: 0;
}

.contact_page #cnt_area01 .top_box::after {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
bottom: -3px;
right: 0;
}

.contact_page #cnt_area01 .top_text {
font-size: 20px;
line-height: 32px;
letter-spacing: 0.5px;
font-weight: 700;
color: #17AC12;
text-align: center;
position: relative;
width: fit-content;
margin: 0 auto;
}

.contact_page #cnt_area01 .top_text::before {
position: absolute;
content: "";
background: url("../img/contact/icon01_.png")no-repeat center/contain;
width: 50px;
height: 58px;
bottom: -12px;
left: -60px;
}

.contact_page #cnt_area01 .form_g {
color: #5C5C5C;
background: #F8F6ED;
border-radius: 10px;
font-size: 16px;
line-height: 24px;
max-width: 850px;
margin: 0 auto;
padding: 35px 40px 60px;
}

.contact_page #cnt_area01 .form_g p {
font-size: 16px;
line-height: 24px;
font-weight: 500;
color: #343434;
padding-bottom: 30px;
margin-bottom: 30px;
border-bottom: solid #C6C5C5 1px;
}

.contact_page #cnt_area01 .form_g .required {
font-size: 13px;
line-height: 1;
font-weight: 500;
color: #FFFFFF;
background: #E07000;
border-radius: 3px;
padding: 3px 6px 4px;
display: inline-block;
margin-left: 15px;
}

.contact_page #cnt_area01 .form_g dl {
margin-bottom: 60px;
}

.contact_page #cnt_area01 .form_g dt {
letter-spacing: 0.5px;
padding-left: 16px;
font-weight: 500;
position: relative;
margin-bottom: 20px;
display: flex;
align-items: center;
justify-content: flex-start;
}

.contact_page #cnt_area01 .form_g dt::before {
position: absolute;
content: "";
background: #17AC12;
width: 6px;
height: 6px;
border-radius: 50%;
left: 0;
top: 10px;
}

.contact_page #cnt_area01 .form_g dd {
color: #8D8D8D;
letter-spacing: 0.5px;
margin-bottom: 24px;
min-height: 24px;
}

.contact_page #cnt_area01 .form_g dd:last-child {
margin-bottom: 0;
}

.contact_page #cnt_area01 .form_g input::placeholder, .contact_page #cnt_area01 .form_g textarea::placeholder {
color: #C4C4C4;
}

.contact_page #cnt_area01 .form_g input {
font-size: 16px;
line-height: 24px;
border: solid #17AC12 1px;
border-radius: 5px;
width: 100%;
padding: 12px 16px 11px;
font-family: 'Noto Sans JP', sans-serif;
}

.contact_page #cnt_area01 .form_g textarea {
font-size: 16px;
line-height: 24px;
border: solid #17AC12 1px;
border-radius: 5px;
width: 100%;
padding: 12px 16px 11px;
font-family: 'Noto Sans JP', sans-serif;
}

.contact_page .btn01 {
font-size: 20px;
line-height: 1;
font-weight: 700;
color: #17AC12;
display: block;
background: #FFFFFF;
border: solid #17AC12 2px;
border-radius: 4px;
text-align: center;
padding: 16px 0 17px;
position: relative;
margin: 0 auto;
}

.contact_page .btn01::after {
position: absolute;
content: "";
background: url("../common/img/icon_arrow01.png")no-repeat center/contain;
width: 7px;
height: 12px;
top: 50%;
transform: translateY(-50%);
right: 24px;
transition: 0.3s;
}

.contact_page .btn01:hover::after {
right: 14px;
}

.contact_page .btn01.back_btn::after {
background: url(../common/img/icon_arrow02.png)no-repeat center/contain;
left: 24px;
}

.contact_page .btn01.back_btn:hover::after {
left: 14px;
}

.contact_page .btn_box {
display: flex;
align-items: center;
justify-content: space-between;
max-width: 600px;
margin: 0 auto;
}

.contact_page .btn01 {
margin: 0;
width: 49%;
}

.contact_page .btn01:hover {
cursor: pointer;
}

/*----------
05.contact
----------*/

/*----------
05-02.contact_thanks
----------*/
#contact_thanks #cnt_area01 {
padding: 40px 0 100px;
}

#contact_thanks #cnt_area01 .cnt_g .cnt_img {
max-width: 53px;
margin: 0 auto 47px;
}

#contact_thanks #cnt_area01 .cnt_g p {
font-size: 26px;
line-height: 47px;
font-weight: 700;
letter-spacing: 0.5px;
color: #17AC12;
text-align: center;
margin-bottom: 47px;
}

#contact_thanks #cnt_area01 .back_btn {
margin: 0 auto;
}

#contact_thanks #cnt_area01 .btn_ptn01.back_btn a::after {
background: url(../common/img/icon_arrow01.png)no-repeat center/contain;
right: 24px;
}

#contact_thanks #cnt_area01 .btn_ptn01.back_btn a:hover::after {
right: 14px;
}

/*----------
06.error_page
----------*/
#error_page #cnt_area01 {
padding: 80px 0 100px;
}

#error_page #cnt_area01 .cnt_g {
text-align: center;
}

#error_page #cnt_area01 .cnt_g h2 {
font-size: 26px;
line-height: 48px;
font-weight: 500;
margin-bottom: 50px;
color: #17AC12;
}

#error_page #cnt_area01 .cnt_g p {
font-size: 16px;
line-height: 32px;
margin-bottom: 50px;
}

#error_page #cnt_area01 .cnt_g .back_btn {
margin: 0 auto;
}


#error_page #cnt_area01 .cnt_g .btn_ptn01.back_btn a::after {
background: url(../common/img/icon_arrow02.png)no-repeat center/contain;
left: 24px;
}

#error_page #cnt_area01 .cnt_g .btn_ptn01.back_btn a:hover::after {
left: 14px;
}









