@charset "utf-8";
/* CSS Document */

/*common
=======================*/
html
#main {
  box-sizing: border-box;
  font-size: 1.6rem;
  color: #323232;
  line-height: 1.7;
  margin: 0 auto;
}
#main img{
	vertical-align:top;
  pointer-events: none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
  user-select:none;
}
.contents_inner {
	margin: 200px auto 0;
}
@media screen and (max-width:767.98px) {
  .contents_inner {
    margin-top: 160px;
  }
}
@media screen and (max-width:630px) {
  .contents_inner {
    margin-top: 140px;
  }
}
@media screen and (max-width:500px) {
  .contents_inner {
    margin-top: 105px;
  }
}
@media screen and (min-width:768px) {
	.spOnly {
		display: none;
	}
}
@media screen and (max-width:767.98px) {
	.pcOnly {
		display: none;
	}
}
.kvArea,.menuNav,.introduction,.contents_inner {
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, Arial, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
}
/*---animation---*/
.anim_fadein {
  animation: fadeIn 4s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.anim_scroll {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1s, transform 1s;
}
.anim_scroll.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}
.kvTitWrap .anim_scroll {
  transform: translateY(30px) scale(.7);
}
.kvTitWrap .anim_scroll.scrollin {
  transform: translate(0, 0) scale(1);
}
@media screen and (max-width:767.98px) {
	.anim_scroll_sp {
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 1s, transform 1s;
	}
}
/*=====================*/

/*背景下の画像入れ替え
/*=====================*/
.bg_parts .pcdisplay {
  display: block
}
.bg_parts .spdisplay {
  display: none
}
@media screen and (max-width: 750px) {
	.bg_parts .pcdisplay {
		display: none;					
	}
	.bg_parts .spdisplay {
		display: block;				
  }
}
/*=======================**/

/*kvArea
=======================*/
/*(PC)*/
.kvArea {
	position: relative;
}
.kv {
	height: 528px;
	margin: 0;
}
.kvTitWrap {
	position: absolute;
	top: 40%;
	left: 50%;
	max-width: 1160px;
	width: 100%;
	transform: translate(-50%, -40%);
	z-index: 5;
}
.kvArea h1 {
	position: relative;
	max-width: 580px;
	margin: 0;
}
.kvArea h1 .h1_txt {
  font-size: 7.1rem;
  color: #ac2931;
  font-weight: bold;
}
.kvArea .introTxt {
	display: inline-block;
  font-size: 2.8rem;
	color: #ac2931;
  line-height: 1.75;
  border-bottom: 2px solid #e5e5e5;
  padding-bottom: 10px;
}
.kvArea .introTxt_next {
  font-size: 2.0rem;
	color: #000;
  line-height: 1.75;
  padding-top: 23px;
}
.kv .slider-item {
	height: 528px;
}
.kv img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
	.kv, .kv .slider-item {
		height: 347px;
	}
	.kvTitWrap {
		top: 50%;
		transform: translate(-50%, -50%);
	}
	.kvArea h1 {
		/*max-width: 270px;*/
    margin: 0 auto;
		padding: 0;
		font-size: 1.5rem;
		font-weight: normal;
	}
  .kvArea .introTxt_next {
    font-size: 1.1rem;
    line-height: 1.5;
    padding-top: 9px;
  }
	.kvTitWrap {
		top: 32%;
		text-align: center;
	}
}
@media screen and (max-width:767.98px) {
 .kvArea h1 .h1_txt {
   font-size: 4.1rem;
 }
  .kvArea .introTxt {
    font-size: 1.6rem;
    padding-bottom: 5px;
    margin-top: -5px;
  }
  .kvArea .introTxt_next {
    font-size: 1.2rem;
  }
  .kvTitWrap .anim_scroll img {
    margin-top: 2px;
  }
}
@media screen and (max-width:550.98px) {
 .kvArea h1 .h1_txt {
   font-size: 3.8rem;
 }
}
@media screen and (max-width:375.98px) {
 .kvArea h1 .h1_txt {
   font-size: 3.6rem;
 } 
  .kvArea .introTxt {
    font-size: 1.5rem;
    padding-bottom: 5px;
    margin-top: -5px;
  }
  .kvArea .introTxt_next {
    font-size: 1.1rem;
  }
}
@media screen and (max-width:340.98px) {
  .kvArea h1 .h1_txt {
    font-size: 3.3rem;
  }
  .kvArea .introTxt {
    font-size: 1.45rem;
  }
  .kvArea .introTxt_next {
    padding-top: 9px;
    letter-spacing: -0.5px;
  }
  .waveWrap .wave {
    width: 138%;
  }
}

/*---wave---*/
.waveWrap.anim_scroll {
  transform: translateX(-400px);
	opacity: 1;
}
.waveWrap.anim_scroll.scrollin {
  transform: translate(0, 0);
}
.waveWrap {
	position: absolute;
  width: 1200px;
  height: 528px;
  overflow: hidden;
  /*transform: translate3d(0,0,0);*/
	z-index: 3;
}
.waveWrap .wave {
  position: absolute;
  top: -310px;
	left: -460px;
  width: 1500px;
  height: 1500px;
  margin-top: -250px;
  background: #194d9d;
  transform-origin: 50% 48%;
  border-radius: 50%;
  opacity: 0.4;
}
.waveWrap .wave.-three {
  opacity: 0.7;
  background: #fff;
}
.waveWrap .wave.-two {
  opacity: 1;
  background: #fff;
}
@keyframes drift {
  from {
    transform: rotate(0deg);
  }
  from {
    transform: rotate(180deg);
  }
}
@keyframes slide-skew {
  0% {
    transform: translate(-50%,-450px);
    opacity: .5;
  }
  100% {
    transform: translate(-50%,0);
		opacity: 1;
  }
}

@media (min-width: 768px) {
	.waveWrap .wave {
		animation: drift 1600ms  linear;
	}
	.waveWrap .wave.-three {
		animation: drift 2000ms  linear;
	}
	.waveWrap .wave.-two {
		animation: drift 2600ms  linear;
	}
}

@media screen and (max-width:767.98px) {
	.waveWrap.anim_scroll {
		transform: translate(0, 0);
		opacity: 1;
	}
	.waveWrap {
		width: 100%;

		height: 235px;
	}
	.waveWrap .wave {
		top: -75px;
    left: 50%;
    transform: translateX(-50%);
    width: 130%;
    height: 130%;
    margin-top: 0;
		border-radius: 50%;
		animation: slide-skew 1.5s;
	}
  .kvTitWrap .anim_scroll img {
    width: 90px;
  }
}
@media screen and (max-width: 1800px) and (min-width: 1600px) {
  .waveWrap .wave {
    left: -510px;
  } 
}
@media screen and (max-width: 1599.98px) and (min-width: 1440px) {
  .waveWrap .wave {
    left: -570px;
  } 
}
@media screen and (max-width: 1439.98px) and (min-width: 1025px) {
  .waveWrap .wave {
    left: -700px;
  } 
}
@media screen and (max-width: 1024.98px) and (min-width: 768px) {
  .waveWrap .wave {
    left: -780px;
  } 
}
/*=====================*/


/*menuNav
=======================*/
.menuNav {
	/*position: sticky;
  top: 0;
  z-index: 50;*/
  background: linear-gradient(90deg, #194d9d 0%, #194d9d 50%, #4a9b4e 50%, #4a9b4e 100%);
}
.menuNav_inner {
	display: flex;
	justify-content: center;
	max-width: 1160px;
	margin: 0 auto;
}
.menuNav .navItem {
	width: 100%;
	font-size: 1.6rem;
	text-align: center;
	background: #194d9d;
}
.menuNav .navItem.narrow {
	width: 85%;
	font-size: 2.4rem;
  font-weight: bold;
}
.navItem.narrow.right {
  background: #4a9b4e;
  font-size: 2.0rem;
}
.menuNav .navItem a {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	padding: 13px 30px 6px 20px;
  color: #fff;
  position: relative;
}
.menuNav .navItem a::after {
	position: absolute;
	content: '';
	right: 50%;
	width: 15px;
	height: 15px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translateX(50%) rotate(45deg);
}
.menuNav .navItem.left a::after {
	bottom: 20%;
	right: 50%;
	transform: translateX(50%) rotate(45deg);
}
.menuNav .navItem.right a::after {
	top: 50%;
	right: 7%;
	transform: translateY(-50%) rotate(315deg);
  width: 15px;
  height: 15px;
}

@media (min-width: 768px) {
	.menuNav .navItem {
		transition: 0.2s ease all;
	}
  .menuNav .navItem:first-of-type {
    border-left: 2px solid #fff;
  }
  .menuNav .navItem {
    border-right: 2px solid #fff;
  }
  .menuNav .navItem a:hover {
		color: #194d9d;
		background: #fff;
		opacity: .8;
		transition: 0.2s ease all;
	}
	.menuNav .navItem.right a:hover {
		color: #4a9b4e;
	}
	.menuNav .navItem a:hover::after {
		border-right: 2px solid #194d9d;
		border-bottom: 2px solid #194d9d;
	}
	.menuNav .navItem.right a:hover::after {
		border-right: 2px solid #4a9b4e;
		border-bottom: 2px solid #4a9b4e;
	}
}

@media screen and (max-width:767.98px) {
	.menuNav_inner {
		flex-wrap: wrap;
	}
	.menuNav .navItem,
	.menuNav .navItem.narrow {
		width: calc(100% / 3);
		font-size: 1.4rem;
	}
	.menuNav .navItem:last-of-type {
		width: 100%;
	}
	.menuNav .navItem:nth-of-type(2n+1) {
		border-right: 2px solid #fff;
	}
	.menuNav .navItem.left {
		border-bottom: 2px solid #fff;
	}
	.menuNav .navItem a {
		position: relative;
		display: flex;
		justify-content: center;
    align-items: center;
		padding: 5px;
    height: 50px;
	}
  .menuNav .navItem.left a::after {
    top: 32%;
    right: 9%;
    width: 11px;
    height: 11px;
  }
  .menuNav .navItem.right a::after {
    width: 11px;
    height: 11px;
  }
	.menuNav .navItem a span {
		position: static;
		line-height: 1.2;
	}
	.menuNav .navItem a span::after {
		display: none;
	}
}
@media screen and (max-width:359px) {
	.menuNav .navItem {
		font-size: 1.2rem;
	}
}
/*navItem narrow rightのカラムを1つにする時に表示*/
/*↓ここから*/
@media screen and (max-width:767.98px) {
  .menuNav .navItem.narrow.right {
    width: 100%;
  }
  .menuNav .navItem.narrow.right a span br{
    display: none;
  }
  .menuNav .navItem.right a::after {
    right: 23%;
  }
  .menuNav .navItem:nth-of-type(2n+1) {
    border-right: none;
  }
  .menuNav .navItem.narrow.left:first-of-type {
    border-right: 2px solid #fff;
  }
}
/*ここまで↓*/

/*introduction
=======================*/
/*(PC)*/
.introduction {
  background-color: #f7f7f7;
  position: relative;
  padding-top: 70px;
}
.introduction_content {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.introduction_left .question li {
  display: flex;
  align-items: center;
}
.introduction .bg_parts {
  position: absolute;
}
.question_txt {
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 2.0;
  color: #000;
}
.consult p {
  margin-top: 22px;
  font-size: 1.8rem;
  line-height: 1.75;
  color: #000;
}
.consult p span {
  background-color: #fef289;
}
@media screen and (min-width:768px) {
  .introduction_right img {
    width: 443px;
  }
}
/*(SP)*/
@media screen and (max-width:767.98px){
  .introduction_content {
    flex-direction: column-reverse;
  }
  .introduction_right img {
    width: 70%;
  }
  .introduction_left {
    width: 100%;
  }
  .introduction_right {
    text-align: center;
  }
  .question {
    width: 87%;
    margin: 0 auto;
  }
  .question ul {
    margin-left: 25px;
  }
  .question_img {
    margin-left: 5px;
  }
  .question_img img{
    width: 70%;
  }
  .question_txt {
    font-size: 1.4rem;
  }
  .consult {
    width: 90%;
    margin: 0 auto;
  }
  .consult p {
    font-size: 1.4rem;
  }
  .consult p br {
    display: none;
  }
}
@media screen and (max-width:640px) {
  .consult p {
    font-size: 1.2rem;
  }
}
/*=======================*/

/*h2
=======================*/
/*(PC)*/
main h2 {
	position: relative;
	font-size: 3.4rem;
	text-align: center;
}
main h2::after {
	position: absolute;
	content: '';
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	width: 295px;
	height: 5px;
	background: #397fbf;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
  main h2 {
    font-size: 2.2rem;
    text-indent: -1.2px;
  }
  .line_break {
    display: inline;
  }
@media (min-width: 374.98px) {
    .line_break {
      display: none;
    }
  }
  main h2::after {
    width: 183px;
    height: 3px;
  }
}
/*=======================*/

/*choose_tour_conductor
=======================*/
/*(PC)*/
.choose_tour_conductor {
  max-width: 1160px;
  margin: 0 auto;
}
.choose_tour_conductor h2 span {
	position: relative;
}
.choose_tour_conductor h2 span::before {
	position: absolute;
	content: '';
	top: 50%;
	left: -110px;
	width: 80px;
	height: 2px;
	background: #929292;
	transform: translateY(-50%);
}
.choose_tour_conductor h2 span::after {
	position: absolute;
	content: '';
	top: 50%;
	right: -110px;
	width: 80px;
	height: 2px;
	background: #929292;
	transform: translateY(-50%);
}

.pointBox {
	display: flex;
	justify-content: space-between;
	gap: 40px;
	margin-top: 108px;
}
.pointBox .pointItem {
	position: relative;
	padding: 55px 15px 33px;
  border: solid 1px #ccc;
  border-radius: 25px;
}
@media screen and (min-width:768px) {
  .pointBox .pointItem {
    width: 31%;
  }
}
.pointBox .pointItem .roundBox {
	position: absolute;
	top: -13%;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 58px;
}
.pointBox .pointItem .whiteRound {
	width: 85px;
	height: 85px;
}
.pointBox .pointItem .boldTxt {
	font-size: 2.4rem;
	font-weight: bold;
  text-align: center;
  color: #071f43;
  background-color: #dcecf5;
  margin: 13px 0;
}
.pointBox .pointItem .mainTxt {
  font-size: 1.6rem;
  text-align: left;
  line-height: 2.0;
  color: #000;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
	.choose_tour_conductor {
		margin-top: 55px;
    width: 94%;
	}
	.choose_tour_conductor h2 span::before,
	.choose_tour_conductor h2 span::after {
		height: 1px;
		width: 100%;
	}
	.choose_tour_conductor h2 span::before {
		left: -105%;
	}
	.choose_tour_conductor h2 span::after {
		right: -105%;
	}
	.pointBox {
		display: block;
		margin-top: 55px;
	}
	.pointBox .pointItem {
		margin-top: 50px;
    text-align: center;
    padding: 40px 22px 9px
	}
	.pointBox .pointItem:first-of-type {
		margin-top: 60px;
	}
	.pointBox .pointItem .roundBox {
		gap: 20px;
		top: -33px;
	}
	.pointBox .pointItem .whiteRound {
		width: 65px;
		height: 65px;
	}
	.pointBox .pointItem p {
		font-size: 1.2rem;
	}
	.pointBox .pointItem .boldTxt {
		font-size: 1.6rem;
    margin: 0;
    margin-bottom: 9px;
    display: inline-block;
    padding: 4px 9px;
    width: 58%;
	}
  .pointBox .pointItem .mainTxt {
    font-size: 1.3rem;
  }
}
@media screen and (max-width:500px) {
  .pointBox .pointItem .boldTxt {
    font-size: 1.5rem;
  }
  .pointBox .pointItem .mainTxt {
    font-size: 1.2rem;
  }
}
@media screen and (max-width:374.98px) {
  .pointBox .pointItem .boldTxt {
    padding: 4px 2px 4px;
    width: 61%;
  }
}
/*usage_flow
=======================*/
/*(PC)*/
.usage_flow {
  max-width: 1160px;
  margin: 66px auto 250px;
}
.usage_flow h2 {
 margin: 0 auto 35px;
}
.usage_flow li {
  display: flex;
  border-radius: 5px;
  background-color: #fff;
  position: relative;
  z-index: 4;
}
.usage_flow li:not(:last-child)::after {
  position: absolute;
  content: '';
  left: 50%;
  bottom: -50px;
  background: #ccc;
  width: 1px;
  height: 40px;
}
.usage_flow li:nth-of-type(n+2) {
  margin-top: 60px;
}
.usage_flow li .stepItem_Img {
  width: 20%;
  background-color: #dcecf5;
  border-radius: 5px 0 0 5px;
  position: relative;
  z-index: 5;
}
.usage_flow li .stepItem_Img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width:768px) {
  .usage_flow li img {
      width: 70%;
  }
}
.usage_flow li .stepItem_txt {
  width: 80%;
  border-radius: 0 5px 5px 0;
  padding: 15px 30px 25px 30px;
}
.usage_flow li .stepItem_txt .stepItem_txt_top {
  position: relative;
  margin-bottom: 13px;
}
.usage_flow li .stepItem_txt .stepItem_txt_top::after {
  position: absolute;
  content: '';
  bottom: -5%;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #2262bd 0%, #2262bd 14%, #ccc 14%, #ccc 100%);
}
.usage_flow .stepItem {
  border: solid 1px #ccc;
}
.usage_flow .stepItem .pageLink {
  margin-top: 10px;
}
.usage_flow .stepItem .pageLink a {
  color: #194D9D;
  text-decoration: underline;
  font-size: 1.8rem;
  font-weight: 700;
}
.usage_flow .stepItem .pageLink a:hover {
  color: #cc0d21;
  text-decoration: none;
}
.stepItem_txt_top {
  display: flex;
  align-items: center;
}
.stepItem_txt_top .step_num {
  font-size: 2.5rem;
  color: #bdbdbd;
  font-weight: bold;
  margin-right: 32px;
}
.stepItem_txt_top h3 {
  margin: 0;
  font-size: 3.2rem;
  font-weight: bold;
  color: #071f43;
}
.stepItem_txt .mainTxt {
  font-size: 1.8rem;
  color: #000;
}
.stepItem_txt .remarks {
  font-size: 1.4rem;
  color: #000;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
  .usage_flow {
    width: 94%;
    margin-bottom: 120px;
  }
  .stepItem_txt_top .step_num {
    font-size: 1.2rem;
    margin-right: 0;
    width: 28%;
  }
  .stepItem_txt_top h3 {
    font-size: 1.7rem;
    width: 86%;
  }
  .stepItem_txt .mainTxt {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .usage_flow .stepItem .pageLink {
    margin-top: 0;
  }
  .usage_flow .stepItem .pageLink a {
    font-size: 1.2rem;
  }
  .stepItem_txt .remarks {
    font-size: 1.1rem;
    line-height: 1.45;
  }
  .usage_flow li {
    border: solid 1px #ccc;
  }
  .usage_flow li .stepItem_Img {
    width: 27%;
  }
  .usage_flow li .stepItem_txt {
    width: 73%;
    padding: 12px 10px 12px 10px;
  }
  .usage_flow li .stepItem_txt .stepItem_txt_top::after {
    width: 100%;
  }
  .usage_flow li:not(:last-child)::after {
    bottom: -35px;
    width: 2px;
    height: 25px;
  }
  .usage_flow li:nth-of-type(n+2) {
    margin-top: 45px;
  }
}
@media screen and (max-width:767.98px) {
  .usage_flow {
    margin-bottom: 170px;
  }
}
@media screen and (max-width:530.98px) {
  .usage_flow {
    margin-bottom: 120px;
  }
}
@media screen and (max-width:500px) {
  .stepItem_txt .mainTxt {
    font-size: 1.2rem;
  }
}
@media screen and (max-width:767.98px) {
  .usage_flow li img {
      width: 54%;
  }
}
@media screen and (max-width:686.98px) {
  .usage_flow li img {
      width: 60%;
  }
}
@media screen and (max-width:600.98px) {
  .usage_flow li img {
      width: 66%;
  }
}
@media screen and (max-width:500.98px) {
  .usage_flow li img {
      width: 70%;
  }
}
@media screen and (max-width:425.98px) {
  .usage_flow li img {
      width: 78%;
  }
  .stepItem_txt_top h3 {
    font-size: 1.4rem;
  }
}
@media screen and (max-width:400.98px) {
  .usage_flow li img {
      width: 83%;
  }
}
@media screen and (max-width:375.98px) {
  .usage_flow li img {
      width: 94%;
  }
  .stepItem_txt_top h3 {
    font-size: 1.3rem;
    width: 67%;
  }
  .stepItem_txt_top .step_num {
    width: 30%;
  }
}
/*=======================*/

/*service_creation
=======================*/
/*(PC)*/
.service_creation {
  background: #f7f7f7;
  position: relative;
  padding-bottom: 50px;
  margin-bottom: 100px;
}
.service_creation .bg_parts {
  position: absolute;
  bottom: 100%;
}
.service_creation_inner {
  max-width: 1160px;
  margin: 0 auto;
}
.service_creation h2 {
  margin: 0 auto 45px;
}
.service_creation_inner>p {
 font-size: 1.8rem;
 text-align: center;
 line-height: 2.1;
 letter-spacing: -1.4px;
 color: #000;
}
.customerVoice_Box {
  display: flex;
  position: relative;
  margin-top: 40px;
}
.customerVoice_box_txt {
  position: absolute;
  right: 0;
  top: 17%;
  background-color: #fff;
  border-radius: 25px;
  font-size: 2rem;
  padding: 27px 39px 34px 43px;
  box-shadow: 0 2px 20px rgba(172, 181, 194, 0.30);
}
.customerVoice_box_txt h3 {
  font-size: 3rem;
  font-weight: 500;
  position: relative;
  margin: 0;
} 
.customerVoice_box_txt h3::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 2px;
  bottom: 0;
  background: linear-gradient(90deg, #2262bd 0%, #2262bd 14%, #ccc 14%, #ccc 100%);
} 
.customerVoice_box_txt>p {
  position: relative;
  line-height: 1.75;
  margin-top: 10px;
  letter-spacing: -0.2px;
  text-indent: 1em;
  color: #000;
}
.customerVoice_box_txt>p:nth-of-type(2) {
  margin-top: 24px;
}
.customerVoice_box_txt>p::before {
 position: absolute;
 content: "";
 width: 17px;
 height: 17px;
 background-color: #194d9d;
 border-radius: 50%;
 right: 97%;
 top: 9%;
}
.customerVoice_box_txt>p:first-of-type::after {
  position: absolute;
  content: '';
  width: 100%;
  height: 2px;
  bottom: -14px;
  left: 0;
  background: #ccc;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
  .service_creation {
    margin-bottom: 210px;
  }
  .service_creation_inner {
    width: 94%;
    margin-bottom: 30px;
  }
  .service_creation_inner>p {
     font-size: 1.3rem;
  }
  .service_creation h2 {
    margin-bottom: 25px;;
  }
  .customerVoice_Box {
  flex-direction: column;
  margin-top: 20px;
  }
  .customerVoice_box_txt {
    padding: 13px 20px 13px 20px;
    top: auto;
    bottom: -20%;
    width: 94%;
    right: 50%;
    transform: translateX(50%);
  }
  .customerVoice_box_txt h3 {
    font-size: 1.7rem;
    font-weight: normal;
  }
  .customerVoice_box_txt h3::before {
    background: linear-gradient(90deg, #2262bd 0%, #2262bd 28%, #ccc 28%, #ccc 100%);
  }
  .customerVoice_box_txt>p {
    font-size: 1.4rem;
  }
  .customerVoice_box_txt>p::before {
    width: 11px;
    height: 11px;
    top: 13%;
    right: 98%;
  }
  .customerVoice_box_txt>p:first-of-type::after {
    bottom: -8px;
  }
}
@media screen and (max-width:355.98px) {
  .customerVoice_box_txt {
    bottom: -102%;
    padding: 10px 16px 10px 16px;
  }
  .customerVoice_box_txt h3 {
    font-size: 1.6rem;  
  }
  .customerVoice_box_txt>p {
    font-size: 1.3rem;
  }
}
@media screen and (max-width:344.98px) {
  .service_creation_inner>p {
    font-size: 1.2rem;
  }
  .customerVoice_Box {
    margin-top: 20px;
  }
}
@media screen and (max-width:325.98px) {
  .customerVoice_box_txt>p {
    font-size: 1.25rem;
  }
  .customerVoice_box_txt>p:nth-of-type(2) {
    margin-top: 15px;
  }
}
@media screen and (max-width:620.98px) {
 .customerVoice_box_txt {
   bottom: -30%;
 } 
}
@media screen and (max-width:540.98px) {
 .customerVoice_box_txt {
   bottom: -50%;
 } 
}
@media screen and (max-width:480.98px) {
 .customerVoice_box_txt {
   bottom: -70%;
 } 
}
@media screen and (max-width:430.98px) {
 .customerVoice_box_txt {
   bottom: -90%;
 } 
}
@media screen and (max-width:650.98px) {
  .customerVoice_box_txt>p::before {
     top: 10%;
  }
 }
@media screen and (max-width:570.98px) {
  .customerVoice_box_txt>p::before {
     top: 8%;
  }
 }
@media screen and (max-width:375.98px) {
 .customerVoice_box_txt {
   bottom: -100%;
 }
 .customerVoice_box_txt>p::before {
   top: 5%;
   right: 97%;
 }
}
/*=======================*/

/*staff_introduction
=======================*/
/*(PC)*/
.staff_introduction {
  background-color: #f7f7f7;
}
.staff_introduction_inner {
  max-width: 1160px;
  margin: 0 auto;
  padding-top: 60px;
}
.consultation_reservation {
  text-align: center;
  background-color: #194d9d;
  border-radius: 40px;
  color: #fff;
  font-size: 2.2rem;
  padding: 36px 0 50px;
}
.consultation_reservation a {
  margin-top: 40px;
  display: inline-block;
}
.consultation_reservation .title_Txt {
  font-size: 3.2rem;
  margin-bottom: 28px;
  font-weight: bold;
}
.consultation_reservation .title_Txt span {
  color: #ffe851;
  border-bottom: 2px solid #ffe851;
}
.reservation_btn {
  font-size: 2.6rem;
  background-color: #fff;
  border-radius: 20px;
  padding: 14px 87px 14px 50px;
  position: relative;
}
.reservation_btn::after {
  position: absolute;
  content: "";
  width: 17px;
  height: 17px;
  top: 50%;
  right: 11%;
  border-right: 3px solid #194d9d;
  border-bottom: 3px solid #194d9d;
  transform: translateY(-50%) rotate(315deg);
}
.consultation_reservation .annotation_Txt {
  font-size:1.8rem; 
  margin-top: 10px;
}
@media screen and (min-width:768px) {
.reservation_btn {
   transition-duration: .4s; 
  } 
.reservation_btn:hover {
  transform: scale(1.1);
  }
  .reservation_btn:hover p span {
    color: #cc0d21;
  }
}
.reservation_btn p {
  color: #333;
  font-weight: bold;
}
.reservation_btn p span {
  font-size: 3.4rem;
  color: #194d9d;
}
/*(SP)*/
@media screen and (max-width:767.98px) {
  .staff_introduction_inner {
    width: 94%;
  }
  .consultation_reservation {
    font-size: 1.4rem;
    padding: 14px 17px 20px;
  }
  .consultation_reservation a {
      margin-top: 15px;
      width: 80%;
  }
  .consultation_reservation .title_Txt {
    font-size: 1.7rem;
    line-height: 1.6;
    width: 86%;
    margin: 5px auto 10px;
  }
  .reservation_btn {
    font-size: 1.5rem;
    padding: 8px 25px 8px 15px;
    border-radius: 10px;
  }
  .reservation_btn::after {
    width: 13px;
    height: 13px;
    right: 6%;
    border-right: 2px solid #194d9d;
    border-bottom: 2px solid #194d9d;
  }
  .reservation_btn p span {
    font-size: 2.1rem;
  }
  .consultation_reservation .annotation_Txt {
    font-size:1rem; 
    margin-top: 20px;
  }
}
@media screen and (max-width:374.98px) {
  .consultation_reservation {
    font-size: 1.35rem;
    padding: 14px 10px 20px;
    border-radius: 20px;
  } 
  .reservation_btn p span {
    font-size: 2.0rem;
  }
}
@media screen and (max-width:338.98px) {
  .consultation_reservation p:nth-of-type(2) {
    letter-spacing: -1.0px;
  } 
  .reservation_btn {
  padding: 8px 20px 8px 10px;
  }
  .reservation_btn p {
    font-size: 1.4rem;
  }
}
/*=======================*/

/*other_tcArea
=======================*/
.deskOnly {
	display: block;
}
.other_tcArea .contents_inner {
 margin-top: 66px; 
}
.other_tcArea .tcBox_wrap {
	margin-top: 35px;
	padding: 7px 7px 30px 7px;
	overflow: auto;
}
.other_tcArea .tcBox {
	display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin:16px 30px; 
	gap: 30px;
  justify-content: center;
}
.other_tcArea .tcBox .tc_item {
box-shadow: 0 1px 8px 1px rgba(0, 0, 0, .2);
border-radius: 30px;
}
.other_tcArea .tcBox .tc_item_card {
	background: #fff;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
	overflow: hidden;
}
.other_tcArea .tcBox .tc_item_card a {
	color: #333;
  display: inline-block;
}
.other_tcArea .tcBox .tc_item_card .imgBlock {
	text-align: center;
  margin: 22px 22px 4px;
}
.other_tcArea .tcBox .tc_item_card .imgBlock img {
	transition: .3s;
  border-radius: 30px;
}
.other_tcArea .tcBox .tc_item_card .txtBlock {
	padding: 22px 22px 16px 22px;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .tc_name {
	font-size: 2.7rem;
	font-weight: bold;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .tc_career {
	margin-top: 12px;
	font-size: 1.7rem;
    letter-spacing: -.5px;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .tc_introduction {
	margin-top: 12px;
	font-size: 1.7rem;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .infoTxt {
	margin-top: 20px;
	color: #006699;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: right;
	transition: all .2s;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .infoTxt span {
	position: relative;
}
.other_tcArea .tcBox .tc_item_card .txtBlock .infoTxt span::after {
	position: absolute;
    content: '';
    top: 46%;
	left: -15px;
    width: 9px;
    height: 9px;
    border-right: 2px solid #1c7a94;
    border-bottom: 2px solid #1c7a94;
    background: transparent;
    transform: rotate(-45deg) translateY(-46%);
	transition: all .2s;
}
.other_tcArea .tcBox .tc_item .reserveBtn {
    width: 100%;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    padding: 0;
    background: #194d9d;
    border: 2px solid #194d9d;
    transition: all .2s;
}
.other_tcArea .tcBox .tc_item .reserveBtn_disabled {
    width: 100%;
    padding: 7px 45px;
    pointer-events: none;
    color: #333;
    font-size: 1.9rem;
    font-weight: bold;
    text-align: center;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    background: #e5e5e5;
    border: 2px solid #e5e5e5;
    transition: all .2s;
}
.other_tcArea .tcBox .tc_item .reserveBtn a {
	position: relative;
  display: inline-block;
  width: 100%;
	padding: 7px 45px 7px 25px;
	color: #fff;
	font-size: 1.9rem;
	font-weight: bold;
    text-align: center;
	transition: all .2s;
}
.other_tcArea .tcBox .tc_item .reserveBtn a::after {
	position: absolute;
    content: '';
    top: 46%;
    right: 22px;
    width: 12px;
    height: 12px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    background: transparent;
    transform: rotate(-45deg) translateY(-46%);
	transition: all .2s;
}

@media (min-width: 768px) {
	.other_tcArea .tcBox .tc_item {
		max-width: 340px;
	}
	.other_tcArea .tcBox .tc_item_card a:hover img {
		opacity: .8;
		transform: scale(1.1);
    	transition: .3s;
	}
	.other_tcArea .tcBox .tc_item_card a:hover .infoTxt {
		color: #cc0d21;
	}
	.other_tcArea .tcBox .tc_item_card a:hover .txtBlock .infoTxt span::after {
		border-right: 2px solid #cc0d21;
		border-bottom: 2px solid #cc0d21;
	}
	.other_tcArea .tcBox .tc_item .reserveBtn:hover {
		background: #fff;
		border: 2px solid #194d9d;
		transition: all .2s;
	}
	.other_tcArea .tcBox .tc_item .reserveBtn:hover a {
		color: #194d9d;
		transition: all .2s;
	}
	.other_tcArea .tcBox .tc_item .reserveBtn:hover a::after {
		border-right: 3px solid #194d9d;
		border-bottom: 3px solid #194d9d;
		transition: all .2s;
	}
	.other_tcArea .tcBox .tc_item .reserveBtn a {
		letter-spacing: -.5px;
	}
  .contents_inner>p>a:hover {
    color: #cc0d21;
    text-decoration: none;
  }
}

@media (max-width: 767.98px) {
	.other_tcArea {
		padding: 0 0 50px;
	}
  .other_tcArea .contents_inner {
    margin-top: 57px;
  }
	.other_tcArea h2 {
		font-size: 2.2rem;
    margin: 0;
    margin-bottom: 28px;    
	}
	.other_tcArea .tcBox_wrap {
		margin-top: 0;
	}
	.other_tcArea .tcBox {
		gap: 13px;
    margin: 0;
    grid-template-columns: auto;
	}
	.other_tcArea .tcBox .tc_item {
		width: 100%;
    border-radius: 15px;
	}
	.other_tcArea .tcBox .tc_item_card {
		background: #fff;
		border-top-left-radius: 15px;
    border-top-right-radius: 15px;
	}
	.other_tcArea .tcBox .tc_item_card .txtBlock {
		padding: 12px;
	}
  .other_tcArea .tcBox .tc_item_card .imgBlock img {
  border-radius: 15px;
}
	.other_tcArea .tcBox .tc_item_card .txtBlock .tc_name {
		font-size: 2.7rem;
	}
	.other_tcArea .tcBox .tc_item_card .txtBlock .tc_career {
		margin-top: 7px;
		line-height: 1.4;
		font-size: 1.6rem;
		letter-spacing: -.5px;
	}
  .other_tcArea .tcBox .tc_item_card .txtBlock .tc_career br {
    display: none;
  }
	.other_tcArea .tcBox .tc_item_card .txtBlock .tc_introduction {
		margin-top: 7px;
		line-height: 1.4;
		font-size: 1.4rem;
	}
	.other_tcArea .tcBox .tc_item_card .txtBlock .infoTxt {
		margin-top: 12px;
		font-size: 1.5rem;
	}
	.other_tcArea .tcBox .tc_item_card .txtBlock .infoTxt span::after {
		top: 43%;
		left: -12px;
		width: 7px;
		height: 7px;
		transform: rotate(-45deg) translateY(-43%);
	}
  .other_tcArea .tcBox .tc_item .reserveBtn {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}
.other_tcArea .tcBox .tc_item .reserveBtn_disabled {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}
	.other_tcArea .tcBox .tc_item .reserveBtn a {
		padding: 7px 28px 7px 15px;
		line-height: 1.4;
		font-size: 1.6rem;
	}
  .other_tcArea .tcBox .tc_item .reserveBtn a br {
    display: none;
  }
	.other_tcArea .tcBox .tc_item .reserveBtn a::after {
		right: 18px;
	}
  .other_tcArea .tcBox .tc_item .reserveBtn_disabled {
		padding: 7px 28px 7px 15px;
		line-height: 1.4;
		font-size: 1.6rem;
	}
}
.contents_inner>p {
  font-size: 2rem;
  line-height: 1.75;
  text-align: center;
  margin-top: 60px
}
.contents_inner>p + p {
  margin-top: 10px;
  font-size: 1.8rem;
  color: #cc0d21;
}
.contents_inner>p>a {
  color: #194d9d;
  font-weight: bold;
  text-decoration: underline;
}

@media screen and (max-width:767.98px) {
  .contents_inner>p {
     font-size: 1.3rem;
     width: 94%;
     margin: 0 auto;
  }
  .contents_inner>p + p {
  margin-top: 4px;
  font-size: 1.2rem;
}
}
/*contact_LookJTBDesk
=======================*/
/*(PC)*/
.contact_LookJTBDesk {
  max-width: 1160px;
  margin: 0 auto;
}
.contact_LookJTBDesk h4 {
  font-size: 3.0rem;
  font-weight: bold;
  position: relative;
  padding-left: 26px;
  margin: 0;
  margin-top: 70px;
  color: #333;
}
.contact_LookJTBDesk h4::before {
  position: absolute;
  content: "";
  width: 15px;
  height: 15px;
  background-color: #194d9d;
  border-radius: 50%;
  left: 0;
  top: 50%;
  transform: translateY(-50%)
}
.contact_address {
  display: flex;
  align-items: baseline;
  padding-left: 26px;
}
.contact_address .telephone {
  font-size: 4.2rem;
  font-weight: bold;
  color: #174791;
  margin-right: 30px;  
}
.contact_address .data {
  font-size: 1.8rem;
  color: #333;
}
.navigation_dial {
  background-color: #f7f7f7;
}
.navigation_dial_inner {
  padding: 30px 30px 40px 26px;
  margin: 7px 0 50px;;
}
.navigation_dial h5 {
  font-size: 2.4rem;
  font-weight: bold;
  color: #333;
  margin: 0;
  position: relative;
}
.navigation_dial h5::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 2px;
  bottom: -4px;
  left: 0;
  background: #ccc;
}
.navigation_dial_inner>p {
  font-size: 1.8rem;
  color: #333;
  margin: 10px 0 23px
}
.navigation_dial ul {
  display: flex;
  justify-content: space-between;
}
.navigation_dial li {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background-color: #e5e5e5;
  border-radius: 24px;
}
.navigation_dial li>p {
  font-size: 1.8rem;
  color: #333;
  padding: 8px 80px 8px 20px;
}
.navigation_dial li .num {
  font-size: 2.0rem;
  color: #333;
  background-color: #fff;
  border: 3px solid #e5e5e5;
  border-radius: 24px;
  padding: 4px 38px;
}
.banner_List {
  display: flex;
  justify-content: space-between;
  padding-bottom: 25px;
}
.banner_List a {
  display: block;
}
@media screen and (min-width:768px) {
 .banner_List a:hover {
  opacity: .7;
  }
}
@media screen and (min-width:768px){
  .banner_List a img {
    width: 560px;
  }
}
/*(SP)*/
@media screen and (max-width:767.98px) {
  .contact_LookJTBDesk {
    width: 94%;
  }
  .contact_LookJTBDesk h4 {
    font-size: 1.8rem;
    padding-left: 20px;
  }
  .contact_LookJTBDesk h4::before {
    width: 12px;
    height: 12px;
  }
  .contact_address {
    flex-direction: column;
    padding-left: 20px;
  }
  .contact_address .telephone {
    font-size: 2.1rem;
    margin-right: 0;
  }
  .contact_address .data {
    font-size: 1.1rem;
  }
  .navigation_dial_inner {
    padding: 15px 12px 20px 12px;
    margin: 16px 0 30px;
  }
  .navigation_dial ul {
    flex-direction: column;
    margin: 0 auto;
    width: 83%;
  }
  .navigation_dial h5 {
    font-size: 1.4rem;
  }
  .navigation_dial_inner>p {
    font-size: 1.2rem;
    letter-spacing: -1.0px;
  }
  .navigation_dial li {
    justify-content: space-between;
  }
  .navigation_dial li:not(:first-of-type) {
    margin-top: 10px;
  }
  .navigation_dial li>p {
    font-size: 1.2rem;
    padding-left: 13px;
    padding-right: 0;
  }
  .navigation_dial li .num {
    font-size: 1.5rem;
    padding: 4px 30px;
  }
  .banner_List {
    flex-direction: column;
  }
  .banner_List a:nth-of-type(2) {
    margin-top: 11px;
  }
}
@media screen and (max-width:352.98px) {
  .contact_LookJTBDesk h4 {
    font-size: 1.6rem;
  }
  .contact_address .telephone {
    font-size: 2.0rem;
  }
}
/*=======================**/

/*pageTopBtn
=======================*/
.pageTopBtn {
	display: inline-block;
  width: 52px;
  /*left: calc(100vw - 5em);*/
	left: 93%;
	position: sticky;
	bottom: 30px;
	text-align: right;
	opacity: 0;
	z-index: 10;
}
.pageTopBtn_inner {
	margin: auto;
}
.pageTopBtn a {
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 52px;
  height: 52px;
	background: #194d9d;
  border-radius: 50%;
  box-shadow: 0 3px 10px rgb(0 0 0 / 16%);
	cursor: default;
}
.pageTopBtn a:before {
  content: "";
  position: absolute;
  z-index: 10;
  top: 55%;
  left: 50%;
  width: 20px;
  height: 20px;
  border-style: solid;
  border-color: #fff;
  border-width: 2px 0 0 2px;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: border-color ease 0.1s;
}
.pageTopBtn.-show {
	opacity: 1;
}
.pageTopBtn.-show a {
	cursor: pointer;
}
.pageTopBtn.-transition500 {
	transition: .2s ease;
}

@media screen and (min-width:768px) {
	.pageTopBtn a:hover {
		background: #194d9dbf;
	}
}

@media screen and (max-width:767.98px) {
	.pageTopBtn a {
		width: 45px;
    height: 45px;
	}
	.pageTopBtn a:before {
		width: 16px;
    height: 16px;
	}
}
/*=====================*/


.scroll-hint-icon {
	z-index: 5;
}


.ebook_box .prep_dp{
padding-left: 0;
justify-content: center;
pointer-events: none;
background-color: #d7d7d7;
}
.ebook_box .prep_dp::before{
display:none;
}
@media screen and (max-width: 767px) {
.ebook_box .prep_dp{
font-size: 1.8rem;
}
.menuNav .navItem, .menuNav .navItem.narrow {
width: calc(100% / 2);
}
}

/*アコーディオン
====================*/
p {
  margin: 0;
}
ul {
  padding: 0;
}
li {
  list-style: none;
}
.Main__content {
  max-width: 1160px;
  margin: 0 auto;
  padding: 50px 0!important;
}
.explanationBlock {
  max-width: 700px;
  margin: 0 auto 50px;
  padding: 15px;
  border-radius: 10px;
  box-shadow: 0 1px 2px 2px rgba(0, 0, 0, .1);
}

@media print, screen and (min-width: 768px) {}

@media print, screen and (max-width: 767.98px) {
.Main__content {
  padding: 50px 10px!important;
}
}  
/*==================*/
/*要コピペ箇所（余白や色合いは好きに変えていただいてOK）
class名も変えてもらってOKだが、.activeはjsと連動しているため必須
====================*/
.accordionBlock {
  max-width: 900px;
  margin: 10px auto 0;
}
.accordionBlock .accordionItem {
  border-bottom: 1px solid #ddd;
}
.accordionBlock .accordionItem:first-of-type {
  border-top: 1px solid #ddd;
}
.accordionTitle {
  padding: 7px 43px 0 10px;
  cursor: pointer;
  transition: .3s;
  font-size: 1.8rem;
  font-weight: bold;
  color: #000;
  width: 800px;
}
.accordionQuestion.active {
  transition: .3s;
}
.accordionTitle::before,
.accordionTitle::after {
  content: "";
  display: block;
  position: absolute;
  width: 25px;
  height: 2px;
  background-color: #194d9d;
  border-radius: 5px;
  top: 36px;
  right: 10px;
  bottom: 0;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.accordionTitle::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.accordionQuestion.active .accordionTitle::after {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.accordionQuestion {
  display: flex;
  position: relative;
  padding: 18px 0;
}
.accordionQuestion img {
  width: 40px;
  height: 40px;
}
.accordionContent {
  max-height: 0;
  color: #7e7e7e;
  font-size: 1.2rem;
  transition: max-height 0.3s ease;
  overflow: hidden;
}
.accordionContent_inner {
  padding: 15px 20px 15px 0;
  font-size: 1.8rem;
  color: #194d9d;
  font-weight: 500;
  
}
.accordionContent a {
  text-decoration: underline;
}
.accordionAnser {
  display: flex;
}
.accordionAnser img {
  width: 40px;
  height: 40px;
}
.accordionAnser p {
  padding: 7px 0 0 10px;
  width: 800px;
}
@media screen and (max-width:767.98px) {
  .accordionContent_inner {
    padding: 0 10px 15px 0;
  }
  .accordionBlock .accordionItem {
    font-size: 1.4rem;
  }
  .accordionTitle {
    padding: 3px 0 0 10px;
  }
  .accordionTitle::before,
  .accordionTitle::after {
    width: 15px;
    height: 2px;
  }
  .accordionBlock {
    margin-top: 0;
  }
  .FAQ {
    margin: 0;
    margin-top: 25px;
  }
  .accordionTitle {
    font-size: 1.5rem;
    width: 84%;
  }
  .accordionAnser p {
    font-size: 1.3rem;
    padding: 5px 0 0 11px;
    width: 84%;
  }
  .accordionQuestion img {
    width: 30px;
    height: 30px;
  }
  .accordionAnser img {
    width: 30px;
    height: 30px;
  }
  .accordionTitle::before,
  .accordionTitle::after {
    top: 32px;
  }  
}
@media screen and (max-width:374.98px) {
  .accordionTitle {
    font-size: 1.4rem;
  } 
  .accordionQuestion img ,.accordionAnser img {
    width: 27px;
    height: 27px;
  }
}
@media screen and (max-width:354.98px) {
 .accordionTitle {
   font-size: 1.25rem;
   padding-left: 5px;
 }
 .accordionAnser>p {
   padding-left: 5px; 
   font-size: 1.2rem;
 }
.accordionQuestion img ,.accordionAnser img {
    width: 25px;
    height: 25px;
  } 
}
@media screen and (min-width:768px) {
  .accordionQuestion:hover .accordionTitle {
    color: #cc0d21;
  }
}

