/* CSS Document */
/*stroke*/
.stroke{
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.stroke::before{
  content: "";
  -webkit-text-stroke: 6px #FFF;
  text-stroke: 6px #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
  white-space: nowrap;
}
/*ボタン*/
/*トップボタン*/
.top_btn{
}
.top_btn a{
  background-color: #fff;
  gap: 0.25rem;
  text-decoration: none;
  padding: 0 2rem;
  box-sizing: border-box;
  border-radius: 0.25rem;
  position: relative;
  z-index: 1;
  display: flex;
  height: 18.75vw;
  align-items: center;
  justify-content: center;
  flex-direction: column-reverse;
}
body[wc-view-code="tb"] .top_btn a{
  padding: 0 3rem;
}
body[wc-view-type="tb"] .top_btn a{
  height: 11.375vw;
}
body[wc-view-type="tb-l"] .top_btn a{
  height: 9.375vw;
}
body[wc-view-code="pc"] .top_btn a{
  padding: 0 3rem;
  height: 80px;
}
.top_btn a::after{
  content: "";
  inset:-4px;
  border-radius: calc(0.25rem + 4px);
  border: solid 2px #fff;
  box-sizing: border-box;
  position: absolute;
}
.top_btn a span{
  color: #803982;
  margin-block:calc((1em - 1lh) / 2);
  font-weight: 700;
}
.top_btn a .t_btn01{
  font-size: 0.95rem;
}
.top_btn a .t_btn01{
  font-size: 1.35rem;
}
/*コンタクトブロック*/
.contact_area{
  background-color: #c3def4;
  padding: 0.75rem;
  box-sizing: border-box;
  margin-top: 2rem;
  position: relative;
  z-index: 1;
}
body[wc-view-code="sp"] .contact_area{
  padding: 1rem 7vw var(--headerHeight);
}
body[wc-view-type="tb"] .contact_area{
  padding: 1rem 10vw var(--headerHeight);
}
body[wc-view-type="tb-l"] .contact_area{
  padding: 1rem 10vw var(--headerHeight);
}
body[wc-view-code="pc"] .contact_area{
  padding: 1.25rem calc((100vw - 1100px) / 2) var(--headerHeight);
}
.contact_area::before{
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  background-color: #fff;
  position: absolute;
  top: -1.25rem;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.contact_area > dt{
  text-align: center;
  font-weight: 700;
  padding-top: 1.25rem;
  font-size: 1.35rem;
  opacity: 0;
  transition: opacity ease 600ms;
}
.contact_area > dt{
  padding-top: 3rem;
}
.contact_area > dt.wcvisible{
  opacity: 1;
}
.contact_contents{
  background-color: #fff;
  box-sizing: border-box;
  padding: 1rem;
}
body[wc-view-type="tb"] .contact_contents,
body[wc-view-type="tb-l"] .contact_contents{
  padding: 1rem 1.5rem;
}
body[wc-view-code="pc"] .contact_contents{
  padding: 1.25rem;
}
.contact_contents .cc_tile{
  width: fit-content;
  padding: 0.25rem 1rem;
  border-radius: 2rem;
  position: relative;
  z-index: 1;
  margin: 0 auto 1.25rem auto;
}
.contact_contents .cc_tile::before,
.contact_contents .cc_tile::after{
  content: "";
  position: absolute;
}
.contact_contents .cc_tile::before{
  width: 34px;
  height: 34px;
  z-index: -1;
  background-color: #803982;
  border-radius: 2rem;
  margin: 0 auto;
  left: 50%;
  transform: translateX(-50%);
  transition: all 600ms ease;
  top: 0;
}
.contact_contents .cc_tile.wcvisible::before{
  width: 100%;
  height: 34px;
}
body:not([wc-view-code="sp"]) .contact_contents .cc_tile.wcvisible::before{
  height: 39px;
}
.contact_contents .cc_tile::after{
  width: 1.2rem;
  height: 1.2rem;
  background-color: #803982;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  bottom: 0;
  z-index: -1;
  transition: bottom 600ms ease;
}
.contact_contents .cc_tile.wcvisible::after{
  bottom: -0.6rem;
}
body:not([wc-view-code="sp"]) .contact_contents .cc_tile.wcvisible::after{
  bottom: -0.5rem;
}
.contact_contents .cc_tile span{
  color: #fff;
  font-weight: 700;
  font-size: 1.35rem;
  opacity: 0;
  transition: opacity 600ms 300ms ease;
}
.contact_contents .cc_tile.wcvisible span{
  opacity: 1;
}
.contact_contents .c_text{
  transition: opacity 600ms ease;
  opacity: 0;
}
.contact_contents .c_text.wcvisible{
  opacity: 1;
}
.contact_contents .c_text p{
  line-height: 1.8rem;
  margin-top: 0.35rem;
}

body[wc-view-code="pc"] .contact_contents .c_text p{
  width: calc(710px - 1rem);
  margin: 0.35rem auto 0 auto;
}
.c_note{
	margin: 0 auto;
	border: solid 1px #bbb;
	box-sizing: border-box;
	margin-top: 1rem;
}
body[wc-view-code="pc"] .c_note{
	width: calc(710px - 1rem);
}
.c_note > dt{
	padding: 0.5rem 0.5rem 0.5rem 0.75rem;
	box-sizing: border-box;
}
.c_note > dd{
}
.c_note > dd .c_note_box{
	box-sizing: border-box;
  width: calc(100% - 1.5rem);
  margin: 0 auto;
  border-top: 1px solid #bbb;
  padding: 0.5rem 0.75rem 0.75rem 0.75rem;
}
.c_note > dd .c_note_box ul{
	list-style-position: outside;
  background-color: #efefef;
  padding: 0.5rem 0.5rem 0.5rem 1.5rem;
  margin-top: 0.5rem;
}
.c_note > dd .c_note_box ul li{
}
.c_note > dd .c_note_box ul li:not(:first-of-type){
	margin-top: 0.25rem;
}
.contact_contents .c_btn_block{
  margin-top: 1rem;
}
.contact_contents .c_btn_block dt{
}
.contact_contents .c_btn_block dt span{
  display: table;
  padding: 0 1.5rem;
  position: relative;
  z-index: 1;
  font-weight: 700;
  margin: 0 auto;
  font-size: 1.35rem;
}
.contact_contents .c_btn_block dt span::before,
.contact_contents .c_btn_block dt span::after{
  content: "";
  width: 0.75rem;
  height: 1.25rem;
  position: absolute;
  top: 50%;
  border-left: 2px solid var(--accentColor);
  border-right: 2px solid var(--accentColor);
  box-sizing:border-box;
}
.contact_contents .c_btn_block dt span::before{
  transform: translateY(-50%) rotate(-20deg);
  left: 0;
}
.contact_contents .c_btn_block dt span::after{
  transform: translateY(-50%) rotate(20deg);
  right: 0;
}
.contact_contents .c_btn_block dd{
}
.contact_area
.contact_contents .c_btn_block dd .c_btn_flex{
  display: flex;
  padding-top: 1rem;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
}
body[wc-view-code="sp"] .contact_contents .c_btn_block dd .c_btn_flex{
  flex-direction: column;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn{
}
body[wc-view-code="sp"] .contact_contents .c_btn_block dd .c_btn_flex .c_btn{
   width: 100%;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn a{
  width: 100%;
  color: #fff;
  font-weight: 700;
  border-radius: 0.25rem;
  text-decoration: none;
  padding: 0.75rem 0.5rem 0.75rem 1rem;
  line-height: 1em;
  box-sizing: border-box;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
  margin-block: calc((1em - 1lh) / 2);
  justify-content: space-between;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn a::after{
  content: "";
  display: table;
  background-color: #fff;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  width: 2rem;
  height: 2rem;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn.c_tel{
  font-family: "Montserrat";
  font-size: 1.25rem;
}

body:not([wc-view-code="sp"]) .contact_contents .c_btn_block dd .c_btn_flex .c_btn.c_tel a{
  pointer-events: none;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn.c_tel a{
  background-color: var(--accentColor);
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn.c_mail a{
  background-color: #f26d00;
}
.contact_contents .c_btn_block dd .c_btn_flex .c_btn.c_line a{
  background-color: #06c755;
}
/*トップ*/
.top{
  height:calc(var(--windowfixdheight) - 2.5em);
  position: relative;
  z-index: 1;
}
.top .top_text{
  background: #803982;
  background: linear-gradient(0deg,rgba(128, 57, 130, 0.8) 0%, rgba(128, 57, 130, 0.5) 60%,rgba(128, 57, 130, 0) 100%);
	/*linear-gradient(0deg,rgba(0, 164, 207, 0.5) 0%, rgba(255,255,255, 0.5) 60%,rgba(128, 57, 130, 0) 100%)*/
  position: absolute;
  inset: 0;
  z-index: 2;
  height: calc(var(--windowfixdheight) - 2.5em);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: var(--headerHeight) 0 calc(var(--headerHeight) * 2.5);
  box-sizing: border-box;
}
body[wc-view-type="sp"] .top .top_text{
	padding-bottom:  calc(var(--headerHeight) * 3);
}
body[wc-view-code="pc"] .top .top_text{
padding: var(--headerHeight) 0 calc(var(--headerHeight) * 2.5);
}
.top .top_text::after{
  content: "";
  width: 100vw;
  background-color: #fff;
  left: 0;
  right: 0;
  z-index: 3;
  position: absolute;
  height: 18.75vw;
  clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
  bottom: 0;
}
body[wc-view-code="pc"] .top .top_text::after{
  height: 115px;
}
.top .top_text > h2{
  text-align: center;
  font-weight: 700;
  font-size: 1.25rem;
  color: #fff;
  position: relative;
  z-index: 1;
  margin-top: auto;
  height: 63.75vw;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  line-height: 2rem;
}
body[wc-view-type="tb"] .top .top_text > h2{
  height: 51.75vw;
}
body[wc-view-type="tb-l"] .top .top_text > h2{
  height: 31.75vw;
}
body[wc-view-code="pc"] .top .top_text > h2{
  height: 369px;
}
body:not([wc-view-code="sp"]) .top .top_text > h2{
  font-size: 1.45rem;
  line-height: 2.5rem;
}
body:not([wc-view-type="sp-s"]) .top .top_text > h2 .sp_s{
	display: none;
}
.top .top_text > h2::after{
  content: "";
  background-image: url("/img/top_logo02.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: -1;
  width: 74.375vw;
  height: 63.75vw;
}
body[wc-view-type="tb"] .top .top_text > h2::after{
  width: 60.375vw;
  height: 51.75vw;
}
body[wc-view-type="tb-l"] .top .top_text > h2::after{
  width: 37.375vw;
  height: 31.75vw;
}
body[wc-view-code="pc"] .top .top_text > h2::after{
  width: 430px;
  height: 369px;
}
body.safari .top .top_text > h2::after{
  background-image: url("/img/top_logo02.webp");
}
.top .top_text > p{
  color: #fff;
  font-weight: 700;
  background: #803982;
  background: linear-gradient(270deg,rgba(128, 57, 130, 1) 0%, rgba(57, 9, 38, 1) 100%);
  line-height: calc(1rem +(1em - 1lh) / 2);
  border-radius: 1rem;
  font-size: 0.9rem;
  padding: 0 1rem;
  margin-top: 1rem;
  height: 1.75rem;
  display: flex;
  align-items: center;
}
.top > figure{
  position: absolute;
  z-index: -1;
}
.top > figure img{
  width: 100vw;
  height:calc(var(--windowfixdheight) - 2.5em);
}
.top .top_btn{
  margin-top: auto;
}
body[wc-view-code="sp"] .top .top_btn{
  margin-top: 18.75vw;
}
/*こんなお悩みありませんか？*/
.beacon{
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
body[wc-view-code="sp"] .beacon{
  padding: calc(var(--headerHeight) / 2) 0 0;
}
body[wc-view-type="tb"] .beacon{
  padding: calc(var(--headerHeight) / 2) 0 0 0;
}
body[wc-view-type="tb-l"] .beacon{
  padding: calc(var(--headerHeight) / 2) 0 0 0;
}
body[wc-view-code="pc"] .beacon{
  padding: calc(var(--headerHeight) / 2) 0 0 0;
}
body[wc-view-type="tb"] .beacon::after{
  height: 21.75vw;
}
body[wc-view-type="tb-l"] .beacon::after{
  height: 11.75vw;
}
body[wc-view-code="pc"] .beacon::after{
  height: 115px;
}
.beacon > .beacon_t_title,
.beacon > .beacon_t_title span{
  font-size: 1.35rem;
  font-weight: 700;
}
.beacon > .beacon_t_title{
  margin-bottom: 1rem;
  text-align: center;
  transition: opacity linear 600ms;
  opacity: 0;
}
.beacon > .beacon_t_title.wcvisible{
  opacity: 1;
}
.beacon > .beacon_t_title span{
  color: var(--accentColor);
}

.beacon > .b_l_wrap{
  display: flex;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap,
body[wc-view-code="sp"] .beacon > .b_l_wrap{
  flex-direction: column;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap,
body[wc-view-code="pc"] .beacon > .b_l_wrap{
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  margin-top: 2rem;
}
.beacon > .b_l_wrap > figure{
  position: relative;
  z-index: 2;
}
body[wc-view-code="sp"] .beacon > .b_l_wrap > figure,
body[wc-view-type="tb"] .beacon > .b_l_wrap > figure{
  margin: 0 auto -0.5rem;
}
body[wc-view-code="sp"] .beacon > .b_l_wrap > figure{
  width: 37.5vw;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap > figure{
  width: 30vw;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap > figure,
body[wc-view-code="pc"] .beacon > .b_l_wrap > figure{
  flex: none;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap > figure{
  width: 280px;
}
body[wc-view-code="pc"] .beacon > .b_l_wrap > figure{
  width: 380px;
}
.beacon > .b_l_wrap ul{
  list-style: none;
  list-style-position: outside;
  display: flex;
  flex-direction: column;
  gap:1rem;
  padding: 1.25rem 1.5rem 1.5rem;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap ul{
  padding: 1.25rem 10vw 2.5rem 10vw;
}
body[wc-view-code="sp"] .beacon > .b_l_wrap ul,
body[wc-view-type="tb"] .beacon > .b_l_wrap ul{
  background-color: #efefef;
}
body[wc-view-code="sp"] .beacon > .b_l_wrap ul::before,
body[wc-view-type="tb"] .beacon > .b_l_wrap ul::before{
  content: "";
  width: 100vw;
  background-color: #efefef;
  top: -18.75vw;
  left: 0;
  right: 0;
  z-index: -1;
  height: 18.75vw;
  position: absolute;
  clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
}
body[wc-view-code="pc"] .beacon > .b_l_wrap ul,
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul{
  padding: 0;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul{
  margin-right: 2.5rem;
}
body[wc-view-code="pc"] .beacon > .b_l_wrap ul{
  margin-right: 3.5rem;
  column-gap: 1.35rem;
}
.beacon > .b_l_wrap ul li{
  display: flex;
  align-items: flex-end;
  transition: opacity 400ms ease,transform 400ms ease;
  opacity: 1;
  transform: translateY(1.25rem);
}

body[wc-view-type="tb"] .beacon > .b_l_wrap ul li{
  width: 420px;
  margin: 0 auto;
}
.beacon > .b_l_wrap ul li.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(even){
}
body[wc-view-type="tb"] .beacon > .b_l_wrap ul li:nth-of-type(odd),
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(odd){
  flex-direction: row-reverse;
}

.beacon > .b_l_wrap ul li p{
  background-color: #fff;
  border-radius: 1rem;
  padding: 0.75rem;
  box-sizing:border-box;
  width: calc(100% - 2.5rem);
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul li p,
body[wc-view-code="pc"] .beacon > .b_l_wrap ul li p{
  background-color: #efefef;
  padding: 0.75rem 1.25rem;
}
.beacon > .b_l_wrap ul li span{
  width:2.5rem;
  height: 2.3rem;
  position: relative;
  z-index: 1;
}
.beacon > .b_l_wrap ul li span::before,
.beacon > .b_l_wrap ul li span::after{
  content: "";
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  z-index: 2;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul li span::before,
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul li span::after,
body[wc-view-code="pc"] .beacon > .b_l_wrap ul li span::before,
body[wc-view-code="pc"] .beacon > .b_l_wrap ul li span::after{
  background-color: #efefef;
}
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li span{
  background-color: #efefef;
}
.beacon > .b_l_wrap ul li span::before{
  width: 18px;
  height: 18px;
}
.beacon > .b_l_wrap ul li span::after{
  width: 13px;
  height: 13px;
}

body[wc-view-type="tb"] .beacon > .b_l_wrap ul li:nth-of-type(even) span::before,
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(even) span::before{
  top: 0;
  left: 5px;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap ul li:nth-of-type(even) span::after,
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(even) span::after{
  right: 0;
  bottom: 0;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap ul li:nth-of-type(odd) span::before,
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(odd) span::before{
  top: 0;
  right: 5px;
}
body[wc-view-type="tb"] .beacon > .b_l_wrap ul li:nth-of-type(odd) span::after,
body[wc-view-code="sp"] .beacon > .b_l_wrap ul li:nth-of-type(odd) span::after{
  left: 0;
  bottom: 0;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul li span::before,
body[wc-view-code="pc"] .beacon > .b_l_wrap ul li span::before{
  top: 0;
  left: 5px;
}
body[wc-view-type="tb-l"] .beacon > .b_l_wrap ul li span::after,
body[wc-view-code="pc"] .beacon > .b_l_wrap ul li span::after{
  right: 0;
  bottom: 0;
}
.beacon > .b_l_wrap ul::after{
  content: "";
  position: absolute;
  width: 2.5rem;
  height: 2.5rem;
  background-color: #efefef;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  bottom: 0;
  z-index: -1;
  transition: bottom linear 600ms,opacity linear 600ms;
  opacity: 0;
}
body[wc-view-code="pc"] .beacon > .b_l_wrap ul::after{
  display: none;
}
.beacon > .b_l_wrap ul::after{
  opacity: 1;
  bottom: -1.25rem;
}

.beacon .b_tsunagi{
  margin-top: 3.25rem;
}
.beacon .b_tsunagi > p{
  font-size: 1.35rem;
  font-weight: 700;
  text-align: center;
  opacity: 0;
  transform: translateY(1rem);
  transition: transform 600ms ease,opacity 600ms ease;
}
.beacon .b_tsunagi > p.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
.beacon .b_tsunagi > p .marker{
  transition: background 400ms 300ms ease;
  background-size: 0 100%; /* 初期状態: マーカーを非表示 */
  background-position: left bottom; /* マーカーの発生位置を左下に設定 */
}
.beacon .b_tsunagi > p.wcvisible .marker{
  background-size: 100% 100%; /* マーカーを表示 */
}
.beacon .contact_area .contact_contents{
  margin-top: 1rem;
}
.top_reason{
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	margin-top: calc(20px + 1.25rem);
}
body[wc-view-code="sp"] .top_reason,
body[wc-view-type="tb"] .top_reason{
	background: #F0F8FF;
  background: linear-gradient(180deg,rgba(240, 248, 255, 1) 0%, rgba(240, 248, 255, 1) 20%, rgba(255, 255, 255, 1) 100%);
}
body[wc-view-code="sp"] .top_reason{
	padding: 40px 7vw 0;
}
body[wc-view-code="tb"] .top_reason{
	padding: 40px 10vw 0;
}
body[wc-view-code="pc"] .top_reason{
	padding: calc(40px + 0.625rem) calc((100vw - 1100px) / 2) 0;
	margin-top: 4rem;
}
.top_reason > .tr_tunagi{
	font-size: 1.5rem;
  text-align: center;
  font-weight: 700;
	width: 200px;
	height: 40px;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 2rem;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.top_reason > .tr_tunagi::before{
	content: "";
	width: 40px;
  height: 40px;
  z-index: -1;
	background-color: var(--accentColor);
  border-radius: 2rem;
  margin: 0 auto;
  left: 50%;
  transform: translateX(-50%);
  transition: all 600ms ease;
  top: 0;
	position: absolute;
}
.top_reason > .tr_tunagi.wcvisible::before {
  width: 100%;
  height: 40px;
}
.top_reason > .tr_tunagi::after{
	content: "";
	width: 1.25rem;
	height: 1.25rem;
	position: absolute;
	background-color: var(--accentColor);
	left: 50%;
	transform: translateX(-50%) rotate(45deg);
	bottom: 0;
	transition: bottom 600ms ease;
}
.top_reason > .tr_tunagi.wcvisible::after{
	bottom: -0.625rem;
}
.top_reason > .tr_block{
	display: flex;
	flex-wrap: wrap;
	gap:0.5rem;
}
body[wc-view-type="tb-l"] .top_reason > .tr_block{
	gap:0.75rem;
}
.top_reason > .tr_block dl{
	background-color: #fff;
	border-radius: 0.25rem;
	opacity: 0;
  transform: translateY(1rem);
  transition: opacity 600ms ease,transform 600ms ease;
}

.top_reason > .tr_block dl.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
body[wc-view-type="tb"] .top_reason > .tr_block .w_50,
body[wc-view-code="sp"] .top_reason > .tr_block .w_50{
	width: calc(50% - 0.25rem);
}
body[wc-view-type="tb-l"] .top_reason > .tr_block .w_50{
	width: calc(50% - 0.375rem);
}
body[wc-view-code="tb"] .top_reason > .tr_block .w_100,
body[wc-view-code="sp"] .top_reason > .tr_block .w_100{
	width: 100%;
}
body[wc-view-code="pc"] .top_reason > .tr_block dl,
body[wc-view-type="tb-l"] .top_reason > .tr_block dl{
  box-shadow: 0px 0px 5px rgba(30,76,124,0.2);
}
body[wc-view-code="pc"] .top_reason > .tr_block dl{
	width: calc((100% / 3) - 0.7rem);
}
.top_reason > .tr_block dl > dt{
	border-bottom: 2px solid #f0f8ff;
  font-weight: 700;
  font-size: 1.15rem;
  padding: 0.5rem;
  box-sizing: border-box;
  text-align: center;
	color: var(--accentColor);
}
body[wc-view-type="sp-s"] .top_reason > .tr_block dl > dt{
	font-size: 1rem;
}
body:not([wc-view-code="sp"]) .top_reason > .tr_block dl > dt{
	padding: 0.75rem;
	font-size: 1.35rem;
}
.top_reason > .tr_block dl > dd{
	font-size: 0.9rem;
  padding: 0.5rem;
  box-sizing: border-box;
}
body:not([wc-view-code="sp"]) .top_reason > .tr_block dl > dd{
	padding: 0.75rem 1.5rem;
	font-size: 1rem;
}
body[wc-view-type="tb-l"] .top_reason > .tr_block dl > dd p{
	text-align: center;
}
body[wc-view-code="pc"] .top_reason > .tr_block dl > dd p{
  line-height: 1.8rem;
}
.tr_last{
	font-size: 1.45rem;
  font-weight: 700;
  margin-top: 1.25rem;
  text-align: center;
  transition: opacity 600ms ease;
	opacity: 0;
}
.tr_last.wcvisible{
	opacity: 1;
}
body[wc-view-code="tb"] .tr_last{
  margin: 2.5rem 0;
}
body[wc-view-code="pc"] .tr_last{
	margin-top: 3rem;
  line-height: 2.5rem;
  margin-bottom: 3rem;
}
body[wc-view-code="pc"] .tr_last br.none{
	display: none;
}
.tr_last .change_o{
  font-weight: 700;
	color: #333;
  transition: color 600ms 600ms ease;
}
.tr_last.wcvisible .change_o{
	color: #f26d00;
}
/*プラン*/
.plan{
  box-sizing: border-box;
  background-color: #f0f8ff;
	overflow: hidden;
}
body[wc-view-code="sp"] .plan,
body[wc-view-code="tb"] .plan{
  padding: var(--headerHeight) 0;
}
body[wc-view-code="pc"] .plan{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.plan .contents_title::before{
  content: "PLAN";
}
.plan > p{
  line-height: 1.8rem;
  margin: 1.5rem 0 1rem;
  box-sizing: border-box;
  opacity: 0;
  transition: opacity 600ms ease;
}
body[wc-view-code="sp"] .plan > p{
	padding: 0 7vw;
}
body[wc-view-code="tb"] .plan > p{
	padding: 0 5vw;
}
.plan > p.wcvisible{
  opacity: 1;
}
body:not([wc-view-code="sp"]) .plan > p{
  text-align: center;
}
.plan .plan_block{
  display: flex;
  gap:1rem;
	box-sizing: border-box;
}
body[wc-view-code="sp"] .plan .plan_block,
body[wc-view-type="tb"] .plan .plan_block{
	overflow-x: auto !important;
  -ms-overflow-style: none;
  scrollbar-width: none;
	scroll-snap-type: x mandatory;
}
body[wc-view-code="sp"] .plan .plan_block{
	padding-left: 7vw;
	padding-right: 7vw;
}
body[wc-view-code="tb"] .plan .plan_block{
	padding-left: 5vw;
	padding-right: 5vw;
}
body[wc-view-code="pc"] .plan .plan_block{
}
.plan .plan_block article{
  background-color: #fff;
  padding: 1rem;
  box-sizing: border-box;
	flex: none;
	position: relative;
	z-index: 1;
}
.plan .plan_block .osusume::before{
	content: "オススメ";
  position: absolute;
  background-color: #f26d00;
  color: #fff;
  padding: 0 1.5rem 0 0.5rem;
  font-weight: 700;
  top: 0;
  left: 0;
  clip-path: polygon(100% 0, calc(100% - 1rem) 50%, 100% 100%, 0 100%, 0 0);
  line-height: calc(1rem +(1em - 1lh) / 2);
  height: 1.8rem;
  display: flex;
  align-items: center;
}
body[wc-view-type="sp-s"] .plan .plan_block article{
  width: 260px;
}
body[wc-view-type="sp"] .plan .plan_block article{
  width: 300px;
}
body[wc-view-type="tb"] .plan .plan_block article{
  width: calc((100% / 2) - 0.75rem);
}
body[wc-view-type="tb-l"] .plan .plan_block article,
body[wc-view-code="pc"] .plan .plan_block article
{
  width: calc((100% / 3) - 0.6rem);
}
.plan .plan_block article > h2{
  text-align: center;
  position: relative;
  z-index: 1;
  padding: 1rem 1rem 0 1rem;
  box-sizing: border-box;
  font-size: 1.25rem;
  width: calc(100% - 2rem);
  margin: 0 auto;
}
.plan .plan_block article > h2 .pb_title{
  color: var(--accentColor);
  font-weight: 700;
  opacity: 0;
  transition: opacity 600ms 300ms ease;
}
.plan .plan_block article > h2.wcvisible .pb_title{
  opacity: 1;
}
.plan .plan_block article > h2::before,
.plan .plan_block article > h2::after{
  content: "";
  width: 27px;
  height: 13px;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  top: calc(50% + 0.5rem);
  transform: translateY(-50%);
  z-index: 2;
  position: absolute;
  transition: all 600ms ease;
  opacity: 0;
}
.plan .plan_block article > h2::before{
  -webkit-mask-image: url("/img/svg/p_left_title.svg");
  mask-image: url("/img/svg/p_left_title.svg");
  left: -1.5rem;
  background: var(--accentColor);
background: linear-gradient(275deg,rgba(30, 76, 124, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.plan .plan_block article > h2.wcvisible::before{
  left: 0;
  opacity: 1;
}
.plan .plan_block article > h2::after{
  -webkit-mask-image: url("/img/svg/p_right_title.svg");
  mask-image: url("/img/svg/p_right_title.svg");
  right: -1.5rem;
  background: var(--accentColor);
background: linear-gradient(90deg,rgba(30, 76, 124, 1) 0%, rgba(255, 255, 255, 1) 100%);
}
.plan .plan_block article > h2.wcvisible::after{
  right: 0;
  opacity: 1;
}
.plan .plan_block article > .price_memo{
	display: table;
	margin: 0.15rem auto 0.5rem auto;
	font-weight: 700;
	font-size: 0.95rem;
}
.plan .plan_block article > .plan_inner{
  background-color: #f0f8ff;
  box-sizing: border-box;
  padding: 1rem;
  opacity: 0;
  transition: opacity 600ms 450ms ease,transform 600ms 400ms ease;
  transform: translateY(1rem);
}
.plan .plan_block article > .plan_inner.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
.plan .plan_block article > .plan_inner > .p_point{
  text-align: center;
  font-weight: 700;
}
body[wc-view-type="sp-s"] .plan .plan_block article > .plan_inner > .p_point,
body[wc-view-type="tb-l"] .plan .plan_block article > .plan_inner > .p_point{
	font-size: 0.97rem;
}
.plan .plan_block article > .plan_inner > .price{
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-block: 1rem;
	flex-wrap: wrap;
	gap: 0.5rem 0;
}
body[wc-view-type="sp-s"] .plan .plan_block article > .plan_inner > .price{
	min-height: 40px;
}
body[wc-view-code="tb"] .plan .plan_block article > .plan_inner > .price{
	min-height: 43.2px;
}
body[wc-view-code="pc"] .plan .plan_block article > .plan_inner > .price{
	width: 200px;
	margin: 1rem auto;
	min-height: 48.4px;
}
.plan .plan_block article > .plan_inner > .price span{
  line-height:calc(1rem + (1em - 1lh) / 2);
}
.plan .plan_block article > .plan_inner > .price .money{
  font-family: "Montserrat";
  font-size: 2.35rem;
}
.plan .plan_block article > .plan_inner > .price .unit{
  font-size: 0.9rem;
  font-weight: 700;
}
.plan .plan_block article > .plan_inner > .price .p_top,
.plan .plan_block article > .plan_inner > .price .bottom{
	font-weight: 700;
	font-size: 0.9rem;
	width: 100%;
	text-align: center;
	line-height: calc(1rem +(1em - 1lh) / 2);
}
.plan .plan_block article > .plan_inner .p_in_box{
  background-color: #fff;
  padding: 0.75rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
body[wc-view-code="sp"] .plan .plan_block article > .plan_inner .p_in_box{
	min-height: 153px;
}
body[wc-view-code="tb"] .plan .plan_block article > .plan_inner .p_in_box,
body[wc-view-code="pc"] .plan .plan_block article > .plan_inner .p_in_box{
	min-height: 178px;
}
.plan .plan_block article > .plan_inner .p_in_box > dl{
}
.plan .plan_block article > .plan_inner .p_in_box > dl > dt{
}
.plan .plan_block article > .plan_inner .p_in_box > dl > dt > span{
	box-sizing: border-box;
  padding: 0.25rem 0.5rem;
  font-size: 0.8rem;
  font-weight: 700;
  display: table;
  background-color: #f0f8ff;
}
.plan .plan_block article > .plan_inner .p_in_box > dl > dd{
	padding: 0.25rem 0.5rem;
  box-sizing: border-box;
}
.plan .plan_block article > .plan_inner .p_in_box > dl > dd p{
	font-size: 0.85rem;
}




.plan .btn{
  margin: 1.5rem auto 0 auto;
  transition: opacity 600ms ease;
  opacity: 0;
}
.plan .btn.wcvisible{
  opacity: 1;
}
body[wc-view-code="pc"] .plan .btn{
  margin: 1.5rem auto 0 auto;
}
/*アローリサーチについて*/
.about{
  box-sizing: border-box;
}
body[wc-view-code="sp"] .about{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .about{
  padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .about{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.about .contents_title::before{
  content: "ABOUT";
}
.about .about_inner{
  display: flex;
}
body[wc-view-code="sp"] .about .about_inner{
  flex-direction: column;
  margin-top: 1.25rem;
}
body:not([wc-view-code="sp"]) .about .about_inner{
  margin-top: 1.5rem;
}
.about .about_inner .about_text{
  position: relative;
  z-index: 1;
  box-sizing: border-box;
}
body[wc-view-code="sp"] .about .about_inner .about_text{
  padding: 0 1rem 1rem 1rem;
}
body[wc-view-code="tb"] .about .about_inner .about_text{
  width: 50%;
  padding: 1rem 1rem 0 0;
}
body[wc-view-code="pc"] .about .about_inner .about_text{
  width: 550px;
  padding: 1.5rem 2.5rem 1.5rem 0;
}
.about .about_inner .about_text::after{
  content: "";
  position: absolute;
  left: 50%;
  top: 35%;
  transform: translate(-50%,-50%);
  z-index: -1;
  mix-blend-mode: overlay;
  background-color: rgba(36,76,124,0.05);
  -webkit-mask-image: url("/img/top_logo.png");
  mask-image: url("/img/top_logo.png");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
body[wc-view-type="sp-s"] .about .about_inner .about_text::after{
  width: 91vw;
  height: 78vw;
}
body[wc-view-type="sp"] .about .about_inner .about_text::after{
  width: 81vw;
  height: 68vw;
}
body[wc-view-type="tb"] .about .about_inner .about_text::after{
  width: 40vw;
  height: 37vw;
  top: 52%;
}
body[wc-view-type="tb-l"] .about .about_inner .about_text::after{
  width: 38vw;
  height: 33vw;
  left: calc(50% - 1rem);
  top: 50%;
}
body[wc-view-code="pc"] .about .about_inner .about_text::after{
  width: 440px;
  height: 385px;
  left: 50%;
  top: 50%;
}
.about .about_inner .about_text p{
  line-height: 1.8rem;
  opacity: 0;
  transform: translateY(1rem);
  transition: opacity 600ms ease,transform 600ms ease;
}
.about .about_inner .about_text p.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
.about .about_inner .about_text p:not(:nth-last-of-type(1)){
  margin-bottom: 0.75rem;
}
body[wc-view-code="pc"] .about .about_inner .about_text p:not(:nth-last-of-type(1)){
  margin-bottom: 1rem;
}
.about .about_inner .about_text .btn_block{
  margin: 1rem auto 0 auto;
  transition: opacity 600ms ease;
  opacity: 0;
}
body[wc-view-type="tb"] .about .about_inner .about_text .btn_block{
  flex-direction: column;
  gap:0.5rem;
  width: fit-content;
}
.about .about_inner .about_text .btn_block{
	opacity: 1;
}
body[wc-view-type="tb"] .about .about_inner .about_text .btn_block .btn,
body[wc-view-type="tb"] .about .about_inner .about_text .btn_block .btn a{
  width: 100%;
}
/*
body[wc-view-code="sp"]  .about .about_inner .about_text .btn{
  margin: 1rem auto 0 auto;
  opacity: 1;
}*/
.about .about_inner .about_img{
  display: flex;
  flex-wrap: wrap;
  gap:1px;
}
body[wc-view-code="tb"] .about .about_inner .about_img{
  width: 50%;
}
body[wc-view-code="pc"] .about .about_inner .about_img{
  width: 550px;
}
.about .about_inner .about_img figure{
  width: calc(50% - 0.5px);
}

.about .about_inner .about_img figure img{
}
/*調査項目*/
.service{
  box-sizing: border-box;
  background-color: #f0f8ff;
}
body[wc-view-code="sp"] .service{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .service{
  padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .service{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.service .contents_title::before{
  content: "SERVICE";
}
.service > p{
  line-height: 1.8rem;
  margin-top: 1.5rem;
  box-sizing: border-box;
  transition: opacity 600ms ease;
  opacity: 0;
}
.service > p.wcvisible{
  opacity: 1;
}
body[wc-view-code="sp"] .service > p,
body[wc-view-type="tb"] .service > p{
  padding: 0 1rem;
}
body[wc-view-type="tb-l"] .service > p,
body[wc-view-code="pc"] .service > p{
  text-align: center;
}
.service_inner{
  display: flex;
  flex-wrap: wrap;
  gap:0.75rem;
  margin-top: 1.5rem;
  justify-content: center;
}
body[wc-view-code="pc"] .service_inner{
  gap:1rem;
}
.service_inner > a{
  display: table;
  background-color: #fff;
  text-decoration: none;
  box-shadow: 0px 0px 5px rgba(30,76,124,0.2);
  transition: transform 600ms ease,opacity 600ms ease;
  opacity: 0;
  transform: translateY(1rem);
}
.service_inner > a.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
.service_inner > a article{
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
}
.service_inner > a article .more{
  font-size: 0.85rem;
  color: #333;
  font-weight: 700;
  position: absolute;
  bottom: 0.5rem;
  z-index: 2;
  padding-right: 1.5rem;
}
.service_inner > a article .more::after{
  content: "";
  width: 2rem;
  height: 2rem;
  background-color: #333;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
body:not([wc-view-code="sp"]) .service_inner > a article{
  gap:1rem;
}
body[wc-view-code="sp"] .service_inner > a article{
  width: calc(43vw - 0.375rem);
  height: calc(43vw - 0.375rem);
}
body[wc-view-type="tb"] .service_inner > a article{
  width: calc((90vw / 3) - 0.5rem);
  height: calc((90vw / 3) - 0.5rem);
}
body[wc-view-type="tb-l"] .service_inner > a article{
  width: calc((90vw / 4) - 0.75rem);
  height: calc((90vw / 4) - 0.75rem);
}
body[wc-view-code="pc"] .service_inner > a article{
  width: calc((1100px / 5) - 1.25rem);
  height: calc((1100px / 5) - 1.25rem);
}
.service_inner > a article > h2{
  font-weight: 700;
  display: flex;
  align-items: center;
  color: #333;
  letter-spacing: 1px;
  margin-block: calc((1em - 1lh) / 2);
  text-align: center;
  line-height: 1.15em;
}
body[wc-view-code="sp"] .service_inner > a article > h2{
  font-size: 0.9rem;
}
/*
.service_inner > a article > h2::after{
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  background-color: #333;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}*/
.service_inner > a article .s_icon{
  width: 100px;
  height: 100px;
  background-color: var(--accentColor);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
body[wc-view-code="sp"] .service_inner > a article .s_icon{
  width: 15vw;
  height: 15vw;
}
body[wc-view-type="tb"] .service_inner > a article .s_icon{
  width: 10vw;
  height: 10vw;
}
body[wc-view-type="tb-l"] .service_inner > a article .s_icon{
  width: 7vw;
  height: 7vw;
}
body[wc-view-code="pc"] .service_inner > a article .s_icon{
  width: 75px;
  height: 75px;
}
.service_inner > a article .s_icon.uwaki{
  -webkit-mask-image: url("/img/svg/uwaki.svg");
  mask-image: url("/img/svg/uwaki.svg");
}
.service_inner > a article .s_icon.sokou{
  -webkit-mask-image: url("/img/svg/sokou.svg");
  mask-image: url("/img/svg/sokou.svg");
}
.service_inner > a article .s_icon.dokushin{
  -webkit-mask-image: url("/img/svg/dokushin_gisou.svg");
  mask-image: url("/img/svg/dokushin_gisou.svg");
}
.service_inner > a article .s_icon.konzen{
  -webkit-mask-image: url("/img/svg/konzen.svg");
  mask-image: url("/img/svg/konzen.svg");
}
.service_inner > a article .s_icon.iede{
  -webkit-mask-image: url("/img/svg/iede.svg");
  mask-image: url("/img/svg/iede.svg");
}
.service_inner > a article .s_icon.hitosagashi{
  -webkit-mask-image: url("/img/svg/hitosagashii.svg");
  mask-image: url("/img/svg/hitosagashii.svg");
}
.service_inner > a article .s_icon.iyagarase{
  -webkit-mask-image: url("/img/svg/iyagarase.svg?202506191618");
  mask-image: url("/img/svg/iyagarase.svg?202506191618");
}
.service_inner > a article .s_icon.stoker{
  -webkit-mask-image: url("/img/svg/stoker.svg");
  mask-image: url("/img/svg/stoker.svg");
}
.service_inner > a article .s_icon.kigyou{
  -webkit-mask-image: url("/img/svg/kigyou.svg");
  mask-image: url("/img/svg/kigyou.svg");
}
.service_inner > a article .s_icon.toutyou{
  -webkit-mask-image: url("/img/svg/toutyou.svg?202506191412");
  mask-image: url("/img/svg/toutyou.svg?202506191412");
}
/*アローリサーチの強み*/
.strengths{
  box-sizing: border-box;
}
body[wc-view-code="sp"] .strengths,
body[wc-view-type="tb"] .strengths{
  padding: var(--headerHeight) 0;
}

body[wc-view-type="tb-l"] .strengths{
  padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .strengths{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.strengths .contents_title::before{
  content: "STRENGTHS";
}
.strengths article{
  box-sizing: border-box;
  display: flex;
  position: relative;
  z-index: 1;
  margin-top: 1.5rem;
  margin-top: calc(var(--headerHeight) / 2);
}
body[wc-view-code="sp"] .strengths article{
  flex-direction: column-reverse;
  overflow: hidden;
}
body[wc-view-type="tb-l"] .strengths article:nth-of-type(even),
body[wc-view-code="pc"] .strengths article:nth-of-type(even){
  flex-direction: row-reverse;
}
.strengths article .str_text{
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
body[wc-view-code="sp"] .strengths article .str_text{
  padding: 1.5rem 7vw 0 7vw;
}
body[wc-view-type="tb"] .strengths article .str_text{
  padding: 1rem 1rem 0 5vw;
  width: 55vw;
}
body[wc-view-type="tb-l"] .strengths article .str_text{
  width: 50%;
}
body[wc-view-type="tb-l"] .strengths article:nth-of-type(odd) .str_text{
  padding: 1rem 2rem 1rem 4.5rem;
}
body[wc-view-type="tb-l"] .strengths article:nth-of-type(even) .str_text{
  padding: 1rem 2rem 1rem 6rem;
}
body[wc-view-code="pc"] .strengths article .str_text{
  width: 550px;
  padding: 1rem 2.5rem 1rem 4.5rem;
}
body[wc-view-code="pc"] .strengths article:nth-of-type(odd) .str_text{
  padding: 1rem 2.5rem 1rem 4.5rem;
}
body[wc-view-code="pc"] .strengths article:nth-of-type(even) .str_text{
  padding: 1rem 2.5rem 1rem 6rem;
}
.strengths article .str_text > h2{
  font-weight: 700;
  font-size: 1.25rem;
  box-sizing: border-box;
  transition: opacity 600ms ease,transform 600ms ease; 
  opacity: 0;
  transform: translateY(1rem);
}
body[wc-view-code="sp"] .strengths article .str_text > h2{
  transition: opacity 600ms 600ms ease,transform 600ms 600ms ease;
}
.strengths article.wcvisible .str_text > h2{
  opacity: 1;
  transform: translateY(0);
}
body[wc-view-code="sp"] .strengths article .str_text > h2{
  text-align: center;
}
body[wc-view-code="pc"] .strengths article .str_text > h2{
}
body:not([wc-view-code="sp"]) .strengths article .str_text > h2{
  display: flex;
  min-height: 3rem;
  align-items: center;
}
body[wc-view-type="tb"] .strengths article .str_text > h2{
  padding-left: 4.25rem;
}
body[wc-view-code="pc"] .strengths article .str_text > h2{
  min-height: 3rem;
}
.strengths article .str_text > .str_intext{
  padding-top: 1rem;
}
.strengths article .str_text > .str_intext > p{
  line-height: 1.8rem;
  transition: opacity 600ms ease,transform 600ms ease; 
  opacity: 0;
  transform: translateY(1rem);
}
body[wc-view-code="sp"] .strengths article .str_text > .str_intext > p{
  transition: opacity 600ms 600ms ease,transform 600ms 600ms ease;
}
.strengths article.wcvisible .str_text > .str_intext > p{
  opacity: 1;
  transform: translateY(0);
}
.strengths article .str_text > .str_intext > p:not(:first-of-type){
  margin-top: 0.5rem;
}

.strengths article .str_text::before{
  content: "";
  width: 55vw;
  height: 55vw;
  -webkit-mask-image: url("/img/svg/target.svg");
  mask-image: url("/img/svg/target.svg");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  position: absolute;
  top: calc((28vw - 3.9rem) * -1);
  right: -15vw;
  mask-size: cover;
  background-color: rgba(30,76,124,0.05);
  transform: scale(0) rotate(-45deg);
  transition: all 600ms ease;
}
body[wc-view-code="sp"] .strengths article .str_text::before{
  transform: scale(0) rotate(45deg);
}
.strengths article.wcvisible .str_text::before{
  transform: scale(1) rotate(0) !important;
  opacity: 1;
}
body[wc-view-type="tb"] .strengths article .str_text::before{
  width: 25vw;
  height: 25vw;
  top: calc((12.5vw - 4.25rem) * -1);
  right: -6vw;
}
body[wc-view-type="tb-l"] .strengths article .str_text::before{
  width: 30vw;
  height: 30vw;
  top: calc((15vw - 4.5rem) * -1);
  left: -14.7vw;
}
body[wc-view-code="pc"] .strengths article .str_text::before{
  width: 250px;
  height: 250px;
  top: calc((75px - 1rem) * -1);
  left: -125px;
}
.strengths article .str_num{
  font-family: "Montserrat";
  font-size: 3rem;
  position: absolute;
  z-index: 2;
  color: rgba(30,76,124,0.2);
  line-height: 1em;
  transition: all 600ms ease;
  transform: scale(0);
}
.strengths article.wcvisible .str_num{
  transform: scale(1);
}
body[wc-view-code="sp"] .strengths article .str_num{
  left: 0;
  top: calc(55vw - 3rem);
  width: 5.4rem;
  display: flex;
  justify-content: center;
}
body[wc-view-type="tb"] .strengths article .str_num{
  left: 5vw;
  top: 1rem;
}
body[wc-view-type="tb-l"] .strengths article:nth-of-type(odd) .str_num{
  top: 1rem;
  left: 0;
}
body[wc-view-code="pc"] .strengths article:nth-of-type(odd) .str_num{
  top: 1rem;
  left: 0;
}
body[wc-view-type="tb-l"] .strengths article:nth-of-type(even) .str_num{
  left: calc(50% + 1.5rem);
  top: 1rem;
}
body[wc-view-code="pc"] .strengths article:nth-of-type(even) .str_num{
  left: calc(550px + 1.5rem);
  top: 1rem;
}
.strengths article > figure{
}
body[wc-view-code="sp"] .strengths article > figure{
  width: calc(100vw - 5.4rem);
  margin-left: auto;
}
body[wc-view-type="tb"] .strengths article > figure{
  width: 45vw;
}
body[wc-view-type="tb-l"] .strengths article > figure{
  width: 50%;
}
body[wc-view-code="pc"] .strengths article > figure{
  width: 550px;
}
.strengths article > figure img{
  transition: all ease 600ms;
}
.strengths article:nth-of-type(odd) > figure img{
  clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}
.strengths article.wcvisible:nth-of-type(odd) > figure img{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
body[wc-view-code="pc"] .strengths article:nth-of-type(even) > figure img{
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}
body[wc-view-code="pc"] .strengths article.wcvisible:nth-of-type(even) > figure img{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

body[wc-view-code="sp"] .strengths article > figure img{
  height: 55vw;
}
/*ご利用の流れ*/
.flow{
	background: linear-gradient(180deg,rgb(240, 248, 255) 0%, rgb(255, 255, 255) 100%);
	box-sizing: border-box;
  overflow: hidden;
}
body[wc-view-code="sp"] .flow{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-type="tb"] .flow{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-type="tb-l"] .flow{
	padding: var(--headerHeight) 0;
}
body[wc-view-code="pc"] .flow{
	padding: var(--headerHeight) calc((100% - 1100px) / 2);
}
.flow .contents_title{
}
.flow .contents_title::before{
	content: "FLOW";
}
.flow_block{
	display: flex;
  margin-top: 1.5rem;
}
body[wc-view-type="tb"] .flow_block,
body[wc-view-code="sp"] .flow_block{
	flex-direction: column;
}
body[wc-view-type="tb-l"] .flow_block{
  padding: 0 5vw;
  overflow-x: auto !important;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.flow_block .flow_box{
	display: flex;
}
body[wc-view-type="tb-l"] .flow_block .flow_box{
  flex: none;
  width: 290px;
}
body[wc-view-code="pc"] .flow_block .flow_box,
body[wc-view-type="tb-l"] .flow_block .flow_box{
  flex-direction: column;
}
body[wc-view-code="pc"] .flow_block .flow_box{
  width: calc(100% / 5);
}
.flow_block .flow_box .step_box{
  position: relative;
  z-index: 1;
  flex: none;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
}
body[wc-view-code="sp"] .flow_block .flow_box .step_box{
	width: 36px;
  padding-top: 1.5rem;
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box{
  width: 40px;
  padding-top: 1.5rem;
}
body[wc-view-code="pc"] .flow_block .flow_box .step_box,
body[wc-view-type="tb-l"] .flow_block .flow_box .step_box{
  width: 100%;
	height: 40px;
  padding-right: 1.55rem;
}
.flow_block .flow_box .step_box::before {
  content: "";
  background-color: var(--accentColor);
  position: absolute;
  top: -1rem;
  height: 1rem;
  z-index: 24;
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box::before,
body[wc-view-code="sp"] .flow_block .flow_box .step_box::before{
  clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
}
body[wc-view-code="sp"] .flow_block .flow_box .step_box::before{
  width: 36px;
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box::before{
  width: 40px;
}
body[wc-view-type="tb-l"] .flow_block .flow_box .step_box::before,
body[wc-view-code="pc"] .flow_block .flow_box .step_box::before{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 100% 50%);
  left: -1rem;
  width: 1rem;
  height: 40px;
  top: 0;
}
.flow_block .flow_box:first-of-type .step_box::before{
	display: none;
}
.flow_block .flow_box .step_box::after{
	content: "";
  width: 36px;
  height: 100%;
  bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  z-index: -1;
  clip-path: polygon(100% 0, 100% calc(100% - 1.55rem), 50% calc(100% - 0.5rem), 0 calc(100% - 1.55rem), 0 0);
  background-color: var(--accentColor);
  top: 0;
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box::after{
  width: 40px;
}
body[wc-view-type="tb-l"] .flow_block .flow_box .step_box::after,
body[wc-view-code="pc"] .flow_block .flow_box .step_box::after{
  clip-path: polygon(calc(100% - 1.1rem) 0, 100% 50%, calc(100% - 1.1rem) 100%, 0 100%, 0 0);
  width: calc(100% - 0.5rem);
}
.flow_block .flow_box:last-of-type .step_box::after{
	clip-path: inherit !important;
}
.flow_block .flow_box:first-of-type .step_box::after{
	border-radius: 0.25rem 0.25rem 0 0;
}
.flow_block .flow_box:last-of-type .step_box::after{
	border-radius: 0 0 0.25rem 0.25rem;
}
body[wc-view-type="tb-l"] .flow_block .flow_box:first-of-type .step_box::after,
body[wc-view-code="pc"] .flow_block .flow_box:first-of-type .step_box::after{
	border-radius: 0.25rem 0 0 0.25rem;
}
body[wc-view-type="tb-l"] .flow_block .flow_box:last-of-type .step_box::after,
body[wc-view-code="pc"] .flow_block .flow_box:last-of-type .step_box::after{
	border-radius: 0 0.25rem 0.25rem 0;
}
.flow_block .flow_box .step_box > span{
	color: #fff;
	font-family: "Montserrat";
	font-size: 1.35rem;
	display: flex;
	align-items: center;
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box > span,
body[wc-view-code="sp"] .flow_block .flow_box .step_box > span{
  flex-direction: column;
}
body[wc-view-type="tb-l"] .flow_block .flow_box .step_box > span,
body[wc-view-code="pc"] .flow_block .flow_box .step_box > span{
  font-size: 1rem;
}
.flow_block .flow_box .step_box > span::before{
	content: "STEP";
	line-height: calc(1rem + (1em - 1lh) / 2);
}
body[wc-view-type="tb"] .flow_block .flow_box .step_box > span::before,
body[wc-view-code="sp"] .flow_block .flow_box .step_box > span::before{
	font-size: 0.6rem;
}
.flow_block .flow_box > dl{
	width: calc(100% - 36px);
  padding: 0.5rem 1rem 2rem 1rem;
  box-sizing: border-box;
  min-height: 155px;
}
body[wc-view-type="tb"] .flow_block .flow_box > dl{
  width: calc(100% - 40px);
}
body[wc-view-type="tb-l"] .flow_block .flow_box > dl,
body[wc-view-code="pc"] .flow_block .flow_box > dl{
  padding: 0.5rem 0.5rem 0rem 0.5rem;
  width: 100%;
}
.flow_block .flow_box > dl > dt{
	font-weight: 700;
	color: var(--accentColor);
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
  box-sizing: border-box;
}
body[wc-view-type="tb-l"] .flow_block .flow_box > dl > dt,
body[wc-view-code="pc"] .flow_block .flow_box > dl > dt{
  padding-right: 1.55rem;
}
/*実例*/
.case{
  box-sizing: border-box;
  background-color: #f0f8ff;
  overflow: hidden;
}
body[wc-view-code="sp"] .case{
  padding: var(--headerHeight) 0;
}
body[wc-view-code="tb"] .case{
  padding: var(--headerHeight) 0;
}
body[wc-view-code="pc"] .case{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.case .contents_title::before{
  content: "CASE";
}
.case > p{
  box-sizing:border-box;
  transition: opacity 600ms ease;
  opacity: 0;
}
.case > p.wcvisible{
  opacity: 1;
}
body[wc-view-code="sp"] .case > p{
  padding: 1.5rem calc(7vw + 1rem);
}
body:not([wc-view-code="sp"]) .case > p{
  text-align: center;
}
body[wc-view-code="tb"] .case > p{
  padding: 1.5rem calc(5vw + 1rem);
}
body[wc-view-code="pc"] .case > p{
  margin: 1.5rem 0;
}
.case .case_block{
  display: flex;
  box-sizing:border-box;
  gap:1rem;
}
body[wc-view-code="sp"] .case .case_block{
  padding-left: 7vw;
	padding-right: 7vw;
}
body[wc-view-code="tb"] .case .case_block{
  padding-left: 5vw;
	padding-right: 5vw;
}
body:not([wc-view-code="pc"]) .case .case_block{
  overflow-x: auto !important;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.case .case_block a{
  flex: none;
  display: block;
  text-decoration: none;
}
.case .case_block a article{
  display: flex;
  flex-direction: column-reverse;
  background-color: #fff;
}
body[wc-view-code="sp"] .case .case_block a article{
  width: 235px;
}
body[wc-view-type="tb"] .case .case_block a article{
  width: 270px;
}
body[wc-view-type="tb-l"] .case .case_block a article{
  width: 290px;
}
body[wc-view-code="pc"] .case .case_block a article{
  width:calc((1100px / 4) - 0.6rem);
}
.case .case_block a article .case_text{
  display: flex;
  flex-direction: column;
  padding: 0.75rem;
  box-sizing: border-box;
}
.case .case_block a article .case_text *{
  color: #333;
}
.case .case_block a article .case_text h2{
  font-weight: 700;
  order:2;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 1.1rem;
  margin-top: 0.35rem;
}
.case .case_block a article .case_text .c_item{
  order: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.case .case_block a article .case_text .c_item h3{
  font-size: 0.85rem;
  background-color: var(--accentColor);
  color: #fff;
  font-weight: 700;
  padding: 0 0.35rem;
  line-height: calc(1rem + (1em - 1lh) / 2);
  display: flex;
  height: 1.4rem;
  justify-content: center;
  align-items: center;
}
.case .case_block a article .case_text .c_item time{
  line-height: 1em;
  font-weight: 700;
  font-size: 0.92rem;
}
.case .case_block a article .case_text .case_contents{
  order: 3;
  font-size: 0.95rem;
  line-height: 1.65rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: normal;
  -webkit-line-clamp: 2;
  word-break: break-all;
}
.case .case_block a article .case_text .case_arrow{
  order: 4;
  display: flex;
  margin-left: auto;
  font-weight: 700;
  width: fit-content;
  margin-block:calc((1em - 1lh) / 2);
  font-size: 0.9rem;
  margin-top: 0.25rem;
}
.case .case_block a article .case_text .case_arrow::after{
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
	background-color: #333;
}
.case .case_block a article figure{
}
.case .case_block a article figure img{
  aspect-ratio:1.414/1;
}
.case .btn{
  margin: 1.5rem auto 0;
}
/*お客様の声*/
.voice{
  box-sizing: border-box;
}
body[wc-view-code="sp"] .voice{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .voice{
  padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .voice{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.voice .contents_title::before{
  content: "VOICE";
}
.voice > p{
  line-height: 1.8rem;
  margin: 1.5rem 0;
  box-sizing: border-box;
}
body[wc-view-code="sp"] .voice > p,
body[wc-view-type="tb"] .voice > p{
  padding: 0 1rem;
}
body:not([wc-view-code="sp"]) .voice > p{
  text-align: center;
}
.voice > .top_percent{
  gap:0.5rem;
  display: flex;
}
body:not([wc-view-code="sp"]) .voice > .top_percent{
  width: 400px;
  margin: 0 auto;
}
.voice > .top_percent .percent_box{
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
body[wc-view-code="sp"] .voice > .top_percent .percent_box{
  width: calc((84vw / 3) - 0.25rem);
  height: calc((84vw / 3) - 0.25rem);
}
body:not([wc-view-code="sp"]) .voice > .top_percent .percent_box{
  width: calc((400px / 3) - 0.25rem);
  height: calc((400px / 3) - 0.25rem);
}
.voice > .top_percent .percent_box::after{
  content: "";
  -webkit-mask-image: url("/img/svg/percent_back.svg");
  mask-image: url("/img/svg/percent_back.svg");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #d0e6f4;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) scale(0);
  z-index: -1;
  transition: all 600ms ease;
  opacity: 0;
}
.voice > .top_percent .percent_box.wcvisible::after{
  transform: translate(-50%,-50%) scale(1);
  opacity: 1;
}
body[wc-view-code="sp"] .voice > .top_percent .percent_box::after{
  width: calc((84vw / 3) - 0.25rem);
  height: calc((84vw / 3) - 0.25rem);
}
body:not([wc-view-code="sp"]) .voice > .top_percent .percent_box::after{
  width: calc((400px / 3) - 0.25rem);
  height: calc((400px / 3) - 0.25rem);
}
.voice > .top_percent .percent_box > dt{
  margin-bottom: -0.2rem;
}
.voice > .top_percent .percent_box > dt h3{
  color: var(--accentColor);
  font-size: 0.9rem;
  font-weight: 700;
}
.voice > .top_percent .percent_box > dd{
}
.voice > .top_percent .percent_box > dd > div{
  display: flex;
  align-items: baseline;
  transition: opasity 600ms 500ms ease;
  opacity: 0;
}
.voice > .top_percent .percent_box.wcvisible > dd > div{
  opacity: 1;
}
.voice > .top_percent .percent_box > dd > div span{
  margin-block:calc((1em - 1lh) / 2);
  line-height: 1em;
  color: var(--accentColor);
}
.voice > .top_percent .percent_box > dd > div .per_num{
  font-family: "Montserrat";
  font-size: 3rem;
}
.voice > .top_percent .percent_box > dd > div .per_unit{
  font-size: 0.9rem;
  font-weight: 700;
}
.voice .bottom_percent{
  display: flex;
  margin-top: 1.5rem;
  gap:1rem;
}
body[wc-view-code="sp"] .voice .bottom_percent{
  flex-direction: column;
}
body[wc-view-code="pc"] .voice .bottom_percent{
  gap:1.5rem;
}
.voice .bottom_percent article{
}
body[wc-view-code="tb"] .voice .bottom_percent article{
  width: calc(50% - 0.5rem);
}
body[wc-view-code="pc"] .voice .bottom_percent article{
  width: calc(550px - 0.75rem);
}
.voice .bottom_percent article > h2{
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 1.15rem;
  padding: 0 0.5rem 0.35rem;
  box-sizing: border-box;
}
body[wc-view-code="pc"] .voice .bottom_percent article > h2{
  padding-bottom: 0.5rem;
}
.voice .bottom_percent article > h2::before{
  content: "";
  -webkit-mask-image: url("/img/svg/title_deco.svg");
  mask-image: url("/img/svg/title_deco.svg");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: var(--accentColor);
  width: 1rem;
  height: 1.15rem;
}
.voice .bottom_percent article .bar_graph_block{
  border: solid 2px #bbb;
  padding: 0.75rem;
  box-sizing: border-box;
}
body[wc-view-code="pc"] .voice .bottom_percent article .bar_graph_block{
  padding: 1rem;
}
.bar_graph_box{
}
.bar_graph_box:not(:first-of-type){
  margin-top: 0.5rem;
}
body[wc-view-code="pc"] .bar_graph_box:not(:first-of-type){
  margin-top: 0.75rem;
}
.bar_graph_box .bg_top{
  display: flex;
  justify-content: space-between;
}
.bar_graph_box .bg_top > h3{
  font-weight: 700;
  font-size: 0.95rem;
  width: calc(100% - 36px);
  flex: none;
}
.bar_graph_box .bg_top > .bg_num{
  width: 36px;
  display: flex;
  align-items: baseline;
}
.bar_graph_box .bg_top > .bg_num .in_bg_num{
  font-family: "Montserrat";
  font-size: 1.25rem;
}
.bar_graph_box .bg_top > .bg_num .in_bg_unit{
  font-size: 0.7rem;
  font-weight: 700;
}
.bar_graph_box .bar_box{
  height: 25px;
  width: 100%;
  position: relative;
  z-index: 1;
}
body[wc-view-code="pc"] .bar_graph_box .bar_box{
  height: 30px;
}
.bar_graph_box .bar_box::before{
  content: "";
  height: 25px;
  left: 0;
  right: 100%;
  width: 0;
  background-color: var(--accentColor);
  position: absolute;
  z-index: 2;
  transition: all 900ms ease;
}
.voice .bottom_percent article.wcvisible .bar_graph_box .bar_box::before{
  width: 100%;
  right: 0;
}
body[wc-view-code="pc"] .bar_graph_box .bar_box::before{
  height: 30px;
}
.voice_block{
  display: flex;
  flex-wrap: wrap;
  /*margin-top: 1.5rem;*/
}
/*body[wc-view-code="pc"] .voice_block{
  margin-top: 2.5rem;
}*/
.voice_block > h3{
  width: 100%;
  position: relative;
  z-index: 1;
  transition: opacity ease;
}
.voice_block > h3.wcvisible{
  opacity: 1;
}
.voice_block > h3::before{
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--accentColor);
  position: absolute;
  top: 50%;
  transform: translateY(-50%) scale(0);
  z-index: -1;
  transition: all 600ms 300ms ease;
}
.voice_block > h3::before{
  width: 100%;
  transform: translateY(-50%) scale(100%);
}
.voice_block > h3 .vt_in{
  font-size: 1.25rem;
  font-weight: 700;
  display: table;
  background-color: #fff;
  padding: 0 1rem;
  margin: 0 auto;
  color: var(--accentColor);
  opacity: 0;
  transition: all 600ms ease;
  clip-path: polygon(50% 0, 50% 0, 50% 100%, 50% 100%);
}
.voice_block > h3.wcvisible .vt_in{
  opacity: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.voice_block .voice_flex{
  display: flex;
  /*margin-top: 1rem;*/
  gap:1rem;
}
body[wc-view-code="sp"] .voice_block .voice_flex{
  flex-direction: column;
}
body[wc-view-code="pc"] .voice_block .voice_flex{
  gap:1.5rem;
}
.voice_block .voice_flex > a{
  text-decoration: none;
  transition: opacity 600ms ease;
  opacity: 0;
}
.voice_block .voice_flex > a.wcvisible{
  opacity: 1;
}
body[wc-view-code="tb"] .voice_block .voice_flex > a{
  width: calc(50% - 0.5rem);
}
body[wc-view-code="pc"] .voice_block .voice_flex > a{
  width: calc(50% - 0.75rem);
}
.voice_block .voice_flex > a *{
  color: #333;
}
.voice_block .voice_flex > a article{
  display: flex;
  flex-direction: column;
  background-color: #f0f8ff;
  box-sizing: border-box;
  padding: 0.75rem;
}
.voice_block .voice_flex > a article .title_box{
  order:2;
  display: flex;
  flex-direction: row-reverse;
  margin-top: 0.5rem;
}
.voice_block .voice_flex > a article .title_box figure{
  width: 85px;
}
body[wc-view-code="pc"] .voice_block .voice_flex > a article .title_box figure{
  width: 100px;
}
.voice_block .voice_flex > a article .title_box figure img{
  aspect-ratio:1/1;
}
.voice_block .voice_flex > a article .title_box .in_title{
  width: calc(100% - 85px);
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  padding-left: 0.75rem;
  box-sizing: border-box;
}
body[wc-view-code="pc"] .voice_block .voice_flex > a article .title_box .in_title{
  width: calc(100% - 100px);
}
.voice_block .voice_flex > a article .title_box .in_title > h2{
  font-weight: 700;
  font-size: 1.15rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: normal;
  -webkit-line-clamp: 2;
  word-break: break-all;
}
.voice_block .voice_flex > a article .title_box .in_title > p{
  display: flex;
  gap:0.25rem;
  margin-left: auto;
}
.voice_block .voice_flex > a article .title_box .in_title > p span{
  font-weight: 700;
  font-size: 0.9rem;
  display: table;
}
.voice_block .voice_flex > a article .voice_item{
  order:1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.voice_block .voice_flex > a article .voice_item h3{
  color: var(--accentColor);
  font-weight: 700;
  font-size: 0.9rem;
  padding: 0.15rem 0.5rem;
  display: table;
  border: solid 1px var(--accentColor);
  box-sizing: border-box;
  background-color: #fff;
}
.voice_block .voice_flex > a article .voice_item time{
  font-weight: 700;
  font-size: 0.9rem;
}
.voice_block .voice_flex > a article .voice_text{
  order: 3;
  background-color: #fff;
  box-sizing: border-box;
  padding: 0.5rem;
  margin-top: 0.5rem;
}
body[wc-view-code="pc"] .voice_block .voice_flex > a article .voice_text{
  padding: 0.75rem;
}
.voice_block .voice_flex > a article .voice_text p{
  line-height: 1.5rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: normal;
  -webkit-line-clamp: 3;
  word-break: break-all;
}
.voice_block .voice_flex > a article .voice_text .arrow{
  display: flex;
  width:fit-content;
  margin-left: auto;
  font-weight: 700;
  font-size: 0.85rem;
}
.voice_block .voice_flex > a article .voice_text .arrow::after{
  content: "";
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  width: 1.25rem;
  height: 1.25rem;
  background-color: #333;
}
.voice_block .btn{
  margin: 1.5rem auto 0;
  transition: opacity 600ms ease;
  opacity: 0;
}
.voice_block .btn.wcvisible{
  opacity: 1;
}
/*よくある質問*/
.faq{
  box-sizing: border-box;
  background-color: #f0f8ff;
}
body[wc-view-code="sp"] .faq{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-type="tb"] .faq{
  padding: var(--headerHeight) 10vw;
}
body[wc-view-type="tb-l"] .faq{
  padding: var(--headerHeight) 15vw;
}
body[wc-view-code="pc"] .faq{
  padding: var(--headerHeight) calc((100vw - 700px) / 2);
}
.faq .contents_title::before{
  content: "FAQ";
}
.faq > p{
  box-sizing:border-box;
  transition: opacity 600ms ease;
  opacity: 0;
}
.faq > p.wcvisible{
  opacity: 1;
}
body[wc-view-code="sp"] .faq > p{
  padding: 1.5rem 1rem;
}
body:not([wc-view-code="sp"]) .faq > p{
  text-align: center;
}
body[wc-view-code="tb"] .faq > p{
  padding: 1.5rem calc(5vw + 1rem);
}
body[wc-view-code="pc"] .faq > p{
  margin: 1.5rem 0;
}
.faq > .faq_box{
  background-color: #fff;
}
.faq > .faq_box:not(:first-of-type){
  margin-top:1rem;
}
.faq > .faq_box > dt{
  display: flex;
  padding: 0.5rem;
  box-sizing: border-box;
}
.faq > .faq_box > dt .q_icon,
.faq > .faq_box > dd .answer_box .a_icon{
  width: 30px;
  height: 30px;
  font-family: "Montserrat";
  line-height: 1em;
  border-radius: 0.5rem;
  flex: none;
  font-size: 1.35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-block: calc((1em - 1lh) / 2);
  padding-bottom: 0.25rem;
  box-sizing: border-box;
  padding-right: 0.15rem;
}
body[wc-view-code="pc"] .faq > .faq_box > dt .q_icon,
body[wc-view-code="pc"] .faq > .faq_box > dd .answer_box .a_icon{
  width: 35px;
  height: 35px;
}
.faq > .faq_box > dt .q_icon{
  background-color: var(--accentColor);
  color: #fff;
}
.faq > .faq_box > dd .answer_box .a_icon{
  border: solid 1px var(--accentColor);
  color: var(--accentColor);
}
.faq > .faq_box > dt p{
  font-weight: 700;
  width: calc(100% - (30px + 2.5rem));
  padding-left: 0.5rem;
  box-sizing: border-box;
  min-height: 30px;
  display: flex;
  align-items: center;
}
.faq > .faq_box > dd{ 
}
.faq > .faq_box > dd .answer_box{
  display: flex;
  padding: 0.5rem;
  box-sizing: border-box;
}
.faq > .faq_box > dd .answer_box > div{
  background-color: #f0f8ff;
  width: calc(100% - (30px + 0.5rem));
  margin-left: auto;
  padding: 0.5rem;
  box-sizing: border-box;
}
.faq > .faq_box > dd .answer_box > div .faq_list{
	padding-left: 1rem;
  box-sizing: border-box;
  list-style-position: outside;
  margin: 0.5rem 0
}
.faq > .faq_box > dd .answer_box > div .faq_list li{
}
.faq > .faq_box > dd .answer_box > div p{
}
.faq .btn{
  margin: 1.5rem auto 0;
  transition: opacity 600ms ease;
  opacity: 0;
}
.faq .btn.wcvisible{
  opacity: 1;
}
/*コラム・お知らせ*/
.information{
  box-sizing: border-box;
  display: flex;
}
body[wc-view-code="sp"] .information,
body[wc-view-type="tb"] .information{
  flex-direction: column;
}
body[wc-view-code="sp"] .information{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-type="tb"] .information{
  padding: var(--headerHeight) 10vw;
}
body[wc-view-type="tb-l"] .information,
body[wc-view-code="pc"] .information{
  gap:1.5rem;
}
body[wc-view-type="tb-l"] .information{
  padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .information{
  padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.information > section{
}
body[wc-view-type="tb-l"] .information > section{
  width: calc(50% - 0.75rem);
}
body[wc-view-code="pc"] .information > section{
  width: calc(550px - 0.75rem);
}
.information > .column{
}
.information > .column .contents_title::before{
  content: "COLUMN";
}
.information > .news{
}
body[wc-view-code="sp"] .information > .news,
body[wc-view-type="tb"] .information > .news{
  margin-top: var(--headerHeight);
}
.information > .news .contents_title::before{
  content: "NEWS";
}
.information > section > a{
  display: block;
  text-decoration: none;
  margin-top: 0.75rem;
  transition: opacity 600ms ease,transform 600ms ease;
  opacity: 0;
  transform: translateY(1rem);
}
.information > section > a.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
body[wc-view-code="pc"] .information > section > a{
  margin-top: 1rem;
}
.information > section > a:first-of-type{
  margin-top: 1.5rem !important;
}
body[wc-view-code="pc"] .information > section > a:first-of-type{
  margin-top: 2.5rem !important;
}
.information > section > a *{
  color: #333;
}
.information > section > a article{
  display: flex;
  flex-direction: row-reverse;
  box-sizing: border-box;
  border: 1px solid #bbb;
  border-bottom: 1px solid #bbb;
  padding: 0.75rem;
}
.information > section > a article .info_text{
  display: flex;
  flex-direction: column;
  width: calc(100% - 80px);
  padding: 0 0 0 0.5rem;
  background-color: #fff;
  box-sizing: border-box;
}
body[wc-view-code="pc"] .information > section > a article .info_text{
  width: calc(100% - 100px);
}
.information > section > a article .info_text time,
.information > section > a article .info_text .colum_item{
  order:1;
  height: 1.4rem;
}
.information > section > a article .info_text .colum_item{
  display: flex;
  line-height: calc(1rem + ((1em + 1lh) / 2));
}
.information > section > a article .info_text .colum_item h3{
  color: var(--accentColor);
  font-weight: 700;
  font-size: 0.85rem;
  padding: 0 0.25rem;
  border: solid 1px var(--accentColor);
  box-sizing: border-box;
  line-height: calc(1rem + (1em - 1lh) / 2);
  height: 1.4rem;
  display: flex;
  align-items: center;
}
.information > section > a article .info_text .colum_item time,
.information > section > a article .info_text time{
  line-height: 1.12rem;
  font-size: .9rem;
  font-weight: 700;
}
body[wc-view-type="tb-l"] .information > section > a article .info_text .colum_item time,
body[wc-view-type="tb-l"] .information > section > a article .info_text time,
body[wc-view-code="pc"] .information > section > a article .info_text .colum_item time,
body[wc-view-code="pc"] .information > section > a article .info_text time{
  height: 1.4rem;
}
.information > section > a article .info_text time{
  margin-left: auto;
}
.information > section > a article .info_text > h2{
  order:2;
  font-weight: 700;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.information > section > a article .info_text > p{
  order: 3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: normal;
  -webkit-line-clamp: 2;
  word-break: break-all;
}
.information > section > a article .info_text > .arrow{
  order: 4;
  font-size: 0.85rem;
  font-weight: 700;
  margin-left: auto;
  display: flex;
  width: fit-content;
  align-items: center;
}
.information > section > a article .info_text > .arrow::after{
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #333;
}
.information > section > a article figure{
  width: 80px;
}
body[wc-view-code="pc"] .information > section > a article figure{
  width: 100px;
}
.information > section > a article figure img{
  aspect-ratio:1/1;
}
.information > section .btn{
  margin: 1.5rem auto 0 auto;
}
/*アクセス方法*/
.access{
  box-sizing: border-box;
  background-color: #f0f8ff;
}
body[wc-view-code="sp"] .access{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .access{
  padding: var(--headerHeight) 10vw;
}
body[wc-view-code="pc"] .access{
  padding: var(--headerHeight) calc((100vw - 800px) / 2);
}
.access .access_block{
  padding: 2rem 1rem 1rem 1rem;
  box-sizing: border-box;
  background-color: #fff;
  box-shadow: 0px 0px 5px rgba(30,76,124,0.2);
}
body[wc-view-code="pc"] .access .access_block{
  padding:3rem 2rem 2rem 2rem;
}
.access .access_block .contents_title::before{
  content: "ACCESS";
}
.access .access_block .access_inner{
  display: flex;
  transition: opacity 600ms ease,transform 600ms ease;
  opacity: 0;
  transform: translateY(1rem);
}
.access .access_block .access_inner.wcvisible{
  opacity: 1;
  transform: translateY(0);
}
body[wc-view-code="sp"] .access .access_block .access_inner{
  flex-direction: column;
}
body:not([wc-view-code="sp"]) .access .access_block .access_inner{
  margin-top: 1.5rem;
}
.access_inner .access_text{
  box-sizing: border-box;
}
body[wc-view-code="sp"] .access_inner .access_text{
  padding: 1.5rem 0 1rem;
}
body:not([wc-view-code="sp"]) .access_inner .access_text{
  width: 50%;
}
body:not([wc-view-code="sp"]) .access_inner .access_text{
  display: flex;
  flex-direction: column;
}
.access_inner .access_text > dl{
  display: flex;
}

.access_inner .access_text > dl:not(:first-of-type){
  margin-top: 0.75rem;
}
.access_inner .access_text > .acc_address{
}
.access_inner .access_text > .acc_tel{
}
.access_inner .access_text > .acc_business_time{
}
.access_inner .access_text > dl > dt{
}
.access_inner .access_text > dl > dt .ac_icon{
  width: 1.75rem;
  height: 1.75rem;
  background-color: var(--accentColor);
  position: relative;
  z-index: 1;
  border-radius: 1rem;
  display: table;
}
.access_inner .access_text > dl > dt .ac_icon::before{
  content: "";
  display: table;
  width: 1.75rem;
  height: 1.75rem;
  background-color: #fff;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
}
.access_inner .access_text > dl > dd{
  padding-left: 0.5rem;
  box-sizing: border-box;
}
.access_inner .access_text > .acc_address > dd .ac_ad_num{
  font-family: "Number";
  display: table;
  font-weight: 700;
}
.access_inner .access_text > .acc_address > dd adress{
}
.access_inner .access_text > .acc_tel > dd a{
  display: table;
  width: fit-content;
  font-family: "Number";
  text-decoration: none;
  color: #333;
  font-size: 1.15rem;
  line-height: 1.75rem;
  font-weight: 700;
}
body:not([wc-view-code="sp"]) .access_inner .access_text > .acc_tel > dd a{
  pointer-events: none;
}
.access_inner .access_text > .acc_business_time dd{
}
.access_inner .access_text > .acc_business_time dd p{
  font-family: "Number";
  font-weight: 700;
  font-size: 1.15rem;
}
.access_inner .access_text .btn{
  margin: 1rem auto 0 auto;
}
body[wc-view-code="pc"] .access_inner .access_text .btn{
  margin: auto auto 0 auto;
}
.access_inner figure{
}
body:not([wc-view-code="sp"]) .access_inner figure{
  width: 50%;
}
.access_inner figure img{
  aspect-ratio:1.414/1;
}