/*
Theme Name: AFFINGER Child
Template: affinger
Description: AFFINGER6 対応
Version: 20240601
*/
html{
	scroll-behavior: smooth;
}
/* 共通スタイル */
 a{
	 text-decoration: underline;
}
body{
	margin: 0;
	  font-family: "Noto Sans JP", sans-serif;
}
/* .sp-br{
	display: none;
} */
.shake-button {
  /* アニメーションを適用 */
  animation: shake 2s infinite;
  /* 他のスタイル */
  font-size: 16px;
  cursor: pointer;
}

@keyframes shake {
  /* 最初の1秒間振動 */
  0% { transform: translate(0, 0); }
  1%, 2% { transform: translate(-5px, 0); }
  3%, 4% { transform: translate(5px, 0); }
  5%, 6% { transform: translate(-5px, 0); }
  7%, 8% { transform: translate(5px, 0); }
  9%, 10% { transform: translate(-5px, 0); }
  11%,12% { transform: translate(5px, 0); }
  13%,14% { transform: translate(-5px, 0); }
  15%,16% { transform: translate(5px, 0); }
  /* 残りの2.5秒間は静止 */
 16.01%, 100% { transform: translate(0, 0); }
}

.st-hide{
	display: none;
}
#breadcrumb{
	display: none;
}

/* ヘッダー背景 */
#headbox-bg.st-header-fixed, #headbox-bg {
    background: #ffffff;
    background: url("https://beikokusai.jp/wp-content/uploads/2024/11/9466631.png"), -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 100%);
    background: url("https://beikokusai.jp/wp-content/uploads/2024/11/9466631.png"), linear-gradient(to bottom,  #ffffff 0%,#ffffff 100%);
    background-position: left center;
}
#headbox {
    padding: 15px 10px;
    margin: 0 auto;
    text-align: left;
}
#headbox-bg {
    width: 100%;
    box-sizing: border-box;
}
#headbox {
    max-width: 1060px;
}
#headbox-bg {
    width: 100%;
    box-sizing: border-box;
}
header .sitename a, nav li a {
	    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700 !important;
    color: #f4810b;
	text-decoration: none;
	    font-size: 20px;
}
#st-headwide #headbox {
    display: flex;
    justify-content: center;
    text-align: center;
}


/* 回答グループ全体に対するスタイル */
.answer-group {
    position: relative;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

/* 折りたたみ時のスタイル */
.answer-group.collapsed {
    max-height: 200px; /* 必要に応じて調整 */
}

.answer-group.collapsed::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 75px; /* 必要に応じて調整 */
    background: linear-gradient(transparent, #fff);
    pointer-events: none;
}

/* 展開時のスタイル */
.answer-group.expanded {
    max-height: none;
}

.answer-group.expanded::after {
    display: none;
}

/* 「続きを見る」ボタンのスタイル */
.read-more-text {
  display: block;
  margin: 10px auto;
  text-align: center;
  color: #1a1a1a;;
  cursor: pointer;
  font-size: 16px;
  padding: 10px 0;
}

.read-more-text:hover {
  text-decoration: underline;
  background-color: #f0f0f0;
}

/* よくある質問 */
#st-mobile-logo a{
	font-family: "Noto Sans JP", sans-serif;
    font-weight: 700 !important;
    color: #f4810b;
    text-decoration: none;
    font-size: 20px;
}

.l-container {
    width: 100%;
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
}
/* .p-voice {
  padding-top: 106px;
  padding-bottom: 121px;
} */
	.c-section__title {
    font-family: var(--gaia-section-title-font-family, "Shippori Mincho", serif);
    color: #A57123;
    font-weight: var(--gaia-section-title-font-weight, 400);
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    padding-bottom: 7px;
    border-bottom: 1px solid #A57123;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: auto;
    margin-left: auto;
}
.p-voice__title {
  margin-bottom: 27px;
}


.p-voice__text {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
  font-weight: 350;
  text-align: center;
  margin-bottom: 55px;
}
.p-voice__letter img{
	width: 100%;
}

.p-voice__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 25px 0;
	margin-top: 2em;
  margin-bottom: 83px;
}

.p-voice__block {
  width: 49%;
  min-height: 139px;
}
.p-voice__block:last-child{
	margin: 0 auto;
}

.p-voice__block__title {
  font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
  font-weight: 350;
  line-height: 1.5;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 15px;
  position: relative;
}

.p-voice__block__title:before {
  content: "";
  display: block;
  background: url(../images/top/202403/fukidashi.svg) no-repeat center/contain;
  width: 26px;
  height: 25px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(calc(-100% - 8px));
  transform: translateX(calc(-100% - 8px));
}

.p-voice__block__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  position: relative;
}

.p-voice__block__text:before,
.p-voice__block__text:after {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  color: #DBB866;
  font-size: 38px;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  top: -5px;
}

.p-voice__block__text:before {
  content: "“";
  left: 0;
  -webkit-transform: translateX(calc(-100% - 6px));
  transform: translateX(calc(-100% - 6px));
}

.p-voice__block__text:after {
  content: "”";
  right: 0;
  -webkit-transform: translateX(calc(100% + 6px));
  transform: translateX(calc(100% + 6px));
}

.p-voice__block__button {
  font-size: inherit;
  appearance: none;/* for iPhone */
  -webkit-appearance: none;/* for iPhone */
  color: #1A140B;/* for iPhone */
  background: #F1ECDE;
  width: 100%;
  margin: 0 auto;
  padding: 33px 0 44px;
  border: 0;
  outline: none;
  position: relative;
  text-align: center;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.p-voice__block__button:after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  border-top: 3px solid #A09A91;
  border-right: 3px solid #A09A91;
  position: absolute;
  bottom: 17px;
  left: 50%;
  transform: translateX(-50%) rotate(135deg);
  transition: .1s;
}

.p-voice__block:has(.open) .p-voice__block__button:after {
  transform: translate(-50%, 50%) rotate(-45deg);
}

.p-voice__detail {
  color: #fff;
  background: #A69F8B;
  padding: 0;
  overflow: hidden;
  height: 0;
  transition: .25s;
}
 .p-voice__detail__pic img{
		width: 100%;
	}

.p-voice__detail.open {
  height: auto;
}

.p-voice__detail__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  padding: 30px;
	margin: 0;
	text-align: justify;
}
.right-text{
	display: inline-block;
  text-align: right;
  float: right;
	padding-bottom: 30px;
}
/* .v1{
	order: 1;
}
.v2{
	order: 4;
}
.v3{
	order: 6;
}
.v4{
	order: 5;
}
.v5{
	order: 8;
}
.v6{
	order: 7;
}
.v7{
	order: 10;
}
.v8{
	order: 11;
}
 .v9{
	order: 4;
} 
.v10{
	order: 2;
}
.v11{
	order: 4;
}
.v12{
	order: 12;
}
.v13{
	order: 9;
}
.v14{
	order: 14;
}
.v15{
	order: 3;
} */
.c-section {
  padding-left: 4rem;
  padding-right: 4rem;
  overflow: clip;
}
.fadeup {
    opacity: 1;
}
.fadeup.on {
    animation-name: gaia-fadeUp;
    animation-duration: .6s;
    animation-fill-mode: forwards;
    opacity: 1;
}
.button-4 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    margin:2em auto;
    padding: .9em 2em;
    border: none;
    border-bottom: solid 5px #00943E;
    border-radius: 5px;
    background-color: #07C655;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
    transition: .5s ease;
	cursor: pointer;
}

.button-4::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-4:hover {
    transform: translateY(3px);
    border-bottom-width: 2px;
}


/* footer */
footer {
        max-width: 1060px;
        margin: 0 auto;
    }
#footer-wrapper {
    padding: 20px 15px;
    text-align: center;
}
#footer-wrapper {
    max-width: 100%;
    background: #ffffff;
    background: url("https://beikokusai.jp/wp-content/uploads/2024/11/9466631.png"), -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 100%);
    background: url("https://beikokusai.jp/wp-content/uploads/2024/11/9466631.png"), linear-gradient(to bottom,  #ffffff 0%,#ffffff 100%);
}
#footer-wrapper {
    padding: 20px 15px;
    text-align: center;
	    background-position: center bottom;
    background-size: cover;
}
#footer .footerlogo {
    font-size: 22px;
    line-height: 30px;
    font-weight: bold;

}
#footer .footerlogo a{
		color: #f4810a;
	text-decoration: none;
}
 .footer {
	padding-bottom: 30px;
}

.footer-content {
	width: 960px;
	margin: 0 auto;
	padding: 60px 0 0;
}

.footer-logo {
	width: 325px;
	margin: 0 0 20px;
}

.footer-navi {
	width: 100%;
	/* padding: 30px 0px 0; */
	margin: 40px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	align-items: center;
}


.footer-navi-map iframe{
	height: 250px;
    width: 100%;
}

.footer-navi-box {
	padding-right: 25px;
	flex: 0.9;
}

.footer-navi-title {
	padding: 0;
	font-size: 18px;
	font-family: "garamond-premier-pro", serif;
	border-bottom: none;
	letter-spacing: 1px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	align-items: center;
}

.footer-navi-title span {
	margin-right: 2%;
}

.footer-navi-title.open .plus:after {
	-moz-transform: translate(-50%, -50%) rotate(90deg);
	-ms-transform: translate(-50%, -50%) rotate(90deg);
	-webkit-transform: translate(-50%, -50%) rotate(90deg);
	transform: translate(-50%, -50%) rotate(90deg);
}

.footer-navi-title .plus {
	width: 100%;
	height: 1px;
	display: inline-block;
	position: static;
}

.footer-navi-items {
	width: 100%;
	display: block;
}

.footer-navi-items li {
	width: 130px;
	font-size: 13px;
	border-bottom: none;
	position: relative;
	display: inline-block;
}

.footer-navi-items li:after {
	content: '\f105';
	color: #b5a789;
	font-family: 'icon';
	position: absolute;
	top: 50%;
	right: auto;
	left: 0;
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.footer-navi-items a {
	padding: 8px 0 8px 10px;
}

.footer-navi .footer-navi-box:nth-of-type(1) li {
	min-width: fit-content;
	width: 135px;
}

.footer-navi .footer-navi-box:nth-of-type(2) li {
	width: 130px;
}

.footer-navi .footer-navi-box:nth-of-type(3) li {
	width: 70px;
}

.footer-sub {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.footer-sns {
	margin-bottom: 20px;
}
.copyr{
	color: #f4810a;
	margin: 0;
}
small {
    font-size: 80%;
}
.st-text-logo-bottom:last-child, .st-text-logo-bottom {
	margin-top: 0;
    margin-bottom: 10px;
}

/* 新R25風 */
.post-177, .post-153 {
	color: #1a1a1a;
}
.post-177 p, .post-153 p{
	font-size: 18px ;
		text-align: justify;
	line-height: 1.7;
}
body:is(.page-id-177, .page-id-153) .h2modoki,
body:is(.page-id-177, .page-id-153) .post h2:not([class^="is-style-st-heading-custom-"]):not([class*=" is-style-st-heading-custom-"]):not(.st-css-no){
    position: relative;
    padding: 1em 1em 1em 1.3em;
    padding-top: 10px!important;
    padding-bottom: 10px!important;
    color: #1a1a1a !important;
	background: #FDEAE9 !important;
	border: none !important;
	margin-top: 4em;
	margin-bottom: 2.5em;
}

body:is(.page-id-177, .page-id-153) .h2modoki::after,
body:is(.page-id-177, .page-id-153) .post h2:not([class^="is-style-st-heading-custom-"]):not(.st-css-no)::after{
	display: contents;
}
/*     background: url(""), -webkit-linear-gradient(top,  #fff 0%,#fffefa 100%);
 */

.page-id-153 .wrapper{
	margin-top: 48px;
}
.post-177 .st-kaiwa-box .st-kaiwa-face img, .post-153 .st-kaiwa-box .st-kaiwa-face img,
.post-177 .st-kaiwa-box .st-kaiwa-face2 img, .post-153 .st-kaiwa-box .st-kaiwa-face2 img,
.post-177 .st-kaiwa-box .st-kaiwa-face3 img, .post-153 .st-kaiwa-box .st-kaiwa-face3 img,
.post-177 .st-kaiwa-box .st-kaiwa-face4 img, .post-153 .st-kaiwa-box .st-kaiwa-face4 img{
	border-radius: 50%;
}
.page-id-153 .st-kaiwa-box{
	margin-bottom: 32px;
} 
.last-kaiwa{
	margin-top: 6em;
}
.kaiwa-img{
	margin-top: 3em;
}
.unli{
	background-image: linear-gradient(#0000 80%, #f8e71c 0);
}
.fwb{
	font-weight: 800;
}


.btn-t{
	display: block; 
	text-align: center;
	margin-bottom: 0.2em;
}
.skill-list{
	border: 2px solid #F6BA08;
	background: #FFFBF2;
	padding: 1.25rem;
	border-radius: 0.75em;
}
.skill-list span{
		font-size: 14px;
}
.wp-block-image figcaption,.wp-element-caption{
	text-align: left !important;
}
.st-kaiwa-box .st-kaiwa-face img{
	border-radius: 10px;
}
.st-kaiwa-box .st-kaiwa-face2 img{
	border-radius: 10px;
}
.mark{
 
    background:linear-gradient(transparent 70%, #f8e71c 70%);
 
}
.st-kaiwa-hukidashi{
	background-color: #f5f5f5;
}

.st-kaiwa-hukidashi2{
	background-color: #f5f5f5;
	padding: 15px;
}
.w-600{
	max-width: 600px;
	width: 100%;
	margin: auto;
}
.w-300{
	max-width: 300px !important;
	width: 100%;
}
.page-id-153  .st-mybtn.wp-block-st-blocks-my-button{
	width: 100%;
}
/*media Queries PCサイズ（960px）以上で適応したいCSS - PCのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (min-width: 960px) {

.st-kaiwa-hukidashi2{
	padding: 15px 20px !important;
}
 .is-sp {
    display: none ;
}
/* しんR25風 */
.page-id-153  .st-mybtn.wp-block-st-blocks-my-button{
		max-width: 480px;
	width: 100%;
		border-radius:  3.40282e+38px;
	}
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media{
		max-width: 130px;
		margin: auto;
		
	}
	.cardh2{
/* 		font-size: 16px !important; */
		line-height: 1;
		padding: 15px　;
	}
	.w-600{
	max-width: 600px;
	width: 100%;
}
	
	

	/*-- ここまで --*/
}

/* line用HP */
.t-flexbox{
	display: flex;
}
.book-txt{
	padding: 1em;
}
.book-ttl{
	font-size: 21px;
}
.amazon-btn{
	display: block;
	background: #f6a306;
    width: 90px;
    text-align: center;
    margin-left: 40px;
    padding: 5px;
    border-radius: 2px;
    border: none;
    box-shadow: 0 6px 12px -5px rgba(0, 0, 0, .3);
	color: #fff;
	font-weight:700;
	text-decoration: none;
}
.t-flexitem{
	margin-left: 1em;
}
.tab-2{
	margin-top: 4em;
}
	.st-mybox-title{
		font-size: 24px;
	}

/*media Queries スマートフォンとタブレットサイズ（959px以下）で適応したいCSS - スマホ・タブレット
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 959px) {
	.st-mybox{
		padding: 0 5px;
	}
	.st-mybox-title{
		font-size: 20px;
	}
	.st-tab-content > label{
		font-size: 16px !important;
	}
		.st-mybtn.wp-block-st-blocks-my-button{
			width: 100%;
		border-radius: 10px;
	}

	header .sitename a, nav li a {
	    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700 !important; 
}

 .st-mobile-logo{
		color: #f4810b;
	text-decoration: none;
	    font-size: 20px;
	}
	.p-voice__container {
    flex-direction: column;
    justify-content: flex-start;
    gap: 2em;
    margin-bottom: 41px;
		padding: 10px;
}

	 .c-section {
        padding-left: 0;
        padding-right: 0;
    }

	.p-voice__block {
    width: 100%;
    height: unset;
}
	.p-voice__block__title {
    font-size: 13px;
  }

  .p-voice__block__title:before {
    width: 18px;
    height: 17px;
    transform: translateX(calc(-100% - 8px));
  }

  .p-voice__block__text {
    font-size: 20px;

  }


  .p-voice__block__text:before {
    transform: translateX(calc(-100% - 3px));
	  font-size: 25px;
  }

  .p-voice__block__text:after {
    transform: translateX(calc(100% + 3px));
	  font-size: 25px;
  }
	.p-voice__block__text:before, .p-voice__block__text:after {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    color: #DBB866;
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
    position: absolute;
    top: -5px;
}


  .p-voice__detail__text {
    font-size: 20px;
	  padding: 20px;
  }
 .is-sp {
    display: block ;
}
.w-600{
	max-width: 600px;
	width: 100%;
}
	

	/*-- ここまで --*/
}
/*media Queries タブレットサイズ（600px～959px）のみで適応したいCSS -タブレットのみ
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) and (max-width: 959px) {


	/*-- ここまで --*/
}	
	
/*media Queries タブレット（600px）以上で適応したいCSS -タブレット・PC
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) {


	/*-- ここまで --*/
}



/*media Queries スマホサイズ（599px）以下で適応したいCSS - スマホのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (max-width: 599px) {
	.p-voice__detail__pic img{
		width: 100%;
	}
	
/* 	 新R25風*/
		h1{
		font-size: 24px !important;
	}
	h2{
	    padding-top: 0px;
    padding-right: 0px !important;
    padding-bottom: 0px;
/*     padding-left: 0px !important; */
}
	.wp-image-16 img{
		width: 240px;
		
	}
	.btn-t{
		font-size: 14px;
		margin-bottom: 0.3em;
	}
	.w-300{
	max-width: 165px !important;
	width: 100%;
}
	/*-- ここまで --*/
}
