/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Open+Sans:ital,wght@0,700;1,700&display=swap'); */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Open+Sans:ital,wght@0,700;1,700&display=swap');


/*-----------------------------------------
-------------------------------------------
-------------------------------------------
-------------------------------------------

目次　※各々レスポンシブ対応あり

01 共通部分設定＆リセットCSS
02 ヘッダーの設定
03 コンテンツの設定
04 フッターの設定

-------------------------------------------
-------------------------------------------
-----------------------------------------*/

/*-----------------------------------------
01 共通部分設定＆リセットCSS
-------------------------------------------*/
body {
  padding: 0;
  margin: 0;
}

div.body {
  margin: auto;
  min-width: 1100px;
}

@media screen and (max-width:768px) {
  div.body {
    min-width: auto;
  }
}

div.body * {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.center {
  width: calc(100% - 20px);
  max-width: 1300px;
  margin: auto;
  text-align: center;
}

@media screen and (max-width:768px) {
  .center {
    max-width: 500px;
  }
}

.body a {
  transition: all 0.3s ease 0s;
  text-decoration: none;
}

.body a:hover {
  opacity: 1;
}

.body img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

.body p,
.body a,
.body h1,
.body h2,
.body h3,
.body h4,
.body li,
.body span,
.body div {
  text-shadow: none;
  margin: auto;
  padding: 0;
  font-family: 'Noto Sans JP', sans-serif !important;
  font-weight: 400;
  color: var(--black01);
  background: none;
}

.body ul,
.body li {
  margin: 0;
  padding: 0;
}

.body li {
  list-style: none;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

@media screen and (max-width:768px) {
  .sp {
    display: block;
  }

  .pc {
    display: none;
  }
}


.fnt-main {
  font-family: 'Noto Sans JP', sans-serif;
}

:root {
  --black01: #32353a;
  --gray01: #b3b3b3;
  --gray02: #f9fafc;
  --blue01: #5b77fd;
  --blue02: #2d1e91;
  --blue03: #305cd6;
  /* --grade01: 180deg, var(--blue01) 0%, var(--blue02) 100%; */
  --grade02: 90deg, var(--sky01) 0%, var(--sky02) 50%, var(--sky01) 100%;
  --yellow01: #fff292;
  --red01: #f4404e;
  --green01: #1eaa39;

  --sky01: #15acb5;
  --sky02: #006f91;

  --free: #f7931e;
  --standard: #468cc8;
  --advanced: #6bbc1d;
}

/*-----------------------------------------
01 共通部分設定＆リセットCSS　ここまで
-------------------------------------------*/

/*-----------------------------------------
02 ヘッダーの設定
-------------------------------------------*/

section.headGrp {
  margin: 0;
  padding: 20px 0 0;
}

/*タブ切替-------------*/

div.tabGrp {
  display: grid;
  grid-template-columns: 0.8fr 1fr 1fr 1fr;
  gap: 0 7px;
  width: calc(100% - 20px);
  max-width: 1300px;
  margin: auto auto 0;
}

div.tabGrp>div {
  display: block;
  width: 100%;
  text-align: center;
  margin: auto auto 5px;
}

div.tabGrp>div>a {
  display: block;
  padding: 12px 18px 10px;
  border-radius: 15px 15px 0 0;
  color: #fff !important;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

div.tabGrp>div>a:hover {
  opacity: 0.8;
}

div.tabGrp>div.select-tab {
  margin-bottom: 0;
}

div.tabGrp>div.select-tab>a {
  pointer-events: none;
  padding: 18px;
  font-size: 24px;
}

div.tabGrp>div.lineworks-tab a {
  background: var(--green01);
}

div.tabGrp>div.lineworksroger-tab a {
  background: var(--blue01);
}

div.tabGrp>div.koubai-tab a {
  background: #f1951c;
}

div.tabGrp>div.lineworksainote-tab a {
  background: var(--sky01);
}

@media screen and (max-width:768px) {
  div.tabGrp {
    gap: 0 5px;
  }

  div.tabGrp>div>a,
  div.tabGrp>div.select-tab>a {
    padding-left: 5px;
    padding-right: 5px;
    font-size: 18px;
  }
}

@media screen and (max-width:500px) {
  div.tabGrp {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  div.tabGrp>div>a {
    border-radius: 100px;
  }

  div.tabGrp>div.select-tab>a {
    border-radius: 20px 20px 0 0;
  }

  div.tabGrp>div>a,
  div.tabGrp>div.select-tab>a {
    font-size: 6.5vw;
  }
}

/*タブ切替　ここまで-------------*/

/*追従メニュー----------------*/
div.menuGrp {
  width: 100%;
  height: 130px;
  position: relative;
  margin-bottom: 40px;
}

div.menu_Button {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 40px);
  max-width: 1100px;
  transition: all 0.3s ease 0s;
  z-index: 999;
}

ul.menu_ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  padding: 10px 10px 10px 30px;
  border: 2px solid #fff;
  border-radius: 100px;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2));
}

ul.menu_ul>p {
  display: none !important;
}

li.menu_li>a {
  display: inline-block;
  padding: 1em 1.5em;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--black01) !important;
}

li.menu_li>a span {
  display: block;
  background: var(--red01);
  padding: 5px;
  margin-bottom: 5px;
  line-height: 1;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}

li.menu_li:first-of-type>a {
  padding-left: 3em;
}

/* li.menu_li.menu_offerBtn{
  padding-right: 20px;
} */
li.menu_li.menu_offerBtn>a {
  display: block;
  width: 100%;
  padding: 1em 1.5em;
  text-align: center;
  color: #fff !important;
  border-radius: 100px;
  background: -webkit-linear-gradient(var(--grade02));
  background: -moz-linear-gradient(var(--grade02));
  background: linear-gradient(var(--grade02));
  background-size: 200% 100%;
  position: relative;
}

li.menu_li>a:hover {
  color: var(--sky01) !important;
  transform: scale(0.97);
}

li.menu_li.menu_offerBtn>a:hover {
  color: #fff!important;
  transform: scale(1);
  background-position: 110% 0;
}

div.menu_Button.fixed_menu_Button {
  position: fixed;
  top: 10px;
  left: 50%;
  max-width: 900px;
}

div.menu_Button.fixed_menu_Button ul.menu_ul {
  padding: 8px;
}

div.menu_Button.fixed_menu_Button a {
  font-size: 16px;
  padding: 1em 0.75em;
}

div.menu_Button.fixed_menu_Button a span {
  font-size: 13px;
}

div.menu_Button.fixed_menu_Button li.menu_li:first-of-type>a {
  padding-left: 3em;
}

/*追従メニュー　ここまで----------------*/


/*ハンバーガーメニュー-----------------------------*/
#g-nav {
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top: 0;
  right: -120%;
  width: 25%;
  height: 100%;
  /*ナビの高さ*/
  background: #fff;
  /*動き*/
  transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
  right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 25%;
  height: 100%;
  /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
  display: grid;
  grid-template-columns: 1fr;
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 400px;
  max-width: fit-content;
  padding-left: 0;
}

/*リストのレイアウト設定*/
#g-nav li {
  list-style: none;
  text-align: center;
  padding: 0 0 10px;
}

#g-nav li a {
  color: var(--sky01);
  text-decoration: none;
  padding: 0.65em 1.25em;
  display: block;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.1em;
  font-weight: bold;
  font-size: 24px;
  letter-spacing: 0.1em;
  white-space: nowrap;
  vertical-align: baseline;
}

#g-nav li.menu_offerBtn,
#g-nav li.menu_LW-Btn,
#g-nav li.menu_LWR-Btn {
  padding-top: 10px;
}

#g-nav li.menu_offerBtn a {
      background: -webkit-linear-gradient(var(--grade02));
    background: -moz-linear-gradient(var(--grade02));
    background: linear-gradient(var(--grade02));
        background-size: 200% 100%;
  color: #fff !important;
  border-radius: 100px;
}

#g-nav li.menu_LW-Btn a {
  background: var(--green01);
  color: #fff !important;
  border-radius: 100px;
}

#g-nav li.menu_LWR-Btn a {
  background: var(--blue03);
  color: #fff !important;
  border-radius: 100px;
}



#g-nav li a i {
  vertical-align: baseline;
  color: #fff !important;
  margin-right: 7px;
}

#g-nav li a:hover {
  opacity: 0.75;
}

/*========= ボタンのためのCSS ===============*/
.openbtn {
  position: fixed;
  z-index: 9999;
  /*ボタンを最前面に*/
  bottom: 90px;
  right: -4px;
  cursor: pointer;
  width: 70px;
  height: 70px;
  background: var(--sky01) !important;
  border: 3px solid #fff;
  border-radius: 3px 0 0 3px;
}

/*×に変化*/
.openbtn span {
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 17px;
  height: 3px;
  border-radius: 2px;
  background-color: #fff;
  width: 45%;
}

.openbtn span:nth-of-type(1) {
  top: 17px;
}

.openbtn span:nth-of-type(2) {
  top: 30px;
}

.openbtn span:nth-of-type(3) {
  top: 43px;
}

.openbtn.active span:nth-of-type(1) {
  top: 26px;
  left: 22px;
  transform: translateY(6px) rotate(-45deg);
  width: 40%;
}

.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn.active span:nth-of-type(3) {
  top: 38px;
  left: 22px;
  transform: translateY(-6px) rotate(45deg);
  width: 40%;
}

@media (max-width: 768px) {
  #g-nav li a {
    font-size: 20px;
  }

  .openbtn {
    width: 60px;
    height: 55px;
    bottom: 80px;
  }

  .openbtn span {
    left: 15px;
  }

  .openbtn span:nth-of-type(1) {
    top: 15px;
  }

  .openbtn span:nth-of-type(2) {
    top: 25px;
  }

  .openbtn span:nth-of-type(3) {
    top: 35px;
  }

  .openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 17px;
  }

  .openbtn.active span:nth-of-type(3) {
    top: 30px;
    left: 17px;
  }

  #g-nav {
    width: 100%;
  }

  /*ナビゲーションの縦スクロール*/
  #g-nav.panelactive #g-nav-list {
    /*ナビの数が増えた場合縦スクロール*/
    width: 100%;
  }

}

/*ハンバーガーメニューここまで---------------*/



/*フローティング------------*/
div.floating {
  position: fixed;
  bottom: 0;
  left: 0;
  background: rgba(199, 199, 199, 0.6);
  display: block;
  width: 100%;
  z-index: 998;
}

div.float_flex {
  display: flex;
}

div.float_item {
  max-width: 550px;
  width: 90%;
  padding: 15px 0;
  margin: auto;
}

div.float_item a {
  display: block;
  width: 100%;
  padding: 0.75em 2em 0.75em 1em;
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0.1em;
  border-radius: 100px;
  background: -webkit-linear-gradient(var(--grade02));
  background: -moz-linear-gradient(var(--grade02));
  background: linear-gradient(var(--grade02));
  background-size: 200% 100%;
  position: relative;
}

div.float_item a:after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  position: absolute;
  top: 50%;
  right: 35px;
  transform: translateY(-50%) rotate(-45deg);
}

div.float_item a:hover {
  background-position: 110% 0;
}

div.float_item a:hover::after {
  border-bottom: 2px solid var(--orange01);
  border-right: 2px solid var(--orange01);
}

div.float_item a:hover::before {
  background: var(--orange01);
}

div.float_item a:hover::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
}


@media screen and (max-width:500px) {
  div.float_item a {
    font-size: 5vw;
    padding: 0.65em 3em 0.65em 1em;
  }

  div.float_item a::before {
    right: 7px;
  }

  div.float_item a::after {
    right: 18px;
  }
}


div.floating_banner {
  position: fixed;
  right: 10px;
  bottom: 110px;
  width: 180px;
  height: 180px;
  z-index: 999;
  background: #fff;
  padding: 3px;
  border-radius: 10px;
}

div.floating_banner img {
  border-radius: 7px;
}

div.floating_banner a:hover {
  opacity: 0.8;
}

/*フローティング　ここまで------------*/





/*LPのタイトル周りとスマホ画像--------------*/
section.headGrp div.wrap01 {
  display: block;
  padding: 40px 0 0;
  background: var(--sky01);
}

section.headGrp div.wrap01>p {
  display: none !important;
}

div.wrap01 div.header_grid {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 20px;
  width: calc(100% - 30px);
  max-width: 1420px;
  overflow: hidden;
}

/*LPのタイトル周り*/
div.header_title {
  padding: 0 0 60px;
}

div.header_title>h1 {
  margin-bottom: 20px;
}

div.header_title>h1>p {
  font-size: 34px;
  font-weight: 700;
  color: #fff !important;
  margin-bottom: 20px;
  line-height: 1.25;
}

div.header_title>h1>p.yw {
  color: var(--yellow01) !important;
  font-size: 36px;
}

div.header_title>h1>span {
  display: inline-block;
  line-height: 1;
  padding: 0 20px;
  margin-bottom: 20px;
  font-size: 26px;
  font-weight: 700;
  color: var(--yellow01);
  position: relative;
}

div.header_title>h1>span::before,
div.header_title>h1>span::after {
  content: "";
  display: block;
  width: 2px;
  height: 22px;
  background: var(--yellow01);
  position: absolute;
  bottom: 0px;
}

div.header_title>h1>span::before {
  left: 10px;
  transform: rotate(-15deg);
}

div.header_title>h1>span::after {
  right: 10px;
  transform: rotate(15deg);
}

div.header_fukidashi {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 10px;
  max-width: 650px;
  margin: auto auto auto 0;
}

div.fukidashi{
  display: block;
  width: 100%;
  padding: 10px 18px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.3);
  position: relative;
}
div.fukidashi:after{
      content: "";
    display: block;
    width: 18px;
    height: 13px;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    background: rgba(255, 255, 255, 0.3);
    position: absolute;
    bottom: -13px;
    left: 20px;
}

div.fukidashi>p,
div.fukidashi>p>span {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  text-align: left;
}

div.fukidashi>p {
  color: #fff!important;
}

div.fukidashi>p>span {
  color: var(--yellow01);
}

@media screen and (max-width:768px) {
  div.header_title>h1>p {
    font-size: 30px;
  }
  div.header_title>h1>p.yw{
    font-size: 33px;
  }
}

@media screen and (max-width:500px) {
  div.header_title>h1>p {
    font-size: 5.5vw;
  }
  div.header_title>h1>p.yw{
    font-size: 6vw;
  }
}

/*スマホ画像*/
div.header_img {
  margin: auto 0 auto auto;
}

@media screen and (max-width:768px) {
  div.wrap01 div.header_grid {
    grid-template-columns: 1fr;
    max-width: 500px;
  }

  div.header_title {
    padding-bottom: 10px;
  }

  div.header_fukidashi {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  div.header_fukidashi br {
    display: none;
  }

  div.fukidashi::after {
    display: none;
  }

  div.fukidashi>p {
    font-size: 22px;
  }
}

@media screen and (max-width:500px) {
  section.headGrp div.wrap01 {
    padding-top: 25px;
  }

  div.wrap01 div.header_grid {
    gap: 10px;
  }

  div.header_title {
    padding-bottom: 0px;
  }

  div.header_fukidashi {
    gap: 15px;
  }

  div.fukidashi {
    padding: 3vw 5vw;
  }

  div.fukidashi>p {
    font-size: 4.5vw;
  }

  div.fukidashi>p>span {
    font-size: 4.75vw;
  }

  div.header_img {
    width: 80%;
    margin: auto;
  }
}

/*LPのタイトル周りとスマホ画像　ここまで--------------*/


/*-----------------------------------------
02 ヘッダーの設定　ここまで
-------------------------------------------*/

/*-----------------------------------------
03 コンテンツの設定
-------------------------------------------*/
/*共通部分----------*/
.mainGrp div.wrap {
  padding: 70px 0;
}

/*見出し*/
h3.title_h3 {
  display: inline-block;
  padding: 0 20px 0 30px;
  margin: 0 auto 1.75em;
  color: var(--black01);
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.35;
}

h3.title_h3.fukidashi {
  position: relative;
}

h3.title_h3.fukidashi::before,
h3.title_h3.fukidashi::after {
  content: "";
  display: block;
  width: 7px;
  height: 90%;
  border-left: 2px solid var(--sky01);
  border-right: 2px solid var(--sky01);
  position: absolute;
  bottom: 0;
}

h3.title_h3.fukidashi::before {
  left: 0;
  transform: rotate(-20deg);
}

h3.title_h3.fukidashi::after {
  right: 0;
  transform: rotate(20deg);
}

@media screen and (max-width:768px) {

  h3.title_h3.fukidashi::before,
  h3.title_h3.fukidashi::after {
    height: 50px;
  }
}

@media screen and (max-width:500px) {
  h3.title_h3 {
    font-size:6vw;
  }
}


/*資料請求・お申込みボタン*/
div.offerBtn {
  display: block;
  padding: 20px 0;
  margin: auto;
  margin: 0 auto;
  width: calc(100% - 20px);
  max-width: 600px;
}

div.offerBtn.offerBtn_sg {
  padding-top: 80px;
}

div.offerBtn a {
  display: block;
  width: 100%;
  padding: 1em 2em 1em 1em;
  text-align: center;
  color: #fff !important;
  font-size: 26px;
  letter-spacing: 0.1em;
  border-radius: 100px;
  background: -webkit-linear-gradient(var(--grade02));
  background: -moz-linear-gradient(var(--grade02));
  background: linear-gradient(var(--grade02));
  background-size: 200% 100%;
  position: relative;
}

div.offerBtn a:hover {
  background-position: 110% 0;
}

div.offerBtn a:after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 35px;
  transform: translateY(-50%)rotate(-45deg);
}

@media screen and (max-width:768px) {
  div.offerBtn {
    max-width: 500px;
  }

  div.offerBtn a {
    font-size: 24px;
  }
}

@media screen and (max-width:500px) {

  div.offerBtn a {
    font-size: 4.5vw;
  }

  div.offerBtn a:after {
    width: 2.5vw;
    height: 2.5vw;
    right: 6vw;
  }
}



/*三分で3分で分かる!<br>LINE WORKS AiNote ～概要編～-------------*/
.mainGrp div.wrap07{
  padding: 60px 0 0;
}

.mainGrp div.wrap07 h3.title_h3{
color: var(--sky01);
}
div.youtubeGrp{
  display: grid;
  grid-template-columns: repeat(1,1fr);
  gap: 20px;
}
/*YouTube動画*/
div.youtubeGrp div.box{
  width: 100%;
  margin: auto auto 0;
}
h4.youtube_title{
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 20px;
}
h4.youtube_title img{
  max-width: 350px;
  padding: 0 7px;
  
}
div.youtubeGrp div.box_video {
  width: 100%;
  max-width: 600px;
  aspect-ratio: 16 / 9;
}
div.youtubeGrp div.box_video iframe {
  width: 100%;
  height: 100%;
}


@media screen and (max-width:768px) {
  .mainGrp div.wrap01{
    padding: 60px 0 30px;
  }
  div.youtubeGrp{
    grid-template-columns: 1fr;
    gap: 35px;
  }
  h4.youtube_title{
    font-size: 22px;
  }
  h4.youtube_title img {
  max-width: 310px;
  margin: auto;
  }
  h4.youtube_title br{
    display: none;
  }
}

@media screen and (max-width:500px) {
  h4.youtube_title{
    font-size: 20px;
  }
  h4.youtube_title img {
  max-width: 280px;
  }
}
@media screen and (max-width:400px) {
  h4.youtube_title{
    font-size: 18px;
  }
}



/*こんなお悩みはありませんか？----------------*/
.mainGrp div.wrap01 {
  padding: 100px 0;
}

div.nayami-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

div.nayami-box {
  display: grid;
  grid-template-columns: 1fr 1.75fr;
  width: 100%;
  border: 1px solid var(--gray01);
  border-radius: 5px;
  margin: 0;
}

div.box-img {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  margin: 0;
  border-radius: 4px 0 0 4px;
  background: var(--gray02);
}

div.box-text {
  width: 100%;
  padding: 20px;
}

div.box-text h4,
div.box-text ul,
div.box-text li {
  text-align: left;
}

div.box-text h4 {
  font-size: 24px;
  font-weight: 700;
  color: var(--sky01);
  margin-bottom: 0.35em;
  padding-left: 0.25em;
}

div.box-text ul {
  padding: none;
}

div.box-text li {
  font-size: 16px;
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.5em;
}

div.box-text li:last-of-type {
  margin-bottom: 0;
}

div.box-text li::before {
  content: "・";
}

div.box-text li strong {
  font-size: 22px;
  font-weight: 700;
}


@media screen and (max-width:768px) {
  div.nayami-grid{
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width:500px) {
  .mainGrp div.wrap01{
    padding: 60px 0;
  }
   div.nayami-grid{
    max-width: 365px;
   }
  div.nayami-box{
    grid-template-columns: 1fr;
  }
  div.box-img{
    border-radius: 4px 4px 0 0;
  }
  div.box-img img{
    max-width: 250px;
  }
  div.box-text h4{
    font-size: 20px;
  }
  div.box-text li{
    font-size: 14px;
  }
  div.box-text li strong{
    font-size: 16px;
  }

  
}
/*その議事録の作成、まだ人がやるべき仕事ですか？-----------*/
.mainGrp div.wrap02 {
  background: var(--gray02);
}

.mainGrp div.wrap02 h3.title_h3 {
  margin-bottom: 0.4em;
}

div.hutan-text p {
  font-size: 18px;
}

div.kaiketsu {
  margin: 20px auto 0;
}

div.kaiketsu h3.title_h3 {
  color: var(--sky01);
  font-size: 46px;
  padding-right: 25px;
}


@media screen and (max-width:768px) {
  div.kaiketsu h3.title_h3{
    font-size: 36px;
  }
}
@media screen and (max-width:500px) {
  div.kaiketsu h3.title_h3{
    font-size:6vw;
  }
  .mainGrp div.wrap02 h3.title_h3{
    font-size: 5.25vw;
  }
  .mainGrp div.wrap02 h3.title_h3.fukidashi::before,
  .mainGrp div.wrap02 h3.title_h3.fukidashi::after{
    height: 6vw;
  }
  div.hutan-text p{
    font-size: 14px;
  }
}
/*AiNoteの特徴-----------*/
.mainGrp div.wrap03 {
  padding: 80px 0 100px;
}

.mainGrp div.wrap03 div.center {
  max-width: 1200px;
}

.mainGrp div.wrap03 h3.title_h3 {
  padding: 0 30px 0 40px;
  margin-bottom: 10px;
}

.mainGrp div.wrap03 h3.title_h3>img {
  max-width: 330px;
  padding: 0 5px;
}


div.come_swipe {
  margin-bottom: 30px;
}

div.come_swipe p {
  font-size: 16px;
  color: #8f8f8f;
}

div.splide ul,
div.splide li {
  height: fit-content;
}

div.splide__arrows {
  position: absolute;
  top: 45%;
  width: 100%;
}

button.splide__arrow {
  background: none;
  /* width: 50px;
  height: 50px; */
}

button.splide__arrow--prev {
  left: -40px;
}

button.splide__arrow--next {
  right: -40px;
}

button.splide__arrow:disabled,
button.splide__arrow:disabled {
  display: none !important;
}

button.splide__arrow svg {
  height: 30px;
  width: 30px;
}


div.intro-box {
  padding: 20px;
}

div.intro-box div {
  text-align: left;
}

div.intro-box div p {
  letter-spacing: 0.1em;
}

div.intro-box-img {
  background: var(--gray02);
  border: 1px solid var(--gray01);
  border-radius: 8px;
  display: flex;
  flex-shrink: 1;
}

div.intro-box-title {
  margin: 20px 0 15px;
}

div.intro-box-title p {
  font-weight: 700;
  font-size: 20px;
}

div.intro-box-text p {
  font-size: 16px;
}

div.intro-box-text p.come {
  font-size: 14px;
  color: #979797;
  margin-top: 0.5em;
}

.splide__pagination {
  bottom: -20px;
}

.splide__pagination__page.is-active{
  background: var(--sky01)!important;
}

@media screen and (max-width:768px) {
  .mainGrp div.wrap03 div.center {
    max-width: 500px;
  }

  div.intro-box {
    padding: 0px;
  }

  div.intro-box-numbers p,
  div.intro-box-title p {
    font-size: 16px;
  }

  div.intro-box-text p {
    font-size: 14px;
  }

  button.splide__arrow svg {
    width: 20px;
    height: 20px;
  }
}

@media screen and (max-width:500px) {
  .mainGrp div.wrap03 div.center {
    max-width: 350px;
    padding: 0 20px;
  }

  div.intro-box div.intro-box-img {
    text-align: center !important;
  }

  div.intro-box-img img {
    width: 80%;
    margin: auto;
  }

  button.splide__arrow svg {
    width: 13px;
    height: 13px;
  }

  button.splide__arrow svg {
    width: 15px;
    height: 15px;
  }

  button.splide__arrow--next {
    right: -25px;
  }

  button.splide__arrow--prev {
    left: -25px;
  }
}


/*AiNoteの主な機能*/
.mainGrp div.wrap04 {
  background: var(--gray02);
}

div.main-features-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  max-width: 1200px;
  margin: auto;
}

div.main-features-box {
  display: block;
  width: 100%;
  margin: 0;
  background: #fff;
  border: 1px solid var(--gray01);
  border-radius: 8px;
  padding: 30px;
  text-align: left;
}

div.main-features-box>div {
  text-align: left;
}

div.box-icon {
  max-width: 50px;
  margin: 0 auto auto 0;
}

div.box-title {
  padding: 10px 0;
}

div.box-title p {
  font-size: 18px;
  font-weight: 700;
}

ul.box-list li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 14px;
  font-weight: 500;
  padding-bottom: 0.5em;
  letter-spacing: 0.03em;
  word-break: break-word;
}

ul.box-list li:last-of-type {
  padding-bottom: 0;
}

ul.box-list li::before {
  content: "・";
}

div.support-text p {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.03em;
}

div.support-label {
  padding-top: 10px;
}

div.support-label-title p {
  font-weight: 700;
  padding-left: 1em;
  text-indent: -1em;
}

div.support-label-title p::before {
  content: "・";
}

div.support-label-text {
  padding-left: 14px;
  padding-bottom: 16px;
}

div.support-label-text:last-of-type {
  padding-bottom: 0;
}

div.support-label-text p span {
  display: inline-block;
}

div.main-features-come {
  margin: 10px auto 0;
  max-width: 1200px;
}

div.main-features-come li {
  font-size: 15px;
  padding-left: 1em;
  text-indent: -1em;
  color: #707070;
  text-align: left;
}

div.main-features-come li::before {
  content: "※";
}



@media screen and (max-width:768px) {
  div.main-features-grid{
    grid-template-columns:repeat(2,1fr);
  }
  div.main-features-box{
    padding: 25px;
  }
  div.box-title p{
    font-size: 16px;
  }
  ul.box-list li,
  div.main-features-come li{
    font-size: 13px;
  }
}
@media screen and (max-width:500px) {
  div.main-features-grid{
    grid-template-columns: 1fr;
    max-width: 365px;
  }
  div.main-features-box{
    padding: 20px;
  }
  div.main-features-come{
    max-width: 365px;
  }
}

/*活用シーン*/
.mainGrp div.wrap05{
  padding-bottom: 30px;
}
div.usage-scenes-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1200px;
}

div.usage-scenes-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  border: 1px solid var(--gray01);
  border-radius: 10px;
  padding: 15px;
  width: 100%;
  margin: 0;
}

div.usage-scenes-box>div {
  width: 100%;
  text-align: left;
}

div.usage-scenes-img {
  margin: 0;
}

div.usage-scenes-title {
  margin: 10px 0 10px;
}

div.usage-scenes-title p {
  font-size: 24px;
  font-weight: 900;
}

ul.usage-scenes-list {
  width: 100%;
  margin-bottom: 10px;
}

ul.usage-scenes-list li {
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
  padding-bottom: 0.35em;
}

ul.usage-scenes-list li:last-of-type {
  padding-bottom: 0;
}

ul.usage-scenes-list li::before {
  content: "・";
}

div.usage-scenes-tag {
  margin: auto 0 0;
}

div.usage-scenes-tag div {
  display: inline-block;
  margin: 8px 8px 0 0;
}

div.usage-scenes-tag div p {
  display: inline-block;
  padding: 0.5em 0.75em;
  border-radius: 5px;
  line-height: 1;
  font-size: 14px;
  font-weight: 500;
  background: rgba(21, 172, 181, 0.3);
}

div.usage-scenes-tag div.tag-title {
  display: block;
}

div.usage-scenes-tag div.tag-title p {
  background: rgba(21, 172, 181, 0.8);
  font-weight: 700;
}


@media screen and (max-width:768px) {
.mainGrp div.wrap05 {padding-bottom: 30px;}
  div.usage-scenes-grid{
    grid-template-columns: repeat(2,1fr);
    gap: 10px;
  }
  div.usage-scenes-title p{
    font-size: 18px;
  }
  ul.usage-scenes-list li{
    font-size: 14px;
  }
  div.usage-scenes-tag div p{
    font-size: 13px;
  }
}

@media screen and (max-width:500px) {
 div.usage-scenes-grid{
    grid-template-columns:1fr;
    max-width: 365px;
  }
}


/*料金表*/
.mainGrp div.wrap06{
  padding-bottom: 30px;
}
div.tableGrp{
  background: #f8f8f8;
}

div.wrap06 div.center {
  max-width: 1200px;
}

div.table-grid {
  display: grid;
  grid-template-columns: repeat(2, 0.6fr) repeat(5, 1fr);
}
div.table-grid>p{
  display: none!important;
}

div.table-grid>div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-top: 1px solid #DBDEE1;
  border-left: 1px solid #DBDEE1;
  padding: 20px 15px;
  background: #fff;
}
div.table-grid>div.bd-right{
  border-right: 1px solid #DBDEE1;
}
div.table-grid>div.bd-bottom{
  border-bottom: 1px solid #DBDEE1;
}
div.table-grid>div.cl-sky p{
  color: var(--sky01);
}

@media screen and (max-width:768px) {
  .mainGrp div.wrap06{
    padding-bottom: 30px;
  }
  div.wrap06 h3.title_h3{
    margin-bottom: 0.75em;
  }
  div.tableGrp{
    max-width: 500px;
    border: 2px solid #d4d4d4;
  }
div.table-grid>div{
  padding: 10px;
}
div.table-come{
  max-width: 500px;
}
}



/*有償プランの30日間の無償トライアルをご提供中！*/
div.table-item-title-top {
  grid-column: 5/8;
  background: rgba(21, 172, 181, 0.3)!important;
  border: 1px solid #DBDEE1;
  border-bottom: none;
}
div.table-grid>div.table-item-title-top p {
  font-size: 20px;
  font-weight: 700;
}
div.table-grid>div.table-item-title-top p>span {
  color: var(--sky01)!important;
  font-weight: 700;
}

@media screen and (max-width:768px) {
div.table-grid>div.table-item-title-top p{
  font-size: 16px;
}
}

/*個人事業主＆フリーランス向け・企業向け*/
div.table-item-title {
  background: var(--sky01)!important;
}
div.table-grid>div.table-item-title p {
  font-size: 22px;
  font-weight: 700;
  color: #fff;
}
div.table-item-title01 {
  grid-column: 3/5;
}
div.table-item-title02 {
  grid-column: 5/8;
  border-right: 1px solid #DBDEE1;
}


@media screen and (max-width:768px) {
div.table-grid>div.table-item-title p{
  font-size: 16px;
}
}


/*左端の項目*/
div.table-item-category {
  background: #ececec!important;
  grid-column: 1/3;
}
div.table-item-category.category01 {
  grid-column: 1/2;
  grid-row: 3/5;
}
div.table-item-category.category02 {
  grid-column: 2/3;
  grid-row: 3/4;
}
div.table-item-category.category03 {
  grid-column: 2/3;
  grid-row: 4/5;
}
div.table-item-category p{
  font-size: 15px;
  font-weight: 700;
}
div.container {
  overflow-x: auto;
  white-space: nowrap;
  /* border:1px solid  #DBDEE1; */
}

@media screen and (max-width:768px) {
div.table-item-category p{
  font-size: 14px;
}
}
/*表組のセル*/
div.table-item-contants p{
font-size: 16px;
font-weight: 500;
}
div.table-item-contants.big p{
font-size: 20px;
}
div.table-item-contants p span.large{
  font-size: 130%;
}
span.quotation{
  display: block;
  font-size: 14px;
  font-weight: 500;
}
div.table-item-contants p.fnt-bld,
div.table-item-contants p.fnt-bld span{
  font-weight: 700;
}
div.table-item-contants p.fnt-bld span.quotation{
  font-weight: 500;
}
div.table-item-contants p.fnt-bld span.large{
font-size: 130%;
}
div.table-item-contants p.regular{
font-size: 18px;
}

div.column-4-8{
  grid-column: 4/8;
}
div.column-5-8{
  grid-column: 5/8;
}
@media screen and (max-width:768px) {
div.table-item-contants p.regular{
  font-size: 14px;
}
}
/*￥０円のセル*/
div.table-item-contants.table-item-contants01{
  grid-row: 3/5;
}
div.table-item-contants.table-item-contants01 p{
  font-size: 30px!important;
}
div.table-item-contants.table-item-contants01 p span.largest{
  font-size: 150%;
}

/*スクロールヒント*/
span.scroll-hint-icon {
  background: rgba(0, 0, 0, .7);
  padding: 20px 10px 10px 10px;
}

div.scroll-hint-text {
  color: #fff !important;
}

div.table-come {
  text-align: right;
  margin: 20px auto 0;
}

div.table-come p {
  display: inline-block;
  font-size: 14px;
    text-align: right;
    padding-left: 0.5em;
}

@media screen and (max-width:768px) {

  div.table-grid {
    border: none;
  }

  div.wrap11 div.center {
    max-width: 500px;
  }
}


/*オプション商品*/
.mainGrp div.wrap08 h3.title_h3{
  margin-bottom: 0.75em;
}
div.option-text{
  margin-bottom: 15px;
}
div.option-table{
display: grid;
grid-template-columns: repeat(3,1fr);
max-width: 1000px;
}
div.option-table>div{
 width: 100%;
  padding: 20px;
      border-top: 1px solid #DBDEE1;
    border-left: 1px solid #DBDEE1;
}
div.option-title{
  grid-column: 1/4;
 background: rgba(21, 172, 181, 0.3) !important;
     border-right: 1px solid #DBDEE1;
     padding: 15px!important;
}
div.option-title p,
div.option-title p span{
  font-size: 22px;
  font-weight: 700;
}
div.option-title p span{
color: var(--sky01);
}
div.option-box{
  border-bottom: 1px solid #DBDEE1;
}
div.option-box:last-of-type{
  border-right: 1px solid #DBDEE1;
}
div.option-box p{
display: block;
width: 100%;
text-align: left;
}
p.opytion-box-title{
  font-size: 22px;
  font-weight: 700;
}
p.option-box-text{
  margin: 0.5em auto 1.5em 0;
  font-size: 15px;
  opacity: 0.7;
}
p.option-box-kakaku{
font-size: 16px;
}
p.option-box-kakaku span{
font-size: 175%;
font-weight: 700;
}
div.wrap08 div.table-come{
  max-width: 1000px;
}

@media screen and (max-width:768px) {
  div.option-text p{
    text-align: left;
    font-size: 15px;
  }
  div.option-title p, div.option-title p span{
    font-size: 18px;
  }
   div.option-title p span{
    display:inline-block;
   }
  div.option-table{
    grid-template-columns: 1fr;
}
div.option-title{
  grid-column: 1/2;
}
div.option-box{
  border-right: 1px solid #DBDEE1;
border-bottom: none;
}
div.option-box:last-of-type{
  border-bottom: 1px solid #DBDEE1;
}

p.opytion-box-title{
  font-size: 20px;
}

}


/*よくある質問-------------------*/
.mainGrp div.wrap09 {
  padding: 80px 0 120px;
}

.mainGrp div.wrap09 summary {
  /* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
  display: block;
  border-top: 1px solid var(--gray01);
}

summary::-webkit-details-marker {
  /* Safariで表示されるデフォルトの三角形アイコンを消します */
  display: none;
}

summary>br,
details div.content>p {
  display: none !important;
  padding: 0;
}


/*アイコン*/
span.summary_inner {
  position: relative;
}

span.summary_inner::after,
span.summary_inner::before {
  content: "";
  display: block;
  width: 15px;
  height: 2px;
  background: var(--gray01);
  position: absolute;
  top: 38px;
  right: 15px;
  transition: all 0.3s ease 0s;
}

span.summary_inner::after {
  transform: rotate(90deg);
}

/* アコーディオンが開いた時のスタイル */
details[open] span.summary_inner::before {
  transform: rotate(45deg);
}

details[open] span.summary_inner::after {
  transform: rotate(135deg);
}


span.summary_inner,
div.content_inner>p {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  /* width: calc(100% - 35px); */
  margin: 0 auto auto 0;
  font-weight: bold;
  color: #002255 !important;
}

span.summary_inner span.head,
div.content_inner span.head {
  display: block;
  width: 25px;
  margin: 0 10px auto 0;
  font-weight: 700;
  color: var(--sky01) !important;
  text-align: center;
  border: none;
}

span.summary_inner span.text,
div.content_inner span.text {
  display: block;
  text-align: left;
  /* width: calc(100% - 35px); */
  margin: 0 auto auto 0;
  overflow-wrap: break-word;
  word-break: break-all;
  border: none;
  line-height: 1.25;
}

span.summary_inner span.head {
  font-size: 20px;
}

div.content_inner span.head {
  font-size: 20px;
}

span.summary_inner {
  padding: 25px 45px 25px 15px;
}

span.summary_inner span.text {
  font-weight: 700;
  font-size: 20px;
}

div.content_inner span.text {
  font-size: 17px;
  font-weight: 400;
}
div.content_inner span.text span.come{
  color: #838383;
  font-size: 14px;
}

div.content_inner span.text>a,
div.content_inner span.text span.come>a {
  color: var(--blue03) !important;
  text-decoration: underline;
  pointer-events: all;
}

/* is-openedクラスが付与されたときのスタイル */
details.is-opened .icon {
  transform: rotate(180deg);
}

/* --------アコーディオンの中身のスタイル-------- */
details div.content {
  overflow: hidden;
  /* details直下のタグにpaddingを設定すると挙動がおかしくなるので、ここには指定しない */
}

details div.content_inner {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  pointer-events: none;
}

details div.content_inner p {
  text-align: left;
  padding: 0px 45px 30px 20px;
}

div.question_box {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;

  border-bottom: 1px solid var(--gray01);
}

div.question_box details {
  margin: 0;
}

div.question_box details:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .mainGrp div.wrap09 {
    padding-bottom: 80px;
  }

  div.question_box {
    width: calc(100% - 10px);
  }

  details div.content_inner p {
    padding-bottom: 30px;
  }

  span.summary_inner span.head,
  span.summary_inner span.text {
    font-size: 15px;
    border: none;
  }

  div.content_inner span.head,
  div.content_inner span.text {
    font-size: 14px;
    border: none;
  }
}


div.question-other-btn{
  max-width: 500px;
  margin: 60px auto 0;
}
div.question-other-btn a{
  display: block;
  padding: 0.85em;
  font-size: 22px;
  font-weight: 600;
  background: var(--sky01);
  color: #fff!important;
  border-radius: 100px;
}
div.question-other-btn a:hover{
  background: var(--sky02);
}
/*スクロール量に応じたアニメーション*/
/*ふわっとフェードイン*/
.fadeIn {
  opacity: 0;
}

.fadeIn.is-active {
  animation: fadeIn 0.6s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/*ポップアップのフェードイン*/
.popup {
  opacity: 0;
}

.popup.is-active {
  animation: popup 0.6s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

@keyframes popup {
  0% {
    opacity: 0;
    transform: scale(0.97);
    filter: blur(6px);
  }

  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0px);
  }
}


/*下からフェードイン*/
.fadeIn-down {
  opacity: 0;
}

.fadeIn-down.is-active {
  animation: fadeIn-down 0.6s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

@keyframes fadeIn-down {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}



/*ヘッダーのスマホ画像：下からフェードイン*/
.fadeIn-down-header {
  opacity: 0;
}

.fadeIn-down-header.is-active {
  animation: fadeIn-down-header 0.8s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

@keyframes fadeIn-down-header {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }

  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}





/*-----------------------------------------
03 コンテンツの設定ここまで
-------------------------------------------*/

/*-----------------------------------------
04 フッターの設定
-------------------------------------------*/

@media screen and (max-width:1080px) {}

@media screen and (max-width:768px) {}

/*-----------------------------------------
04 フッターの設定ここまで
-------------------------------------------*/




/*スマ介_____EC-CUBE対策*/
main.l-container {
  width:100%;
}
.c-main{
  padding-bottom: 0 ;
  padding-left: 0;
  padding-right: 0;
}
#contentInner{
  width: auto;
  padding-bottom: 0;
}
#wide_main_contents{
  width: 100%;
}

.c-breadcrumb {
    width: 1200px;
    margin: auto;
  }
  @media (max-width: 1230px) {
    main.l-container {
      width:123rem;
    }
  }
@media (max-width: 768px) {
  .pc{
    display: none!important;
  }
  .sp{
    display: block;
  }
  .l-container{
    width:120rem;
  }
  #contentInner{
    width: 1200px;
    padding-bottom: 0;
  }
  #wide_main_contents{
    width:1200px
  }
}

div.come_swipe{
  margin-bottom: 10px;
}
div.come_swipe p{
  font-size: 16px;
  color: #8f8f8f;
}