@charset "utf-8";
/* CSS Document */
* {
  box-sizing: border-box;
	margin:0;
	padding:0;
}
body {
  font-family: "Noto Sans JP", YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
  font-weight: bold;
  color: #000000;
  background: #fff;
  overflow-x: hidden;
}
img {
  vertical-align: bottom; 
  max-width: 100%;
  height: auto;
}
html {
  font-size: 62.5%;
}
main {
  display: block;
  font-size: 1.6rem;
}
ol, ul {
  list-style-type: none;
}
a {
  text-decoration: none;
}
.spOnly {
  display: none;
}
/*----------header----------*/
header {
  position: fixed;
  width: 100%;
  height: 6.5rem;
  top: 0;
  right: 0;
  padding: 0rem 2.5vw 0rem;
  background: #fff;
  z-index: 100;
}
.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 6.5rem;
}
.header-left-inner, .header-right-inner {
  height: 100%;
  align-items: center;
  display: flex;
}
.header_logo {
  width: 11rem;
}
.header_right {
  display: flex;
  height: 100%;
}
.header_right .header_overlaymenu li a, .header_right .header_overlaymenu .qicon-menu .qicon span {
  font-weight: 500;
}
.header_right .header_overlaymenu li a:hover, .header_right .header_overlaymenu li span:hover {
  color: #499796;
}
.btn_header .login {
  border: 2px solid #99A6B6;
  background: #FFFFFF;
  color: #99A6B6;
}
.btn_header .login:hover {
  background: #99A6B6;
  color: #FFFFFF;
}
.btn_header a {
  display: inline-block;
  margin-right: 1vw;
  padding: 0.7rem 4rem;
  border: 2px solid #FF5B5B;
  border-radius: 9999px;
  background: #FF5B5B;
  color: #fff;
  font-size: 1.5rem;
  transition: 0.3s;
}
.btn_header a:hover {
  background: #fff;
  color: #FF5B5B;
}
.btn_header_last a {
  margin-right: 0vw;
}
.header-inner ul {
  display: flex;
  height: 100%;
}
.header-inner ul, .header-inner ul li {
  height: 100%;
}
.header-inner ul li a {
  height: 100%;
  align-items: center;
  display: flex;
}
.header-inner ul li a, .header-inner .header-left-inner ul li .qicon {
  margin-left: 3.0rem;
  color: #000000;
  font-size: 1.6rem;
  font-weight: normal;
}
.header-inner ul li.qicon-menu .qicon > a {
  margin-left: 0;
}


/*----------サポートメニュー----------*/
.header-right-inner .header_right .header_overlaymenu li {
  margin-top: 0rem;
}
.header_right .header_overlaymenu li .qicon {
  height: 100%;
  align-items: center;
  display: flex;
  position: absolut;
  width: 100%;
  cursor: pointer;
  margin-left: 0rem;
}
.header_right .header_overlaymenu li .qicon:hover {
  color: #499796;
}

.header_right .header_overlaymenu .qicon-menu .qicon::before, .header_menu .qicon::before {
  content: "";
  display: inline-block;  
  background-image: url('../../lp/img/questionmark1.webp');
  background-size: cover;
  background-repeat: no-repeat;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 0.2rem;
  transform: translateY(0.8px);
}
.header_menu .qicon::before {
  transform: translateY(3px);
}
.header_right .header_overlaymenu .qicon:hover.qicon::before, .header_menu .qicon:hover.qicon::before {
  background-image: url('../../lp/img/questionmark2.webp');
}
.header_menu .qicon::before {
  transition: 0.1s;
}
.header_menu .qicon:hover.qicon::before {
  transition: 0.1s;
}
.header_right .header_overlaymenu .qicon-menu .qicon::after {
  content: "";
  display: inline-block;
  position: absolute;
  background-image: url('../../lp/img/arrow-btn1.webp');
  background-size: cover;
  background-repeat: no-repeat;
  width: 1.8rem;
  height: 1.8rem;
  margin-top: .2rem;
  margin-left: 9.5rem;
  transform: rotate(0deg);
  transition: .2s; 
}
.header_right .header_overlaymenu .qicon-menu .qicon:hover.qicon::after {
  content: "";
  display: inline-block;
  background-image: url('../../lp/img/arrow-btn2.webp');
  margin-top: .2rem;
  margin-left: 9.5rem;
  transform: rotate(-180deg);
  transition: .2s;
}
.accordion_contents {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  transition: .3s ease-in-out;
  pointer-events: none;
  transform: translateY(11rem);
  box-shadow: 0px 0px 8px -2px rgba(0, 0, 0, .2);
  background-color: #ffffff;
  border-radius: 4px;
}
.qicon-menu .qicon:hover >.accordion_contents {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: .3s ease-in-out;
  transform: translateY(14rem);
}
.accordion_contents .accordion_menu {
  flex-direction: column;
  padding: 2rem;
}
.accordion_contents .accordion_menu li {
  display: flex;
  padding: 1rem 0;
  transition: .1s;
}
.accordion_contents .accordion_menu li a {
  margin-left: .7rem;
  margin-right: .7rem;
  color: #000000;
  font-size: 1.6rem;
  font-weight: 500;
}
.accordion_contents .accordion_menu li a:hover {
  color: #499796;
}


/*----------Englishボタン----------*/
.header-right-inner .header_right ul li a {
  margin-right: 1vw;
}


/*----------ハンバーガーメニュー----------*/
.hamburger{
  display: none;
  position: relative;
  width: 4.0rem;
  height: 4.0rem;
  border: 2px solid #000000;
  border-radius: 999rem;
  cursor: pointer;
}
.hamburger span{
  position: absolute;
  width: 50%;
  height: 0.2rem;
  left: 25%;
  background-color: #000000;
  transition: 0.3s;
}
.hamburger span:first-of-type{
  top: 30%;
}
.hamburger span:nth-of-type(2){
  top: 49%;
}
.hamburger span:last-of-type{
  top: 69%;
}
.header_menu {
  position: fixed;
  width: 420px;
  height: 100%;
  top: 6.5rem;
  right: 0;
  padding: 2vw 3vw 5vw;
  background-color: rgba(255,255,255,0.9);
  opacity: 0;
  transform: translateX(100%);
  transition: 0.3s;
  scrollbar-width: thin;
  overflow-y: scroll;
}
.header_menu::-webkit-scrollbar-thumb {
  background: #00608d;
  border-radius: 999rem;
}

.header_menu::-webkit-scrollbar-track {
  background: #fff;
}

.header_menu ul:nth-of-type(n+2) {
  padding-top: 2.2vw;
  border-top: 1px solid #000000;
}
.header_menu li {
  margin-bottom: 2.2vw;
  font-size: 1.6rem;
  text-align: right;
}
.header_menu li a {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-right: -3.0rem;
  color: #000000;
  transition: 0.3s;
}
.header_menu li a::after {
  content: "";
  width: 3.0rem;
  height: 0.15rem;
  top: 50%;
  right: 0;
  margin-left: 1vw;
  background-color: #000000;
  transform: scale(0,1); 
  transition: 0.3s; 
  transform-origin: left top;
}
.header_menu li a:hover {
  margin-right: 0;
  color: #499796;
}
.header_menu li a:hover::after {
  transform: scale(1,1);
}

/* active時 */
.hamburger.active span:first-of-type{
  top: 50%;
  transform: rotate(45deg);
}
.hamburger.active span:nth-of-type(2){
  opacity: 0;
}
.hamburger.active span:last-of-type{
  top: 50%;
  transform: rotate(-45deg);
}
.header_menu.active {
  opacity: 1;
  transform: translateX(0); 
}

/*----------footer----------*/
footer {
  font-size: 1.2rem;
}
footer a {
  color: #fff;
}
footer .sns a {
  color: #99a6b6;
}
footer a:hover {
  color: #499796;
}
.footer_inner , .footer_menu , .sns {
  display: flex;
}
.footer_inner {
  justify-content: space-between;
}
.footer_inner.bg_black {
  padding: 3.0rem 5.0vw;
  color: #fff;
  background: #3B4043;
}
.footer_inner.bg_white {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 1.5rem 5.0vw;
}
.footer_item {
  margin-right: 4.0vw;
}
.footer_sample {
  margin-top: 1.0vw;
}
.footer_item li:nth-of-type(n+2) {
  margin-top: 0.7vw;
}
footer .sns li {
  width: 2.0rem;
  margin-left: 1.5vw;
}
.footer_copy {
  margin-right: 5.0vw;
  text-align: right;
}
footer .pmark {
  width: 6.5rem;
  height: auto;
}

/*----------main----------*/
.normal {
  font-weight: normal;
}
.green_tx {
  color: #499796;
}
main h2 {
  font-size: 3.6rem;
  text-align: center;
}
.h2_sub {
  font-size: 2.0rem;
  text-align: center;
}
.h2_sub {
  margin: 0 4.0rem 2.0rem;
}
.h2_sub.bottom {
  margin: 2.0rem 4.0rem 0;
}
main > section {
  padding: 4.6vw 0 ;
}

.btn {
  text-align: center;
}
.btn a {
  cursor: pointer;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.btn_green a {
  display: inline-block;
  margin-top: 3.0rem;
  padding: 1.2rem 3.0rem;
  border: 4px solid #499796;
  border-radius: 999rem;
  background: #499796;
  color: #fff;
  font-size: 2.4rem;
  cursor: pointer;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.btn_green a:hover {
  background: #fff;
  color: #499796;
}

.btn_red a {
  display: inline-block;
  margin-top: 1rem;
  padding: 1.2rem 3.0rem;
  border: 4px solid #FF5B5B;
  border-radius: 999rem;
  background: #FF5B5B;
  color: #fff;
  font-size: 2.4rem;
  cursor: pointer;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.btn_red a:hover {
  background: #fff;
  color: #FF5B5B;
}
.btn_red a#entry-topmv-btn {
  padding: 1.2rem 6.0rem;
}
.btn_white a {
  display: inline-block;
  margin-top: 3.0rem;
  padding: 1.2rem 3.0rem;
  border: 4px solid #fff;
  border-radius: 999rem;
  background: #fff;
  color: #499796;
  font-size: 2.4rem;
  cursor: pointer;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.btn_white a:hover {
  background: #499796;
  color: #fff;
}

#step {
  background: #E9FAFF;
}
.gray {
  background: #F7F7F7; 
}
.blue {
  background-color: #E9FAFF;
}
.about-inner , .step_inner , .scene_inner , .plan_inner , .plan_inner , .faq_inner , .start_inner , .case-inner , .blog-inner {
  max-width: 100rem;
  margin: 0 auto;
}

/*----------top----------*/
.top {
  position: relative;
  margin: 6.0rem 0 3.0rem 0;
}
.top .main-inner {
  display: flex;
  align-items: center;
}
.top .main-inner h1 {
  display: inline-block;
  width: 50%;
  position: relative;
  padding: 0rem 0 1rem 5rem;
  font-size: 6rem;
  z-index: 50;
}
.top .main-inner h1 .h1_logo::before {
  content: "";
  display: inline-block;
  background-image: url(../../lp/img/logo04.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 25rem;
  height: 7.5rem;
  padding: 3px;
  margin-left: 0.2rem;
  margin-right: 0.6rem;
  transform: translateY(12px);
}
.top .main-inner .inner-img {
  display: inline-block;
  vertical-align: bottom;
  max-width: 100%;
  width: 50%;
  height: auto;
  position: relative;
}
.top .main-inner .inner-img img {
  width: 100%;
  padding: 0 6rem 0 6rem;
}
.top .btn_green, .top .btn_red {
  text-align: center;
}

/*----------slider----------*/
.slider_inner {
  width: 100%;
  margin: 3.0rem auto 0;
}
.slider_item {
  height: auto;
  margin: 0 0rem;
}
.slider_item img {
  width: 85%;
  height: auto;
}

/*----------about----------*/
#about {
  background-color: #499796;
}
#about .h2_sub, #about .white_tx, .about-inner p {
  color: #ffffff;
}
#about .h2_sub {
  font-size: 2.4rem;
  margin: 0 4.0rem 1.0rem;
}
#about h2 .span_logo::before {
  content: "";
  display: inline-block;
  background-image: url(../../lp/img/logo05.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 19.3rem;
  height: 5.6rem;
  padding: 3px;
  transform: translateY(12px);
}
.about-inner {
  display: flex;
  align-items: center;
}
.about-inner p {
  display: inline-block;
  width: 45%;
  position: relative;
  padding: 0 0 0 4rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2;
}
.about-inner .inner-img {
  display: inline-block;
  vertical-align: bottom;
  max-width: 100%;
  width: 52%;
  height: auto;
  position: relative;
}
.about-inner .inner-img img {
  width: 100%;
  padding: 0 2rem 0 0;
}

/*----------step----------*/
#step .green_tx {
  font-size: 2.4rem;
}
.step_inner {
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-top: 2.0rem;
}
.step_inner li {
  position: relative;
  width: 30%;
  margin-left: 5rem;
}
.step_inner li:first-child {
  margin-left: 0rem;
}
.step_inner figure{
  text-align: center;
}
.step_inner img{
  width: 46%;
}
.step_inner dl {
  margin-top: 2rem;
}
.step_inner dt {
  margin-bottom: 2.0rem;
  font-size: 2.4rem;
  text-align: center;
}
.step_inner li dl dd {
  text-align: center;
  font-weight: 500;
}
.step_inner li::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6.6rem;
  height: 4.2rem;
  top: 48%;
  left: -4.7rem;
  background: url(../img/ic02.webp) no-repeat;
  background-size: 6.6rem 2.2rem;
  transform: rotate(-90deg);
}
.step_inner li:first-child::after {
  display: none;
}
#step .btn {
  margin-top: 3rem;
}

/*----------scene----------*/
.scene_inner {
  display: flex;
  justify-content: space-between;
  margin-top: 4.0rem;
}
.scene_inner li {
  width: 320px;
}
.scene_inner dl {
  margin-top: 2.5rem;
}
.scene_inner dt {
  margin-bottom: 2.0rem;
  font-size: 2.4rem;
  text-align: center;
}
.scene_inner li dd {
  font-weight: 500;
}

/*----------template----------*/
.template_inner {
  width: 100%;
  margin: 4.0rem auto 0;
}
.template_item {
  height: auto;
  margin: 0 2.0rem;
}
.template_item img {
  width: 100%;
  height: auto;
}
.slick-dots {
  bottom: -6.0rem;
  margin-bottom: 2.0rem;
}
.slick-dots li {
  margin: 0 0.8rem;
}
.slick-dots li button:before {
  font-size: 25px;
  opacity: 1;
  color: #CDD6DD;
}
.slick-dots li.slick-active button:before{
  color: #499796;
  opacity: 1;
}

/*----------features----------*/
.features_inner {
  margin-top: 4.0rem;
}
.features_inner li {
  width: 230px;
  margin: 0 1.2rem;
  padding: 2.0rem 0 1.0rem;
  border: #499796 solid 0.3rem;
  border-radius: 0.4rem;
}

.features_inner .link:hover {
  background: #F6FDFF;
}
.features_inner figure {
  margin: 1.0rem 3.0rem 0;
}
.features_inner figure img {
  width: auto;
  max-height: 7.5rem;
  margin: 0 auto;
  text-align: center;
}
.features_inner h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 54px;
  margin: 1.8rem 0;
  text-align: center;
}
.features_inner p {
  color: #000000;
  font-size: 1.4rem;
}

/*----------design----------*/
.design_page_p {
  margin-bottom: 30px;
}
.design_page_bnr {
  text-align: center;
  width: 100%;
  height: auto;
}
.design_page_bnr .viewpc-bnr {
  display: block;
}
.design_page_bnr .viewsp-bnr {
  display: none;
}
.design_page_bnr a img {
  max-width: 60%;
}
/*----------plan----------*/
.plan_type {
  display: grid;
  grid-gap: 2.0rem;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  margin: 8.0rem 3.0vw 0;
}
.plan_type > section {
  display: grid;
  grid-row: span 4;
  grid-template-rows: subgrid;
  position: relative;
  padding-bottom: 2.0rem;
  border: #D3DBE1 solid 0.2rem;
  border-radius: 0 0 0.6rem 0.6rem;
  background: #fff;
  text-align: center;
}
.plan_type > section:first-of-type , .plan_type > section:nth-of-type(5) {
  border-radius: 0.6rem;
}
.plan_type .easy , .plan_type .fullscale , .plan_type .premium {
  position: absolute;
  width: calc(100% + 0.4rem);
  height: 3.3rem;
  top: -3.3rem;
  left: -0.2rem;
  padding: 0.5rem 0;
  border-radius: 0.6rem 0.6rem 0 0;
  background: #70C9C8;
  color: #fff;
  font-size: 1.2rem;
}
.plan_type .fullscale {
  background: #499796;
}
.plan_type .premium {
  background: #FF5B5B;
}
.plan_type h3 {
  margin: 3.0rem 0 0;
  font-size: 2.4rem;
}
.plan_type .price {
  font-size: 2.4rem;
}
.plan_type span {
  padding-left: 0.5rem;
  font-size: 4.0rem;
}
.plan_type .unit {
  font-size: 1.2rem;
}
.plan_type .plan_contents {
  border-bottom: #CCCCCC solid 1px;
  background: #FBFCFC;
}
.plan_type .plan_contents li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 1.0rem 3.0rem;
  border-top: #CCCCCC solid 1px;
}
.plan_type .title {
  font-size: 1.4rem;
  font-weight: normal;
}
.plan_type .plan_contents li.li_add{
  align-items: center;
}
.plan_type .title_add {
  text-align: left;
}
.plan_type .btn a {
  display: inline-block;
  padding: 1.3rem 2.0rem;
  border-radius: 999rem;
  border: #CDD6DD solid 1px;
  color: #499796;
  font-size: 1.4rem;
}
.plan_type .btn a:hover {
  background: #499796;
  color: #fff;
}
.plan_type .enterprise_tx {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
}
.plan_type .enterprise_contents {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3.0rem;
  border-top: #CCCCCC solid 1px;
  border-bottom: #CCCCCC solid 1px;
  background: #FBFCFC;
}
.plan_ps {
  margin: 3.0rem 5vw 1.0rem;
  text-align: center;
}
.plan_ps p {
  font-size: 2.0rem;
}
.plan_ps ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 1.0rem 0 0 2.5rem;
}
.plan_ps ul li {
  position: relative;
}
.plan_ps ul li:before {
  position: absolute;
  content: "";
  display: inline-block;
  width: 0.7rem;
  height: 0.7rem;
  top: 1.0rem;
  left: -1.5rem;
  margin-right: 0.5rem;
  border-radius: 999px;
  background: #499796;
}
.plan_ps ul li + li {
  margin-left: 5.0rem;
}
/*----------faq----------*/
.faq_inner {
  display: flex;
  justify-content: space-between;
  margin-top: 5rem;
}
.left_inner , .right_inner {
  width: calc((100% - 7.0rem)/2);
}
.details {
  margin-bottom: 5rem;
  cursor: pointer;
}
.details:last-of-type {
  margin: 0;
}
.summary {
  display: flex;
  padding: 1.0rem 0;
  border-bottom: #B2B2B2 solid 0.1rem;
  list-style: none;
}
.summary::-webkit-details-marker {
  display:none;
}
.summary svg {
  width: 1.9rem;
}
.summary p {
  width: calc(100% - 2.9rem);
  margin-left: 1.0rem;
}
.answer p {
  padding: 1.0rem 0;
}

/*----------news----------*/
#news .news_bg {
  width: 100rem;
  margin: 0 auto;
}
#news .news_h2 {
  position: relative;
  margin-bottom: 4.0rem;
}
#news .news_h2::after {
  content: '';
  position: absolute;
  width: 0.2rem;
  height: 2.5rem;
  top: 6.0rem;
  left: 50%;
  background-color: #33B6DD;
}
#news .news_area {
  margin-bottom: 1rem;
}
#news .news_wrap {
  margin: 2.0rem 22rem 3rem;
}
.news_wrap .news_day {
  margin-bottom: 0.5rem;
}
.news_wrap .news_text {
  margin-left: 1.5rem;
  line-height: 2.8rem;
  font-weight: 600;
}
.news_wrap .news_text a {
  color: #499796;
}
.news_wrap .news_text a:hover {
  color: #60c3c1;
}
.news_link {
  text-align: center;
  font-size: 2rem;
}
.news_link a {
  color: #499796;
}
.news_link a:hover {
  color: #60c3c1;
}

/*----------start----------*/
.start {
  background: url("../img/bg02.webp") no-repeat center top;
  background-size: auto 100%;
  background-color: #E9FAFF;
}
.start_inner {
  display: block;
  padding: 4.6vw 0 4.6vw 45rem;
  font-size: 2.8rem;
  text-align: center;
}
.start_inner p {
  color: #000;
  line-height: 1.4;
}
.start_inner p img {
  width: 30rem;
  padding-right: 1rem;
}
.start_inner .btn_green span#entry-allbanner-btn {
  display: inline-block;
  margin-top: 3.0rem;
  padding: 1.2rem 3.0rem;
  border: 4px solid #499796;
  border-radius: 999rem;
  background: #499796;
  color: #fff;
  font-size: 2.4rem;
  cursor: pointer;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.start:hover:not(.start_wepagestudio) {
  opacity: 0.8;
}
.start:hover .start_inner .btn_green span#entry-allbanner-btn{
  opacity: 1;
  background: #fff;
  color: #499796;
}

.start_area {
  display: flex;
  align-items: center;
  gap: 3.0rem;
}
.start.start_wepagestudio {
  background: url("../img/bg03.png") no-repeat right top;
  background-size: auto 100%;
  background-color: #E9FAFF;
}
.start_wepagestudio .start_inner {
  padding: 4.6vw 30rem 4.6vw 1rem;
}
.start_wepagestudio .start_inner p {
  font-size: 2.4rem;
}
.start_wepagestudio .start_inner p img {
  width: 21rem;
  padding: 0 0 1.0rem;
}

/*----------case----------*/
#case {
  background-color: #499796;
}
#case .h2_sub, #case h2 {
  color: #fff;
}
.case-inner {
  display: flex;
  justify-content: space-between;
  margin-top: 4.0rem;
}
.case-inner li {
  display: flex;
  flex-direction: column;
}
.case-inner-link {
  display: inline-block;
  width: 320px;
  height: 100%;
  background: #fff;
  box-shadow: 0px 0px 8px -2px rgba(0, 0, 0, .2);
}
.case-inner-link-tx {
  padding: 20px 15px;
  color: #000;
}
.case-inner-link-tx .case-tx {
  margin-bottom: 4.0rem;
  font-size: 1.8rem;
}
.case-inner-link-tx .case-tag {
  display: inline-block;
  margin-bottom: 3px;
  padding: 2px 10px;
  border-radius: 999px;
  color: #fff;
  background: #499796;
  font-size: 1.3rem;
  font-weight: normal;
}
.case-inner-link-tx .case-name {
  font-size: 1.8rem;
}
.case-inner-link-tx .case-url {
  font-size: 1.0rem;
}
.case-inner-link:hover {
  background: #f6fdff;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.case-inner-link:hover .case-tx, .case-inner-link:hover .case-name, .case-inner-link:hover .case-url {
  color: #499796;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.case-inner-link:hover figure {
  opacity: 0.8;
}

/*----------blog----------*/
#blog h2 img {
  width: 380px;
}
.blog-inner {
  display: flex;
  justify-content: space-between;
  margin-top: 3.5rem;
}
.blog-inner li {
  display: flex;
  flex-direction: column;
}
.blog-inner-link {
  display: inline-block;
  width: 320px;
  height: 100%;
  background: #fff;
}
.blog-inner-link-tx {
  padding: 20px 15px;
  color: #000;
  box-shadow: 0px 0px 8px -2px rgba(0, 0, 0, .2);
}
.blog-inner-link-tx .blog-tx {
  margin-bottom: 4.0rem;
  font-size: 1.8rem;
}
.blog-inner-link-tx .blog-tag {
  display: inline-block;
  margin-bottom: 3px;
  padding: 2px 10px;
  border-radius: 999px;
  color: #fff;
  background: #499796;
  font-size: 1.3rem;
  font-weight: normal;
}

.blog-inner-link:hover {
  background: #f6fdff;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.blog-inner-link:hover .blog-tx {
  color: #499796;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.blog-inner-link:hover figure {
  opacity: 0.8;
}

/*----------us版----------*/
#us {
  background: #9cd5de;
}
.us-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 100rem;
  margin: 0 auto;
  font-family: "Montserrat", 'Helvetica', 'Arial', sans-serif;
}
.us-inner h2 {
  font-weight: 400;
  font-size: 4.6rem;
}
.us-inner h2 img {
  width: 20rem;
  margin-left: 15px;
}
.us-tx {
  color: #000;
  text-align: center;
}
.us-tx-item {
  margin-top: 1.0rem;
  font-size: 1.8rem;
  font-weight: 400;
}
.us-tx-item span {
  font-style: italic;
  font-weight: bold;
}
.btn-us span {
  display: inline-block;
  margin-left: 1.0rem;
  padding: 1.0rem 2.5rem;
  border: 2px solid #ee458e;
  border-radius: 9999px;
  background: #ee458e;
  color: #fff;
  font-size: 1.4rem;
  transition: 0.3s;
}
.us-inner:hover {
  opacity: 0.8;
}
.us-inner:hover .btn-us span {
  opacity: 1;
  background: #fff;
  color: #ee458e;
}

/*----------chatbot----------*/
#tayori-ai-chatbot-app .tayori-ai-chatbot-app-tayori-ai-chatbot-icon {
  background-color: #49979600;
}
.tayori-ai-chatbot-app-chat {
  font-family: "Noto Sans JP", YuGothic, 游ゴシック, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif !important;
}
.tayori-ai-chatbot-app-header {
  background-color: #499796!important;
}
.tayori-ai-chatbot-app-title {
  font-size: 1.6rem; color: #ffffff;
}
#tayori-ai-chatbot-app .tayori-ai-chatbot-app-chat .tayori-ai-chatbot-app-room .tayori-ai-chatbot-app-talk {
  font-size:1.5rem!important;
}
@media screen and (max-width: 768px) { 
  #tayori-ai-chatbot-app .tayori-ai-chatbot-app-chat .tayori-ai-chatbot-app-room .tayori-ai-chatbot-app-talk {
    font-size:1.4rem!important;
  }
}
#tayori-ai-chatbot-app .tayori-ai-chatbot-app-chat .tayori-ai-chatbot-app-ai-chat-message .tayori-ai-chatbot-app-ai-chat-btn-send {
  fill: #499796!important;
}
#tayori-ai-chatbot-app {
  opacity: 0;
  transition: all 0.35s;
}
#tayori-ai-chatbot-app.isActive {
  opacity: 1;
  transition: all 0.65s;
}
@media screen and (max-width: 1750px) {
  /*----------top----------*/
  .top .main-inner h1 {
    font-size: 4.2rem;
  }
  .top .main-inner h1 .h1_logo::before {
    width: 17rem;
    height: 5.3rem;
  }
  
}
@media screen and (max-width: 1480px) {
  .top_tx {
    position: relative;
    right:0;
    margin: 1.0vw 0 0;
    text-align: center;
  }
  .top .main-inner .inner-img img {
    padding: 0 4rem 0 4rem;
  }
}
@media screen and (max-width: 1250px) {
  .top_tx {
    position: relative;
    right:0;
    margin: 1.0vw 0 0;
    text-align: center;
  }
  .plan_type {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 5.0rem 2.0rem;
  }
  .plan_type > section {
    grid-gap: 2.0rem;
  }
  
  /*----------top----------*/
  .top .main-inner h1 {
    padding: 1.5rem 0 1rem 5rem;
  }
  .top .main-inner .inner-img img {
    padding: 0 3rem 0 0;
  }
  .start.start_wepagestudio {
    background: url("../img/bg03.png") no-repeat center top;
    background-size: auto 100%;
  }
}
@media screen and (max-width: 1090px) {
  /*----------header----------*/
  .header-left-inner .header_right {
    display: none;
  }
  .hamburger {
    display: block;
  }
  .menu-open .accordion_contents {
    pointer-events: none;
  }
  .btn_header_last a {
    margin-right: 1vw;
  }
  
  /*----------top----------*/
  .top .main-inner {
    display: block;
  }
  .top .main-inner h1 {
    display: inline-block;
    width: 100%;
    position: relative;
    padding: 4rem 0 0rem 5rem;
    font-size: 4.6rem;
    z-index: 50;
  }
  .top .main-inner .inner-img {
    display: inline-block;
    vertical-align: bottom;
    max-width: 100%;
    width: 100%;
    height: auto;
    position: relative;
  }
  .top .main-inner .inner-img {
    padding: 2rem 4rem 0 4rem;
  }
  .top .main-inner .inner-img img {
    padding: 0 0 0 0;
  }
  
  /*----------about----------*/
  .about-inner {
    margin: 3rem 2rem 0;
  }
  .about-inner .inner-img img {
    padding: 0 0 0 0;
  }
  
}
@media screen and (max-width: 1024px) {
  .spOnly {
    display: block;
  }
  
  /*----------header----------*/
  .header-inner ul li a {
    margin-left: 2vw;
    font-size: 1.5rem;
  }
  
  /*----------top----------*/
  .top h1 {
    font-size: 5.5rem;
  }
  .top::before {
    width: 70%;
    top: 4.0rem;
    left: 25vw;
  }
  .top_inner {
    display: block;
  }
  
  /*----------main----------*/
  .step_inner , .scene_inner , .plan_inner , .plan_inner , .faq_inner , .case-inner , .blog-inner {
    max-width: 100%;
    margin: 5.0vw 5.0vw 0;
    }
  .features_inner {
    max-width: 100%;
    margin: 5.0vw 0 0;
  }
  .us-inner {
    max-width: 100%;
    padding: 5.0vw;
  }
  .us-inner figure {
    display: none;
  }
    main h2 {
      margin: 0 5.0vw;
    }
    .h2_sub {
      margin: 0 5.0vw 3.0vw;
    }
    .h2_sub.bottom {
      margin: 3.0vw 5vw 0;
    }
  
  /*----------step----------*/
  .step_inner {
    margin: 5vw 0vw 0;
  }
  .step_inner li::after {
    left: -5vw;
  }
  
  /*----------scene----------*/
  .scene_inner li {
    width: 32%;
  }
  
  /*----------features----------*/
  .features_inner li {
    margin: 0 1.0rem;
    border: #499796 solid 0.2rem;
    border-radius: 0.4rem;
  }
  .features_inner figure {
    margin: 1vw 5vw 0;
  }
  .features_inner h3 {
    margin: 0;
    font-size: 1.4rem;
  }
  
  /*----------design----------*/
  .design_page_bnr {
    text-align: center;
    width: 100%;
    height: auto;
    padding: 0 5vw 0 5vw;
  }
  .design_page_bnr .viewpc-bnr {
    display: none;
  }
  .design_page_bnr .viewsp-bnr {
    display: block;
  }
  .design_page_bnr a img {
    max-width: 100%;
  }
  
  /*----------plan----------*/
  .plan_type {
    grid-template-columns: 1fr 1fr;
    margin: 8vw 5vw 5vw;
    grid-gap: 6.0rem 2.0rem
  }
  
  /*----------news----------*/
  #news .news_bg {
    width: 100%;
    margin: 0 auto;
  }
  #news .news_wrap {
    margin: 2.0rem 12rem 3rem;
  }
  
  /*----------start----------*/
  .start {
    background: url(../img/bg02.webp) no-repeat 30% top;
    background-size: auto 100%;
  }
  .start_inner {
    margin-top: 0;
    padding: 6.0rem 0 6.0rem 35vw;
  }
  .start.start_wepagestudio {
    background: url(../img/bg03.png) no-repeat 60% top;
    background-size: auto 100%;
  }
  .start_wepagestudio .start_inner {
    padding: 6.0rem 35vw 6.0rem 1.5vw;
  }
  
  
  .case-inner li , .blog-inner li {
    width: 32%;
  }
  .case-inner-link , .blog-inner-link {
    width: 100%;
  }
  
  /*----------footer----------*/
  .footer_item {
    display: block;
    margin-right: 4.0vw;
  }
  footer .sns {
    display: flex;
  }
  .footer_item li {
    margin: 0 0 0.7vw;
  }
  .footer_sample {
    margin-top: 1.5vw;
  }
}

@media screen and (max-width: 768px) {
  .pcOnly {
    display: none;
  }
  
  /*----------header----------*/
  .header_logo {
    width: 28vw;
    max-width: 150px;
  }
  .header-inner ul {
    display: none;
  }
  .btn_header a {
    display: inline-block;
    margin-right: 3vw;
    padding: 1vw 3vw;
    background: #FF5B5B;
    color: #fff;
    font-size: 1.2rem;
  }
  .header_menu {
    width: 100%;
  }
  .header_menu li {
    margin-bottom: 3vw;
  }
  /*----------top----------*/
  .top {
    display: flex;
    flex-direction: column;
  }
  .top .main-inner h1 {
    padding: 5vw 1rem 0 1rem;
    font-size: 2.6rem;
  }
  .top .main-inner h1 .h1_logo::before {
    width: 10rem;
    height: 3.2rem;
    margin-right: 0.3rem;
  }
  .top .main-inner .inner-img {
    padding: 1rem 0 0 0;
  }
  .top::before {
    z-index: -10;
    width: 90%;
    top: 8.0rem;
    left: 5vw;
    background-position: top center;
  }
  .top_inner {
    display: block;
  }
  .top_tx {
    order: 4;
    margin: 2.0vw 5.0vw 5.0vw;
    text-align: left;
  }
  .slider {
    order: 2;
    margin-bottom: 3.0vw;
  }
  .slider_inner {
    margin: 1rem auto 0;
  }
  .top .btn_green, .top .btn_red {
    order: 3;
  }
  
  /*----------main----------*/
  main > section {
    padding: 8vw 0;
  }
  main h2 {
    font-size: 2.6rem;
  }
  .h2_sub {
    font-weight: normal;
    font-size: 1.6rem;
  }
  .h2_sub {
    margin: 0 5vw 4vw;
  }
  .h2_sub.bottom {
    margin: 4vw 5vw 0;
    text-align: left;
  }
  .h2_sub_green {
    margin: 4vw 0 0;
    text-align: center;
  }
  .h2_sub_green span {
    font-size: 2.4rem;
  }
  .btn_green, .btn_red , .btn_white {
    margin: 0 5vw;
  }
  .btn_green a, .btn_red a , .btn_white a {
    width: 100%;
    max-width: 55rem;
    font-size: 1.8rem;
  }
  
  /*----------about----------*/
  #about .h2_sub {
    font-weight: 600;
    font-size: 1.8rem;
    margin: 0px 0rem 0rem;
  }
  #about h2 .span_logo::before {
    width: 14rem;
    height: 4.4rem;
    margin-right: 0.2rem;
  }
  .about-inner {
    display: block;
  }
  .about-inner p {
    width: 100%;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    padding: 0 1rem 0 1rem;
  }
  .about-inner p .pcOnly {
    display: none;
  }
  .about-inner .inner-img {
    width: 100%;
  }
  .about-inner .inner-img img {
    padding: 0 0 0;
  }
  
  /*----------step----------*/
  .step_inner {
    display: block;
    margin: 5vw 5vw 0 0;
  }
  .step_inner li {
    display: flex;
    width: 100%;
    margin-bottom: 5rem;
    margin-left: 0rem;
  }
  .step_inner li:last-child {
    margin-bottom: 1rem;
  }
  .step_inner li figure{
    width: 28%;
  }
  .step_inner img {
    width: 80%;
    vertical-align: top;
  }
  .step_inner dl {
    width: 72%;
    margin-top: .5rem;
  }
  .step_inner dt, .step_inner li dl dd {
    text-align: left;
    margin-bottom: 1rem;
  }
  .step_inner dt {
    font-size: 2rem;
  }
  .step_inner .stepOnly {
    display: none;
  }
  .step_inner li::after {
    top: -7.5vw;
    left: 45vw;
    background-size: 3.6rem 1.4rem;
    transform: rotate(0deg);
  }
  #step .btn {
    margin-top: 1rem;
  }
  
  /*----------scene----------*/
  .scene_inner {
    display: block;
  }
  .scene_inner li {
    width: 100%;
  }
  .scene_inner li:nth-of-type(n+2) {
    margin: 10vw 0 0;
  }
  
  /*----------template----------*/
  #template {
    padding: 8vw 0 10vw;
  }
  .template_item {
    margin: 0 2.0vw;
  }
  .slick-dots li {
    margin: 0 1vw;
  }
  .slick-dots li button:before {
    font-size: 20px;
  }
  /*----------features----------*/
  .features_inner {
    grid-gap: 4.0vw;
  }
  
  /*----------plan----------*/
  .plan_type {
    display: block;
    margin: 8vw 5vw 0;
  }
  .plan_type > section {
    margin-top: 6.0vw;
  }
  .plan_type > section:nth-of-type(2) , .plan_type > section:nth-of-type(3) , .plan_type > section:nth-of-type(4) {
    margin-top: 13.0vw;
  }
  .plan_type h3 {
    margin: 4.0vw 0 0;
  }
  .plan_ps ul {
    display: block;
    margin: 1.0rem 0 0 2.5rem;
  }
  .plan_ps ul li {
    text-align: left;
  }
  .plan_ps ul li + li {
    margin-left: 0;
  }
  /*----------faq----------*/
  .faq_inner {
    display: block;
  }
  .left_inner, .right_inner {
    width: 100%;
  }
  .summary {
    margin-top: 7vw;
  }
  
  /*----------news----------*/
  #news .news_h2 {
    position: relative;
    margin-bottom: 8rem;
  }
  #news .news_wrap {
    margin: 2.0rem 3rem 3rem;
  }
  /*----------start----------*/
  .start {
    background: url(../img/bg02sp.webp) no-repeat center top;
    background-size: 100% auto;
    background-color: #e9faff;
  }
  .start_inner {
    padding: 40vw 0 5vw;
    font-size: 2.4rem;
  }
  .start_inner .btn a {
    margin-top: 3vw;
    padding: 3vw 6vw;
    font-size: 2.0rem;
  }
  .start_inner p span img {
    width: 60vw;
    margin-bottom: -0.3vw;
    padding-right: 1vw;
  }
  .start.start_wepagestudio {
    background: url("../img/bg03sp.webp") no-repeat center top;
    background-size: 100% auto;
    background-color: #E9FAFF;
  }
  .start_area {
    flex-direction: column;
    gap: 1.0rem;
  }
  .start_wepagestudio .start_inner {
    padding: 40vw 0 5vw;
  }
  .start_wepagestudio .start_inner p img {
    width: 30rem;
    padding: 0 0 1.0rem;
  }
  
  .case-inner , .blog-inner {
    flex-direction: column;
    gap: 5.0vw;
  }
  .case-inner li , .blog-inner li {
    width: 100%;
  }
  .case-inner li img , .blog-inner li img{
    width: 100%;
  }
  .case-inner-link-tx .case-tx {
    margin-bottom: 3.0rem;
  }
  
  .us-inner {
    flex-direction: column;
  }
  .btn-us {
    margin: 3.0rem 0 0;
  }
  
  /*----------footer----------*/
  .footer_inner , .footer_menu {
    display: block;
  }
  .footer_item  {
    margin: 0 0 4.0vw 0;
  }
  .footer_item {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.0vw;
  }
  .footer_item li {
    margin-bottom: 2.0vw;
  }
  .footer_item li:nth-of-type(n+2) {
    margin: 0 3.0vw 0 0;
  }
  .footer_item li {
    margin: 0 4.0vw 0 0;
  }
  footer .sns li:first-child {
    margin-left: 0;
  }
  
}

/*----------ABtest pattern----------*/
.top_img {
  display: none;
}
.top:has(.abtest) .top_tx, .top .abtest {
  display: none;
}
.top:has(.abtest) {
  margin: 15.0rem 0 8.0rem 0;
}
.top:has(.abtest) h1 {
  -webkit-text-stroke: 6px #ffffff;
  text-stroke: 2px black;
  paint-order: stroke;
}
.top:has(.abtest) .top_img {
  display: block;
  position: absolute;
  right: 2rem;
  margin-top: -28rem;
  width: 65rem;
}
.top:has(.abtest) .btn_red {
  margin: 8.0rem 0;
}

@media screen and (min-width: 1920px) {
  .top:has(.abtest) h1 {
    margin-left: 22rem;
  }
  .top:has(.abtest) .top_img {
    margin-right: 22rem;
  }
}
@media screen and (max-width: 1199px) {
  .top:has(.abtest) {
    margin: 7.0rem 0;
  }
  .top:has(.abtest) .top_img {
    position: relative;
    right: 0;
    margin: 1.0vw auto 0;
    text-align: center;
    width: auto;
    height: 48rem;
    max-width: 850px;
  }
  .top:has(.abtest) .top_img img {
    width: 85rem;
  }
  .top:has(.abtest) .btn_red {
    margin: 0rem 0;
  }
}
@media screen and (max-width: 768px) {
  .top:has(.abtest) .btn_red {
      margin: 0 5vw;
  }
  .top:has(.abtest) .top_img {
    order: 2;
    height: 20rem;
    margin: 6.0vw 0 0;
  }
  .top:has(.abtest) .top_img img {
    width: 40rem;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%);
  }
}


.top:has(.abtest) .top_img img {
  position: absolute;
  inset: 0;
  opacity: 0;
  background-size: cover;
  background-position: center center;
  -webkit-animation: slideAnime 15s 0s infinite;
  animation: slideAnime 15s 0s infinite;
}
.top:has(.abtest) .top_img img:nth-of-type(1) {
  animation: slideAnime-first 15s infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}
.top:has(.abtest) .top_img img:nth-of-type(2) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}
.top:has(.abtest) .top_img img:nth-of-type(3) {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}

@keyframes slideAnime-first {
  0% { opacity: 1; }
  5% { opacity: 1; }
  35% { opacity: 1; }
  45% { opacity: 0; z-index : 10; }
  100% { opacity: 0; }
}
@keyframes slideAnime {
  0% { opacity: 0; }
  5% { opacity: 1; }
  35% { opacity: 1; }
  45% { opacity: 0; z-index : 10; }
  100% { opacity: 0; }
}
