@charset "utf-8";

* { 
font-family: 'Noto Sans Japanese';
}

:root {
  --main-color: #07102e;
  --accent-color: #09cbcb;
  --textgray-color: #b1b0b0;
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 100;
    src: url('/assets/fonts/NotoSansCJKjp-Thin.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 200;
    src: url('/assets/fonts/NotoSansCJKjp-Light.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 300;
    src: url('/assets/fonts/NotoSansCJKjp-DemiLight.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 400;
    src: url('/assets/fonts/NotoSansCJKjp-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 500;
    src: url('/assets/fonts/NotoSansCJKjp-Medium.woff2') format('woff2');
}
@font-face {ii
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 700;
    src: url('/assets/fonts/NotoSansCJKjp-Bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 900;
    src: url('/assets/fonts/NotoSansCJKjp-Black.woff2') format('woff2');
}

header ul,
footer ul{
margin-top: 0;
}

footer a:link,
footer a:visited{
text-decoration: none;
}

/* input reset */
input[type='text'],
input[type='tel'],
input[type='password'],
input[type='email'],
input[type='number'],
input[type='url'],
textarea,
select{
border: 2px solid #d5dded;
border-radius: 5px;
background: white;
padding: 0.5em;
outline: none;
margin-top: 0;
}
input[type='text']:focus,
input[type='tel']:focus,
input[type='password']:focus,
input[type='email']:focus,
input[type='number']:focus,
input[type='url']:focus,
textarea:focus,
select:focus{
border-color: var(--accent-color);
}
::placeholder {
color: #ebebeb;
}
input[type="submit"],
input[type="button"] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
outline-offset: -2px;
}



@media screen and (min-width: 768px) {
  .pc-only{ display: block; }
  .sp-only{ display: none; }
}
@media screen and (max-width: 767px) {
  .sp-only{ display: block; }
  .pc-only{ display: none; }
}



.ly_loading {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
visibility: visible;
opacity: 1;
background: #000;
transition: opacity .8s, visibility .8s;
z-index: 10000;
text-align:center;
color:#fff;
}
.is-loaded .ly_loading{
visibility: hidden;
opacity: 0;
}

.bl_progress {
position: fixed;
top: 15%;
left: 0;
right: 0;
bottom: 0;
margin: auto;
width: 100%;
height: 1px;
}
.is-loaded .bl_progress{
visibility: hidden;
opacity: 0;
}

.el_loading_progressNum{
width: 100%;
height: 1px;
background: #07102e;
}
.bl_loading{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.bl_loading{
width:260px;
}
.fadeUp{
animation-name: fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(30px);
  }

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



.ly_wrap_1100{
max-width: 1160px;
margin: auto;
padding: 0 30px;
margin: auto;
box-sizing: border-box;
}
.ly_wrap_1000{
max-width: 1060px;
margin: auto;
padding: 0 30px;
margin: auto;
box-sizing: border-box;
}
.ly_wrap_1200{
max-width: 1260px;
margin: auto;
padding: 0 30px;
box-sizing: border-box;
}

@media screen and (max-width: 767px) {
.ly_wrap_1100{
padding: 0 4vw;
}
.ly_wrap_1000{
padding: 0 4vw;
}
.ly_wrap_1200{
padding: 0 4vw;
}
}

.ly_link_wrap_r{
text-align: right;
}
.el_heading_center{
text-align: center;
}
.el_heading_faq{ /* 18px */
font-size: 1.125rem;
}
.el_heading_min{ /* 20px */
font-size: 1.2rem;
font-weight: 500;
}
.el_heading_midium{ /* 29px */
font-size: 1.8rem;
font-weight: 500;
}
.el_heading_large{ /* 42px */
font-size: 2.6rem;
font-weight: 500;
}
.el_heading_subttl.el_heading_en{ /* 20px */
font-size: 1.2rem;
margin-bottom: 1em;
font-weight: 600;
}
.el_txt_normal{ /* 15px */
font-size: 0.95rem;
line-height: 1.75em;
}
@media screen and (max-width: 767px) {
  .el_heading_min{ /* 20px */
  font-size: 1.2rem;
  }
  .el_heading_midium{
  font-size: 1.2rem;
  }
  .el_heading_large{ /* 42px */
  font-size: 1.3rem;
  }
  .el_heading_subttl.el_heading_en{ /* 20px */
  font-size: 1rem;
  margin-bottom: 0.8em;
  }
  .el_txt_normal{ /* 15px */
  font-size: 0.85rem;
  }
}


.el_txt_large150{
font-size: 150%;
font-weight: 600;
}
.el_heading_en{
font-family: 'Montserrat', sans-serif;
font-weight: 600;
letter-spacing: 0.05em;
}
.el_heading_jp{
}
.el_color_accent{
color: var(--accent-color);
}
.el_color_white{
color: white;
}
.el_color_grey{
color: var(--textgray-color);
}
.el_link_white{
color: white;
}
.el_link_black{
color: black
}
.el_link_circle_rt{
display: inline-block;
position: relative;
padding: 30px 60px 30px 30px;
margin-bottom: -30px;
margin-top: -30px;
z-index: 1;
font-size: 1rem;
line-height: 1.75;
}
.el_link_circle_rt:after{
position: absolute;
right: 0;
top: 0;
bottom: 0;
margin: auto;
content: "";
display: inline-block;
background: url(/assets/img/common/ico_arrow_rt.svg);
width: 67px;
height: 67px;
z-index: -1;
}


@media screen and (max-width: 767px) {
.ly_wrap_1100 {
    max-width: 100%;
    padding: 15px;
}
}

/*===========================================*/
header{
position: fixed;
width: 100%;
z-index: 999;
top: 0;
}
body{
padding-top: 138px;
}
body#top{
padding-top: 0;
overflow-x: hidden;
}
.ly_header a {
text-decoration: none;
}
.ly_header_sp{
display: none;
}

/* page h1 */
.ly_heading_cont{
padding: 0.2rem 1rem;
}
.el_heading_page_h1{
font-size: 0.8rem;
color: #afbed4;
}

.ly_header_pc_inner{
display: flex;
justify-content: space-between;
padding: 1rem 2rem;
transition: .8s;
position: relative;
}
.ly_header_bg_on:after,
.ly_header_bg_off:after{
content:"";
width: 100%;
height: 100%;
display: block;
background: var(--main-color)!important;
position: absolute;
top: 0;
left: 0;
z-index: -1;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.ly_header:after{
content: "";
width: 100%;
height: 100%;
display: block;
background: var(--main-color);
opacity: 0.8;
position: absolute;
top: 0;
left: 0;
z-index: -1;
}
.ly_header_bg_off:after{
opacity: 0;
}
.ly_header_bg_on:after{
opacity: 1;
}
/*
#top .ly_header{
background: transparent;
}
#top .ly_header:after{
background: transparent;
}
*/

.ly_header_mainArea{
flex: 1 1 auto;
display: flex;
align-items: center;
flex-wrap: wrap;
}
.ly_logo{
height: 100%;
margin-right: 3rem;
display: flex;
align-items: center;
}
.ly_logo img{
width: 170px;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.ly_header_bg_off .ly_logo img{
width: 220px;
}
.ly_globalMenu{
font-size: 1rem;
display: flex;
align-items: center;
height:100%;
max-height: 3em;
}
.bl_globalMenu{
display: flex;
align-items: center;
height:100%;
}
.bl_globalMenu li{
margin-right: 0.5em;
height:100%;
}
.bl_globalMenu li:last-child{
margin-right: 0;
}
.el_glabal_toggle{
display: flex;
align-items: center;
height:100%;
color: white;
padding: 0.5em;
box-sizing: border-box;
cursor: pointer;
white-space: nowrap;
}
.ly_globalUnderMenu_wrap{
display: none;
position: absolute;
background: var(--main-color);
width: 100%;
left: 0;
padding: 30px 10%;
box-sizing: border-box;
}
.ly_globalUnderMenu_wrap a{
color: white;
}
.el_glabalMenu_ttl{
font-size: 2rem;
font-weight: 500;
margin-bottom: 1em;
display: inline-block;
color: white;
}
.bl_globalUnderMenu_inner{
display: flex;
flex-wrap: wrap;
margin-bottom: 30px;
}
.bl_globalUnderMenu_inner li{
flex: 1 1 45%;
max-width: 45%;
}
.bl_globalUnderMenu_inner a{
padding: 0.5em;
display: inline-block;
transition: 0.5s;
}
.bl_globalUnderMenu_inner a:before{
content: "-";
color: var(--accent-color);
margin-right: 1em;
}
.bl_globalUnderMenu_inner a:hover{
color: var(--accent-color);
}
.uni_search{
font-size: 0;
width: 50px;
display: flex;
cursor: pointer;
justify-content: center;
}
.uni_search img{
display: inline-block;
width: 1rem;
}
.ly_search_box{
padding: 30px;
}
.bl_search_form{
display: flex;
justify-content: center;
align-items: center;
max-width: 1200px;
margin: auto;
}
.el_search_txt{
font-size: 1.5rem;
min-width: 20em;
margin-right: 1em;
}
.bl_search_btn{
background: var(--accent-color);
position: relative;
width: 120px;
height: 60px;
margin-left: 1em;
border-radius: 4px;
box-sizing: border-box;
cursor: pointer;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
outline: 1px solid;
outline-color: var(--accent-color);
outline-offset: 0px;
}
.bl_search_btn:before{
content: "";
display: inline-block;
width: 100%;
height: 100%;
margin-left: 1em;
background-image: url(/assets/img/common/ico_search.svg);
position: absolute;
width: 100%;
z-index: 1;
background-size: 30%;
background-repeat: no-repeat;
background-position: center;
}
input.el_search_btn{
height: 100%;
width: 100%;
transition: 0.3s;
background: transparent;
cursor: pointer;
}
.bl_search_btn:hover{
background: var(--accent-color);
animation: light .8s infinite;
}
.ly_header_subArea{
flex: 1 1 auto;
}
.bl_subMenu{
display: flex;
justify-content: flex-end;
margin-bottom: 1em;
}
.bl_subMenu li{
margin-right: 1.5em;
}
.bl_subMenu li:last-child{
margin-right: 0;
}
.el_subLink{
color: var(--textgray-color);
}
.el_subLink:hover {
color: var(--textgray-color);
opacity: 0.8;
}
.bl_ctaMenu{
display: flex;
justify-content: flex-end;
}
.bl_ctaMenu li{
margin-right: 1em;
flex: 1 1 auto;
width: 100%;
max-width: 170px;
}
.bl_ctaMenu li:last-child{
margin-right: 0;
}
.nav-btn{
display: none;
}
@media screen and (max-width: 1060px) and (min-width: 766px) {
  .ly_header_pc{
  flex-direction: column-reverse;
  }
  .bl_globalMenu{
  justify-content: space-around;
  }
  .ly_globalMenu{
  flex: 1 1 auto;
  }
  .ly_header_subArea{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 1rem;
  }
  .ly_subMenu{
  margin-right: 1rem;
  }
  .bl_subMenu{
  margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .ly_header_pc{
  display: none;
  }
  .ly_header_sp{
  display: block;
  position: relative;
  }
  :not(#top) .ly_header_sp:after{
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: var(--main-color)!important;
  opacity: 0.8;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  }
  .ly_header_logoArea{
  display: flex;
  padding: 2rem;
  position: relative;
  }
  .ly_headerMenu{
  display: none;
  position: fixed;
  z-index: 100;
  top: 100px;
  width: 100%;
  max-height: 100%;
  overflow-y: auto;
  transition: opacity 0.2s, visibility 0s ease 0.2s;
  opacity: 0;
  visibility: hidden;
  -webkit-overflow-scrolling: touch;
  }
  .nav-open .ly_headerMenu{
  display: block;
  background: var(--main-color);
  transition-delay: 0s;
  opacity: 1;
  visibility: visible;
  padding-bottom: 92px;
  box-sizing: border-box;
  }
  .nav-open .ly_header_sp{
  background: var(--main-color)!important;
  }
  .nav-open main {
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  z-index: 2;
  background: white;
  }
  .nav-open .overlay {
  display: block;
  }
  .overlay {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.5;
  z-index: 11;
  }
  .ly_globalMenu{
  display: block;
  width: 100%;
  height: auto;
  max-height: 100%;
  left: 0;
  }
  .bl_globalMenu{
  padding: 0 2rem;
  display: block;
  }
  .bl_globalMenu li{
  margin-right: 0;
  }
  .el_glabal_toggle{
  padding: 1rem 0;
  }
  .ly_globalUnderMenu_wrap{
  padding: 1rem;
  position: inherit;
  }
  .el_glabalMenu_ttl{
  font-size: 1rem;
  }
  span.el_glabalMenu_ttl{
  display: none;
  }
  .bl_globalUnderMenu_inner li {
  flex: 1 1 50%;
  max-width: 50%;
  font-size: 0.8rem;
  }
  .bl_subMenu{
  display: block;
  padding: 0 2rem;
  }
  .el_subLink{
  padding: 1rem 0;
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  }
  .bl_subMenu li{
  margin-right: 0;
  }
  .bl_ctaMenu{
  display: block;
  padding: 2rem;
  font-size: 1.1rem;
  }
  .bl_ctaMenu li{
  max-width: 100%;
  margin: auto;
  margin-bottom: 20px;
  }
  .bl_ctaMenu li:last-child{
  margin-bottom: 0;
  margin: auto;
  }
  .uni_search{
  width: 100%;
  }
  .uni_search .el_glabal_toggle{
  display: none;
  }
  .ly_search_box{
  display: block;
  padding: 2rem 0;
  position: inherit;
  }
  .el_search_txt{
  min-width: 70%;
  font-size: 1.1rem;
  margin-right: 0.5em;
  border-radius: 3px;
  }
  .bl_search_btn{
  height: 3rem;
  outline: 0;
  }
  .ly_mainVisual_video {
  overflow: hidden;
  }
  .ly_mainVisual_video video {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 177.77777778vh;
  height: 56.25vw;
  min-height: 100%;
  min-width: 100%;
  }

/* nav-btn */
.nav-btn{
-webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
transition: all .6s cubic-bezier(.19,1,.22,1);
transform: translateZ(0);
z-index: 4;
display: block;
box-sizing: content-box;
border: 0;
outline: 0;
width: 100px;
height: 80px;
padding: 0;
text-align: center;
flex: 0 0 auto;
cursor: pointer;
order: 2;
position: absolute;
right: 0;
top: 0;
margin: auto;
bottom: 0;
background: transparent;
}
.nav-btn:after{
content: "";
font-size: 1rem;
text-align: center;
color: white;
left: 0;
right: 0;
bottom: 6px;
margin: auto;
position: absolute;
line-height: 0.7rem;
}
.nav-btn-icon, .nav-btn-icon:after, .nav-btn-icon:before {
position: absolute;
left: 0;
right: 0;
display: block;
background: white;
width: 25px;
text-align: center;
height: 1px;
border-radius: 2px;
-webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
transition: all .6s cubic-bezier(.19,1,.22,1);
}
.nav-btn-icon{
margin: auto;
top: 0;
bottom: 0;
}
.nav-btn-icon:before {
content: "";
top: -10px;
}
.nav-btn-icon:after {
content: "";
top: 10px;
}
.nav-open .nav-btn:after{
color: #fff;
}
.nav-open .nav-btn-icon:after, .nav-open .nav-btn-icon:before {
background: white;
top: 0;
}
.nav-open .nav-btn-icon{
background-color: transparent;
}
.nav-open .nav-btn-icon:before{
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.nav-open .nav-btn-icon:after{
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}


}

/*===========================================*/
.el_ico_window img {
width: 0.9em;
height: auto;
display: inline-block !important;
vertical-align: text-top;
margin-left: 0.5em !important;
}

.el_ctaBtn{
display: inline-block;
padding: 0.9em;
border-radius: 4px;
box-sizing: border-box;
height: 100%;
width: 100%;
border: 2px solid var(--accent-color);
position: relative;
text-align: center;
line-height: 1.2;
min-width: 11em;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
outline: 1px solid;
outline-color: var(--accent-color);
outline-offset: 0px;
}
.el_ctaBtn:hover{
animation: light .8s infinite;
}
@keyframes light {
  100% { 
    outline-color: transparent;
    outline-offset: 12px;
  }
}

a.el_ctaBtn_dl,
header a.el_ctaBtn_dl,
a.el_ctaBtn_inquiry{
color: var(--accent-color);
}
a.el_ctaBtn_cost,
a.el_ctaBtn_inquiry{
background: var(--accent-color);
color: white;
}
.el_ctaBtn_inquiry img{
width: 1.3em;
height: auto;
display: inline-block !important;
margin-right: 1em !important;
vertical-align: sub;
-webkit-filter: brightness(0) invert(1);
filter: brightness(0) invert(1);
}
.el_link_arrow_r,
.el_link_arrow_b{
position: relative;
padding-right: 1em;
}
.el_link_arrow_bf_r{
position: relative;
padding-left: 1.5em;
}
.el_link_arrow_r:before{
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 0.1em;
width: 0.4em;
height: 0.4em;
border-top: 1.5px solid transparent;
border-right: 1.5px solid transparent;
transform: rotate(45deg);
}
.el_link_arrow_bf_r:before{
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
left: 0.1em;
width: 0.4em;
height: 0.4em;
border-top: 1.5px solid transparent;
border-right: 1.5px solid transparent;
transform: rotate(45deg);
}

.el_subLink.el_link_arrow_r:before{
content: "";
margin: auto;
position: absolute;
top: auto;
bottom: 0.2em;
right: 0.1em;
width: 0.4em;
height: 0.4em;
border-top: 1.5px solid transparent;
border-right: 1.5px solid transparent;
transform: rotate(45deg);
}
.el_subLink.el_link_arrow_r:before{
border-color: var(--textgray-color);
}
.el_link_arrow_b:before{
content: "";
margin: auto;
position: absolute;
top: -0.1em;
bottom: 0;
right: 0.8em;
width: 0.2em;
height: 0.2em;
border-top: 1.5px solid transparent;
border-right: 1.5px solid transparent;
transform: rotate(135deg);
}
.el_btn_tab.el_link_arrow_b{
padding-right: 2em;
}
.el_btn_tab.el_link_arrow_b:before{
border-color: #5e636a;
}

.el_link_blue{
color: #00447b;
}
.el_link_blue:before{
border-color: #00447b;
}
.el_link_white:before{
border-color: white;
}
.el_link_grey{
color: #63748d;
}
.el_link_grey:before{
border-color: var(--accent-color);
}
.el_link_txt hover{
transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
}
.el_link_txt:hover{
opacity:0.8;
}

/* link circle */
.bl_link_circle{
position: relative;
display: flex;
position: relative;
padding: 30px;
margin-bottom: -30px;
margin-top: -30px;
z-index: 1;
font-size: 1rem;
line-height: 1.75;
align-items: center;
justify-content: flex-end;
cursor: pointer;
}
.bl_link_circle .el_link_txt{
display: inline-block;
margin-right: -10px;
z-index: 1;
position: relative;
transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
}
.bl_link_circle:hover .el_link_txt{
letter-spacing: 0.05em;
}
.el_link_circle {
width: 70px;
height: 70px;
border-radius: 50%;
text-align: center;
position: relative;
z-index: 0;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
outline: none;
}
.el_link_circle::before {
content: '';
position: absolute;
left:0;
right: 0;
top:0;
bottom: 0;
margin: auto;
/*波形の形状*/
border: 1px solid var(--accent-color);
width: 100%;
height: 100%;
border-radius: 50%;
opacity:0;
}
.el_link_circle:hover::before {
animation:0.8s circlelight forwards;
opacity:1;
}
@keyframes circlelight{
  0%{
    transform: scale(1);
  }
  100%{
    transform:scale(2);
    opacity: 0;
  }
}

/* リンク矢印 */
.el_link_circle span{
width: 100%;
height: 100%;
border-radius: 50%;
box-sizing: border-box;
position: relative;
color: #000;
vertical-align: middle;
text-decoration: none;
font-size: 0.85rem;
z-index: 4;
border: 1.5px solid var(--accent-color);
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
cursor: pointer;
}
.el_link_white + .el_link_circle span{
background: var(--main-color);
}

.el_link_circle span::before,
.el_link_circle span::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
content: "";
vertical-align: middle;
transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}

/* 右上矢印 */
.bl_link_circle:hover .el_link_arrow_rt span:before,
.bl_link_circle:hover .el_link_arrow_rt span:after{
top: -5px;
right: -5px;
}
.el_link_arrow_rt span::after{
width: 0.7em;
height: 0.7em;
border-top: 1.5px solid var(--accent-color);
border-right: 1.5px solid var(--accent-color);
}
.el_link_arrow_rt span::before{
width: 1em;
height: 1px;
background: var(--accent-color);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

/* 右矢印 */
.bl_link_circle:hover .el_link_arrow_r span:before,
.bl_link_circle:hover .el_link_arrow_r span:after{
right: -5px;
}
.el_link_arrow_r span::after{
width: 10px;
height: 10px;
border-top: 1.5px solid var(--accent-color);
border-left: 1.5px solid var(--accent-color);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}
.el_link_arrow_r span::before{
width: 15px;
height: 1px;
background: var(--accent-color);
}

/* 左矢印 */
.bl_link_circle:hover .el_link_arrow_l span:before,
.bl_link_circle:hover .el_link_arrow_l span:after{
left: -5px;
}
.el_link_arrow_l span::after{
width: 10px;
height: 10px;
border-bottom: 1.5px solid var(--accent-color);
border-right: 1.5px solid var(--accent-color);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}
.el_link_arrow_l span::before{
width: 15px;
height: 1px;
background: var(--accent-color);
}


@media screen and (max-width: 767px) {
.el_ctaBtn{
outline: 0;
}
.bl_link_circle {
    padding: 10px;
    margin-bottom: -10px;
    margin-top: -10px;
    font-size: 0.8rem;
}
.el_btn_tab.el_link_arrow_b{
padding-right: 1.6em;
}
.bl_link_circle .el_link_txt{
margin-right: 0.5em;
}
.el_link_circle{
width: 20px;
height: 20px;
}
.el_link_circle:not(.sp-circle) span{
border:none;
}

}

/*===========================================*/

.ly_header_fullmenu{
display: none;
}



/*---------------------------------------------------------
CTA
---------------------------------------------------------*/
.rightColumn + #ctaArea{
margin-top: 60px;
}
.ly_ctaArea{
background: url(/assets/img/common/cta_bg.png);
background-size: cover;
}
.ly_ctaArea a{
text-decoration: none;
}
.ly_ctaArea_inner{
max-width: 1200px;
padding: 80px 30px;
margin: auto;
display:flex;
align-items: center;
justify-content: center;
}
.ly_cta_img{
flex: 0 2 auto;
text-align: center;
margin-right: 60px;
padding: 40px;
}
.ly_cta_img img{
width: 158px;
}
.ly_cta_txt{
flex: 0 3 auto;
}
.el_cta_catch{
color: white;
font-size: 1.75rem;
margin-bottom: 50px;
font-weight: 500;
letter-spacing: 0.1em;
}
.el_cta_detail{
color: #9eacc0;
font-size: 1rem;
line-height: 2em;
margin-bottom: 50px;
}
.bl_ctaBtn{
display:flex;
font-size: 1.1rem;
}
.bl_ctaBtn > a:not(:last-child){
margin-right: 1em;
}

@media screen and (max-width: 767px) {
.ly_ctaArea {
background: url(/assets/img/common/cta_bg_sp.png);
background-size: cover;
}
.ly_ctaArea_inner {
max-width: 100%;
padding: 30px 30px 60px;
display: block;
}
.ly_cta_img{
margin-right: 0;
margin-bottom: 30px;
max-width: 22%;
padding: 0;
}
.ly_cta_img img{
width: 100%;
}
.el_cta_catch{
font-size: 1.2rem;
margin-bottom: 30px;
}
.el_cta_detail{
font-size: 0.8rem;
margin-bottom: 30px;
}
.bl_ctaBtn{
display: block;
padding: 0 30px;
}
.bl_ctaBtn > a:not(:last-child){
margin-right: 0;
margin-bottom: 1em;
}

}

/*---------------------------------------------------------
footer
---------------------------------------------------------*/
footer{
position: relative;
margin-top: 60px;
}
#ctaArea + footer{
margin-top: 0;
}
footer a{
text-decoration: none;
}
.el_btn_pagetop{
display: inline-block;
position: absolute;
right: 30px;
width: 65px;
height: 65px;
border-radius: 32.5px;
font-size: 0;
background: #8c9aae;
box-shadow: 0px 3px 4px 1px rgba(62, 66, 71, 0.4);
z-index: 10;
}
.el_btn_pagetop:before{
content: "";
position: absolute;
top: 3px;
bottom: 0;
right: 0;
left: 0;
margin: auto;
width: 10px;
height: 10px;
border-top: 1.5px solid white;
border-left: 1.5px solid white;
transform: rotate(45deg);
}
.el_btn_pagetop:hover{
opacity: 0.8;
}
.ly_logoMark_inner{
background: white;
padding: 30px;
}
.bl_logoMark{
display:flex;
justify-content: center;
align-items: center;
}
.bl_logoMark li{
margin-right: 30px;
}
.bl_logoMark li:last-child{
margin-right: 0;
}
.bl_logoMark li img{
width: 100%;
}
.ly_footerMenu{
background: #2a2a2a;
padding: 40px 30px;
}
.ly_footerMainmenu{
max-width: 1160px;
margin: auto;
margin-bottom: 40px;
}
.bl_footerMainmenu{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.el_footermenu_3col{
flex: 1 1 auto;
max-width: calc(270px * 3 + 20px * 2);
flex-basis: calc(270px * 3 + 20px * 2);
}
.el_footermenu_2col{
flex: 1 1 auto;
max-width: calc(270px * 2 + 20px);
flex-basis: calc(270px * 2 + 20px);
}
.el_footermenu_1col{
flex: 1 1 270px;
max-width: 270px;
flex-basis: 270px;
}
.bl_footerMainmenu a,
.bl_footerMainmenu span{
color: white;
display: inline-block;
padding: 0.5em;
width: 100%;
box-sizing: border-box;
transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
.bl_footerMainmenu a:hover{
opacity: 0.6;
}
.el_heading_footer_main{
font-size: 0.875rem;
border-bottom: 1px solid white;
margin-bottom: 0.75em;
}
.bl_footerMenu{
flex: 1 1 auto;
margin-bottom: 40px;
}
.bl_footerMainmenu > li{
margin-right: 20px;
}
.ly_footerMenu_wrap{
display: flex;
}
.bl_footerInnerMenu{
flex: 1 1 auto;
padding-left: 10px;
}
.bl_footerInnerMenu li a,{
padding: 0.25em;
color: #dfdfdf;
}
.bl_footerInnerMenu li a:before{
content: "-";
margin-right: 0.5em;
}

.bl_footerSubmenu{
display: flex;
justify-content: center;
}
.bl_footerSubmenu li{
margin-right: 2em;
}
.bl_footerSubmenu li:last-child{
margin-right: 0;
}
.bl_footerSubmenu a{
color: white;
}
.ly_footer_copyright{
background: black;
color: white;
text-align: center;
font-size: 0.75rem;
padding: 30px;
}
.bl_footer_copyright img{
width: 285px;
display: inline-block;
margin-bottom: 0.8em;
}

@media screen and (max-width: 767px) {
.el_footermenu_2col{
max-width: 100%;
}
.el_btn_pagetop{
width: 50px;
height: 50px;
}

.bl_logoMark{
flex-wrap: wrap;
margin-bottom: -10px;
margin-right: -20px;
}
.bl_logoMark li,
.bl_logoMark li:last-child{
margin-bottom: 10px;
margin-right: 30px;
}

.bl_logoMark li a{
display: inline-block;
max-height: 50px;
max-width: 130px;
width: auto;
}
.bl_logoMark li a img{
width: 100%;
}
.bl_footerMainmenu{
display: block;
}
.bl_footerMainmenu > li{
margin-right: 0;
}
.el_footermenu_1col{
max-width: 100%;
}
.ly_footerMenu_wrap{
display: none;
transition: cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}

.bl_footerMainmenu a,
.bl_footerMainmenu span{
position: relative;
}
.bl_footerMainmenu a:after{
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 0.4em;
width: 0.3em;
height: 0.3em;
border-top: 1.5px solid white;
border-right: 1.5px solid white;
transform: rotate(45deg);
}
.bl_footerMainmenu span:after{
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0.4em;
right: 0.4em;
width: 0.3em;
height: 0.3em;
border-bottom: 1.5px solid white;
border-right: 1.5px solid white;
transform: rotate(45deg);
}
.el_heading_footer_main.is-active span:after{
border: none;
border-top: 1.5px solid white;
border-left: 1.5px solid white;
}
.bl_footerSubmenu{
flex-wrap: wrap;
justify-content: flex-start;
margin-left: -1em;
}
.bl_footerSubmenu li {
margin-right: 0;
}
.bl_footerSubmenu a{
display: flex;
font-size: 0.8rem;
padding: 0.8em;
}
.ly_footer_copyright{
text-align: left;
font-size: 0.7rem;
}

}