@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');


/*アンカーリンク調整用*/
:root{  
 scroll-padding-top: 80px
}
@media (max-width: 820px) {
  :root{  
   scroll-padding-top: 65px
  }
}/*-SP tablet-*/

/*作業用*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
@media (min-width: 821px) {
.sp { display: none !important; }
}

#onetrust-banner-sdk{
  display: none;
}
/*
#Content_feature * {
  font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}*/
#Content_feature{
	position: relative;
 margin-bottom: 0;
}


#Content_feature .article_inner{
	margin: 0 auto;
	max-width: 1200px;
}


/*重なり調整*/
#gfoot{
  z-index: 2;
}
/**/
#Content_feature .inner{
  margin: 0 auto;
  max-width: 802px;
}
@media (max-width: 820px) {
	#Content_feature .inner{
    max-width: calc(100vw*304/375);
 		margin: auto;
	}
}/*-SP tablet-*/
@media (max-width: 390px) {
	#Content_feature .inner{
	}
}/*-SP-*/
#Content_feature .flex{
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
@media screen and (min-width: 821px){
#Content_feature .pcFlex{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
  /*justify-content: space-between;*/
	flex-wrap: wrap;
}
}/*-PC only-*/

@media (max-width: 820px) {
#Content_feature .article_inner > div{
	margin-left: auto;
	margin-right: auto;
}
}/*-SP tablet-*/

/* mainvisual */

/*article_inner*/
.article_inner{
  max-width: 1000px;
}

/* content_box */
.content_box{
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (max-width: 820px) {
  .content_box{
    padding: 40px 10px;
  }
}/*-SP tablet-*/
@media screen and (min-width: 821px){
}/*-PC only-*/


/*		mainvisual
-----------------------------*/
#mainvisual{
}
#mainvisual .mv_inner{
  position: relative;
  margin: 0 auto 100px;
    max-width: 1100px;
}
#mainvisual .mv_btn{
  position: absolute;
  top: calc(4.6vw + 50%);
  left: min(5.7vw,74px);
  width: min(28vw,365px);
  height: min(28vw,365px);
  transform: translateY(-50%);
}
#mainvisual .mv_btn a{
  display: block;
}
@media (max-width: 820px) {
#mainvisual .mv_inner{
  position: relative;
  margin: 0 auto 100px;
    max-width: 1100px;
}
  #mainvisual .mv_btn{
    top: 72vw;
    right: -5vw;
    left: auto;
    width: 64vw;
    height: 64vw;
    transform: translateY(0);
  }
}/*-SP tablet-*/
@media screen and (min-width: 1300px) {
  #mainvisual .mv_btn{
    top: calc(60px + 50%);
  }
}/* //end for PC */


/*		common
-----------------------------*/

/**/
span.txtNarrow {
  letter-spacing: -0.1em;
}

.flex {
  display: flex;
}

.txtCenter {
  text-align: center;
}

@media (max-width: 820px) {
  #Content_feature .article_inner {
    width: 84.6vw;
  }  
}/*-SP tablet-*/


/*		bookinfo
-----------------------------*/
#bookinfo{
    background: #C7E6EA url(images/bg_strype.svg) repeat;
background-size: 21px auto;
  padding: min(18.46vw, 107px) 0;
}
#bookinfo h2{
  margin-bottom: min(10vw, 75px);
  text-align: center;
}
#bookinfo h2 span{
  font-size: 0;
}
#bookinfo h2 img{
  width: min(70.62vw, 959px);
}
#bookinfo .bookinfoLead{
  background: #fff;
  max-width: 1000px;
  padding: min(6.92vw, 26px) min(6.92vw, 32px);
  border-radius: 10px;
  font-size: min(46.15vw, 18px);
  margin: 0 auto;
  margin-bottom: min(16.66vw, 70px);
}
#bookinfo ul.flex{
  justify-content: center;
  gap: 60px min(10.2vw, 102px);
}
#bookinfo li{
  width: min(40vw, 400px);
}
#bookinfo li h3{
  margin-bottom: 0;
  margin: 0 auto;
  max-width: 160px;
  text-align: center;
}
#bookinfo li h3 span{
  display: inline-block;
  background: #CABB8F;
  min-width: 155px;
  padding: 4px 0;
  border-radius: calc(infinity * 1px);
  font-size: min(7.18vw, 24px);
  color: #000000;
}
#bookinfo li figure{
  margin-top: min(10.26vw, 50px);
  text-align: center;
}
#bookinfo li figure img{
  margin: 0 auto;
  width: 100%;
}
#bookinfo li figcaption{
  font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', 'Yu Mincho', YuMincho, 'MS Mincho', serif;
  margin-top: min(8.46vw, 44px);
  font-size: min(7.18vw, 28px);
  font-weight: 700;
  color: #1F2D30;
}
#bookinfo li p{
  font-family: 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN','Yu Gothic', YuGothic, Meiryo, sans-serif;
  margin-top: min(4.1vw, 16px);
  font-size: min(4.1vw, 16px);
  font-weight: 500;
  color: #1F2D30;
}
#bookinfo li .writername{
  font-family: 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN','Yu Gothic', YuGothic, Meiryo, sans-serif;
  margin-top: min(8.46vw, 44px);
  font-size: min(5.64vw, 22px);
  font-weight: 500;
  color: #1F2D30;
  position: relative;
  display: block;
  margin-bottom: 1.5em;
  text-align: center;
}
#bookinfo li .writername:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #1F2D30;
  border-radius: 2px;
}
@media (max-width: 820px) {
  #bookinfo .bookinfoLead{
    margin-right: max(-2.56vw, -10px);
    margin-left: max(-2.56vw, -10px);
  }
  #bookinfo li{
    width: min(100%, 400px);
  }
}/*-SP tablet-*/
@media screen and (min-width: 821px) {

}/* //end for PC */



/*		trialLink
-----------------------------*/
.trialLink{
  background: transparent;
  /*margin-bottom: 20px;*/
  padding: 10rem 0 0;
  box-sizing: content-box;
}
.trialLink a{
  max-width: 400px;
  pointer-events: none;
  position: relative;
  background: #2189AC;
  display: block;
  width: min(100%, 642px);
  margin: 0 auto;
  padding: 7px;
  color: #fff;
  text-align: center;
}
.trialLink a:hover{
  opacity: 0.8;
}
.trialLink a span{
  display: grid;
  place-content: center;
  background: #2189AC;
  padding: min(5vw, 20px) min(3.5vw, 15px) min(5vw, 20px) min(1vw, 15px);
  border: 1px solid #fff;
  font-size: min(6.15vw, 32px);
  font-weight: 600;
}
@media (max-width: 820px) {
}/*-SP tablet-*/


/* PC: 左に画像(437px) / 右にテキスト(550px) */
@media (min-width: 821px) {
  .mainvisual {
    display: flex;
    align-items: center;
    gap: 0 60px;
    max-width: 1000px;
    margin: 0 auto;
    margin-bottom: 100px;
  }
 
  .mainvisual__image {
    flex: 0 0 437px;
  }
 
  .mainvisual__text {
    flex: 0 0 550px;
   font-size: 20px;
   font-family: 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN','Yu Gothic', YuGothic, Meiryo, sans-serif;
  }
}
 
/* SP: 上に画像 / 下にテキスト */
@media (max-width: 820px) {
  .mainvisual {
    display: flex;
    flex-direction: column;
  }
 
  .mainvisual__image,
  .mainvisual__text {
    width: 100%;
   font-size: 18px;
    margin-bottom: 60px;
  }
  .mainvisual__image {
  }
}
 
/* 画像 */
.mainvisual__image img {
  display: block;
  width: 100%;
  height: auto;
}

.mainvisual__text img {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 25px !important;
}