@charset "utf-8";
/* CSS Document */
body {
	font-family: dnp-shuei-mgothic-std, sans-serif;
	font-style: normal;
	font-weight: 400;
}
*{
}
a{
	transition: all 0.3s ease;
}
.br-sp{
	display:none;
}
:where(.c-entry__content>:not(.alignleft):not(.alignright):not(.alignfull)){
	max-width: none;
}
.c-container{
	padding-right: .75rem;
	padding-left: .75rem;
}
.home .c-container{
	padding: 0;
}
.home .c-container .c-container,
.home footer .c-container{
	padding: 0 1rem;
}
.l-contents__inner{
	margin-top:0;
}
.l-contents__inner:first-child{
	padding-top: 0;
}
.smb-section{
	padding:2rem 0;
}
.page .c-entry__header,
.archive .c-entry__header{
	background-color: #E3ECF8;
    	padding: 3rem;
    	margin-right: calc(50% - 50vw);
    	width: 100vw;
    	margin-left: calc(50% - 50vw - 120px);
    	max-width: none;
}
.archive .c-entry__header{
	padding: 1.375rem 2rem;
}
.page .c-entry__header h1,
.archive .c-entry__header h1{
	text-align: center;
}
.archive .c-entry__title::before{
	content: "講師一覧";
	display: block;
}
.page .l-contents__sidebar,
.archive .l-contents__sidebar{
	margin-top:180px;
}
@media (max-width: 1024px) {
	.page .c-entry__header,
	.archive .c-entry__header{
		margin-left: calc(50% - 50vw);
	}
	.page .l-contents__sidebar,
	.archive .l-contents__sidebar{
		margin-top: 3.75rem;
	}
}
@media (max-width: 781px) {
	.br-pc,
	.sp-none{
		display:none;
	}
	.br-sp{
		display:block;
	}
	.page .c-entry__header h1,
	.archive .c-entry__header h1{
		font-size: 1.25rem;
	}
}
@media (max-width: 480px) {
	.page .l-contents__sidebar,
	.archive .l-contents__sidebar{
		margin-top: 2rem;
	}
}
/* =======================================
	header
======================================= */
.c-site-branding__title .custom-logo {
    width: 170px;
}
.header-right.sp{
	display:none;
}
.header-right{
	display: flex;
	gap: 1rem;
	align-items: center;
	margin-right: 1rem;
	font-weight: 700;
}
.header-mail a{
	padding: 1.25rem;
	background-color: #FF6701;
	border-radius: 10px;
	text-decoration-line: none;
	color: white;
}
.header-mail img{
	width: 35px;
	display: inline-block;
	margin-right: 8px;
}
.header-tel{
	display: flex;
	flex-direction: column;
	line-height: 1.3;
	align-items: center;
}
.header-tel span{
	background-image: linear-gradient(transparent 60%, rgba(247, 252, 0, 0.5) 60%);
}
.header-tel a{
	color: #000066;
	font-size: 1.8rem;
	text-decoration-line: none;
}
.c-hamburger-btn{
	margin-right:0.5rem;
}
.c-hamburger-btn__bars{
	margin: 4px auto;
	width: 25px;
}
.c-hamburger-btn__bar{
	height: 2px;
}
.c-hamburger-btn__label{
	font-weight: 700;
    	font-size: 10px;
}
@media (min-width: 64em) {
    .c-site-branding__title .custom-logo {
        width: 280px;
    }
}
@media (max-width: 1024px) {
	.header-right.pc{
		display:none;
	}
	.header-right.sp{
		display: flex;
        	position: fixed;
        	top: 6px;
        	right: 45px;
        	z-index: 1000;
		margin-right: 0.5rem;
		gap: 0.5rem;
	}
	.p-header-content--sm{
		padding: 0;
	}
	.header-mail a{
		padding: 0.8rem 0.6rem;
    		border-radius: 50px;
	}
	.header-mail img{
		width: 25px;
    		margin-right: 0;
	}
	.header-tel a{
		font-size: 1rem;
    		border: solid 1px;
    		border-radius: 50px;
    		padding: 0.6rem;
	}
	.header-tel img{
		width: 25px;
	}
}
/* =======================================
	sidebar
======================================= */
.l-contents__sidebar{
	max-width:200px;
}
@media (max-width: 1000px) {
	.l-contents__sidebar{
		max-width:100%;
		    padding: 0 0.5rem;
	}
}
/* =======================================
	footer
======================================= */
.l-footer-widget-area{
	background-color: #000066;
    	color: white;
}
.l-footer-widget-area .c-row{
	flex-direction: column;
}
.l-footer-widget-area .c-row__col--lg-1-4{
	--_item-width: 100%;
}
.widget_nav_menu ul>li+li{
	margin-top: 0;
}
#menu-footer-nav li{
	display: inline-block;
	margin-right: 1rem;
}
#menu-footer-nav li:last-child{
	margin-right: 0;
}
.footer-name{
    	font-size: 1.45rem;
    	font-weight: 700;
    	margin-bottom: 0.6rem;
    	line-height: 1.5;
}
.footer-name span{
	font-size: 1rem;
    	display: block;
}
@media (max-width: 781px) {
	#menu-footer-nav li{
		display: block;
		border-bottom: solid 1px #38396f;
		margin-right: 0;
	}
	#menu-footer-nav a{
		display: block;
		padding: .75rem;
	}
	#menu-footer-nav a:hover{
		text-decoration: none;
		background-color: #000075;
	}
}
/* =======================================
	index
======================================= */
.home.page .l-contents__sidebar{
	margin-top:40px;
}
#front-page-top-content .wp-block-image.alignfull.size-full{
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}
.index-pickup .smb-section__fixed-background,
.index-recommended .smb-section__fixed-background,
.index-achieve .smb-section__fixed-background {
	margin-right: calc(35% - 50vw);
	margin-left: calc(35% - 50vw);
}
.smb-section.index-intro{
	padding:1rem 0 3rem;
}
.index-intro .is-layout-flow>h2{
	background-color: white;
	border-left: solid 8px #ff6701;
	color: #000066;
	padding-left: 1rem;
}

.intro-list{
	list-style-type: none;
	padding-left: 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	width: 320px;
}
.intro-list li{
	background-color: #000066;
	color: white;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.intro-list li:first-child{
	margin:0 2rem;
}

.intro-list li img{
	width: 40px;
	display: block;
}
.index-intro .wp-block-button__link{
	border-radius: 100px;
	background-color: #ff6701;
	width: 300px;
}
.index-intro .wp-block-button__link img{
	width: 25px;
	margin-right: 0.6rem;
}
/*今注目の人気講師*/
.index-pickup h2:before{
	content: '';
	display: block;
	width: 50px;
	height: 41px;
	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/star.svg);
 	background-size: contain;
	margin: auto;
}
.index-pickup h2.smb-section__title:after {
	content: 'PICK UP';
	display: block;
	margin: 0 0 2rem;
	height: 0;
	width: auto;
	font-size: 1rem;
	color: #ff6701;
}
.ninki .c-entries--simple{
	display: flex;
	justify-content: space-around;
	max-width: 1000px;
}
.ninki .c-entries--simple .c-entries__item{
	border: none;
	width: 160px;
}
.ninki a{
	text-align: center;
}
.ninki img{
	margin-bottom: .25rem;
}
/* 画像がないときのグレー枠 */
.top-entry-placeholder{
  display:block;
  width: 90px;
  height: 110px;
  background:#ddd;
	margin-bottom: .25rem;
}
.ninki h3{
	font-size: 1rem;
}
.index-soudan .is-layout-constrained>h2{
	background-color: white;
    	border-left: none;
    	text-align: center;
	line-height: 3;
}
.index-soudan h2 span{
    	background-color: #000066;
    	color: white;
    	display: inline-block;
    	padding: 0 3rem;
    	line-height: 2.5;
    	border-radius: 15px;
}
.question-box ul{
    	list-style-type: none;
    	display: flex;
    	justify-content: center;
    	flex-wrap: wrap;
}
.question-box ul li{
	width: 30%;
	background-repeat: no-repeat;
	background-size: auto;
	text-align: center;
	font-weight: 700;
	position: relative;
}
.question-box ul li:before{
	content:"";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
}
.question-box ul li:first-child{
	margin:0 2rem;
}
.question-box ul li:first-child:before{
	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/fukidashi02.png);
	width:250px;
	height: 210px;
}
.question-box ul li p{
	width: 155px;
    	margin: 3.6rem 3rem;
}
.question-box ul li:nth-child(2){
	margin:0 2rem;
}
.question-box ul li:nth-child(2):before{
	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/fukidashi03.png);
	width:250px;
	height: 210px;
}
.question-box ul li:nth-child(3) p {
    margin: 4.5rem;
}
.question-box ul li:nth-child(3):before{
	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/fukidashi01.png);
	width:300px;
	height: 210px;
}
.question-box ul li:nth-child(4) img{
	width: 155px;
	position: absolute;
	left: 23%;
}
.question-box ul li:last-child:before{
	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/fukidashi04.png);
	width:250px;
	height: 210px;
}
.question-box ul li span,
.question-box-sp ul li span{
    	color: #ED1C24;
}
.question-box-sp{
	display:none;
}

.question-box-sp ul{
	border: solid 5px #b6c5d0;
    	padding: 2rem 1.5rem 2rem 3rem;
    	max-width: 540px;
    	margin: 2rem auto;
    	font-weight: 700;
	border-radius: 20px;
	position:relative;
}
.question-box-sp ul::before,
.question-box-sp ul::after {
    	position: absolute;
    	bottom: -30px;
    	width: 40px;
    	height: 30px;
    	clip-path: polygon(0 0, 100% 0, 50% 100%);
    	content: '';
}

.question-box-sp ul::before {
    	background-color: #b6c5d0;
}

.question-box-sp ul::after {
    	bottom: -20px;
    	background-color: #fff;
}
.question-box-sp li{
	line-height: 1.4;
	margin-bottom:1rem;
}
.question-box-sp img{
	width: 50%;
    	margin: auto;
    	display: block;
}

@media (max-width: 640px) {
.ninki .c-entries--simple{
	display: flex;
	justify-content: space-around;
}
.ninki .c-entries--simple .c-entries__item{
	border: none;
	width: 100px;
}
}


/*ページ下部お問い合わせ*/
.wrap-contact{
	background-color: #ebeef1;
	border-radius: 10px;
	padding: 2.5rem;
}
.contact-text01{
	font-weight: 700;
	text-align: center;
	color: #ff6900;
	margin-bottom: 2rem;
}
.contact-text{
    	font-size: 1.25rem;
    	font-weight: 700;
    	color: #000066;
    	line-height: 1.4;
}
.wrap-contact .contact-text{
	text-align: center;
	margin-bottom: 2rem;
}
.contact-text span{
	background-image:linear-gradient(transparent 60%, rgba(247, 252, 0, 0.5) 60%);
}
.contact-btn{
	display: flex;
    	justify-content: center;
    	gap: 2rem;
    	text-align: center;
    	flex-wrap: wrap;
}
.contact-btn img{
    	width: 35px;
    	display: inline-block;
    	margin-right: 0.5rem;
}
.contact-btn div{
	display: flex;
    	flex-direction: column;
    	align-items: center;
}
.contact-tel{
	display: block;
    	width: 400px;
    	background-color: white;
    	height: 100px;
    	border: solid 5px #B6C5D0;
    	border-radius: 60px;
    	color: #000066;
    	font-size: 2.25rem;
    	text-decoration-line: none;
    	font-weight: 700;
}
.contact-tel span{
    	font-size: 0.8rem;
    	display: block;
    	color: black;
    	margin-top: -0.5rem;
}
.contact-form{
	display: flex;
    	width: 400px;
    	background-color: #ff6701;
    	height: 100px;
    	text-decoration-line: none;
    	color: white;
    	font-size: 1.75rem;
    	align-items: center;
    	justify-content: center;
    	border-radius: 50px;
}
.index-recommended h2.smb-section__title:after{
	content: 'Recommended';
    	display: block;
    	margin: 0 0 2rem;
    	height: 0;
    	width: auto;
    	font-size: 1rem;
    	color: #ff6701;
}
.index-recommended .wp-block-button__link.wp-element-button{
    	background-color: #000066;
    	width: 300px;
    	border-radius: 50px;
}
.index-flow h2.smb-section__title:after{
	content: 'FLOW';
    	display: block;
    	margin: 0 0 2rem;
    	height: 0;
    	width: auto;
    	font-size: 1rem;
    	color: #ff6701;
}
.flow-box .wp-block-column{
    	border-radius: 10px;
	position:relative;
}
.flow-box .wp-block-column::after{
    	content: "";
    	position: absolute;
    	top: 50%;
    	right: -30px;
    	border: 9px solid transparent;
    	border-left: 12px solid #ff6701;
}
.flow-box .wp-block-column:last-child::after{
	display:none;
}
.index-flow .is-layout-flow>h3{
    	background-color: white;
    	padding: 1rem 0;
    	border-radius: 50%;
    	color: #FBB03B;
    	font-size: 2.25rem;
    	text-align: center;
    	width: 150px;
    	height: 150px;
}
.index-flow .is-layout-flow>h3 span{
    	display: block;
    	font-size: 1rem;
    	line-height: 1.25;
    	color: black;
}
.jisseki-title{
    	background-color: #000066;
    	padding: 1rem;
    	width: 175px;
    	height: 175px;
    	border-radius: 50%;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	text-align: center;
}
.jisseki-title p{
    	font-size: 2rem;
    	color: white;
    	font-weight: 700;
    	line-height: 1;
}
.jisseki-title span{
    	font-size: 1rem;
    	font-weight: 200;
    	color: #ff6701;
}
.index-achieve .wp-block-button__link.wp-element-button{
    	background-color: #ff6701;
    	width: 200px;
    	border-radius: 50px;
}
.bnr-touroku{
    	border: solid 5px #000066;
    	display: flex;
    	justify-content: center;
    	align-items: center;
    	padding: 1rem;
    	font-size: 1.45rem;
    	color: #000066;
	text-decoration-line: none;
	font-weight: 700;
    	line-height: 1.4;
}
.bnr-touroku img{
	width: 75px;
    	background-color: #000066;
    	display: block;
    	padding: 1rem;
    	border-radius: 50px;
    	margin-right: 1rem;
}
.bnr-qa{
    	border: solid 5px #ff6701;
    	display: flex;
    	justify-content: center;
    	align-items: center;
    	padding: 1rem;
    	font-size: 1.45rem;
	color: black;
	text-decoration-line: none;
    	background-image: linear-gradient(#f0f0f0 1px, transparent 0), linear-gradient(90deg, #f0f0f0 1px, transparent 0);
    	background-size: 15px 15px;
	font-weight: 700;
}
.bnr-qa img{
	width: 75px;
    	background-color: #ff6701;
    	display: block;
    	padding: 1rem;
    	border-radius: 50px;
    	margin-right: 1rem;
}
.bnr-qa p{
    	line-height: 1.5;
}
.bnr-qa p span{
	font-size:0.8rem;
	display:block;
}

@media (max-width: 1180px) {
	.wp-block-columns.flow-box{
		flex-wrap: wrap !important;
	}
	.wp-block-columns.flow-box .wp-block-column {
        	flex-basis: 47%;
	}
}

@media screen and (min-width:781px) and ( max-width:1180px) {
	.flow-box .wp-block-column::after{
		display:none;
	}
}
@media (max-width: 781px) {
	.index-intro .wp-block-columns{
		flex-direction: column-reverse;
	}
	.intro-list{
		width: auto;
    		flex-direction: row;
	}
	.intro-list li {
        	width: 100px;
        	height: 100px;
        	font-size: 0.75rem;
        	line-height: 1.3;
	}
	.intro-list li:first-child {
    		margin: 0;
	}
	.intro-list li img {
    		width: 30px;
	}
	.ninki .c-entries--simple{
		flex-wrap: wrap;
	}
	.ninki li{
		width: 33%;
	}
	.index-intro .wp-block-button__link {
    		width: 220px;
	}
	.index-soudan .is-layout-constrained>h2{
		line-height: 1.8;
	}
	.index-soudan h2 span {
    		background-color: white;
    		color: #000066;
    		display: inline;
    		padding: 0;
    		line-height: 1.2;
	}
	.question-box{
		display:none;
	}
	.question-box-sp{
		display:block;
	}
	.contact-tel,
	.contact-form {
    		width: 300px;
    		font-size: 1.6rem;
		height: 80px;
	}
	.contact-form{
		font-size:1.25rem;
	}
	.contact-btn img {
    		width: 27px;
	}
	.flow-box .wp-block-column::after{
		right: 48%;
    		bottom: -29px;
		top:auto;
		border-top: 12px solid #ff6701;
        	border-left: 9px solid transparent;
	}
}
@media (max-width: 640px) {
	.index-recommended .smb-tab-panel{
		padding: 1rem .75rem;
	}
	.index-recommended .ninki .c-entries--simple{
		justify-content: space-between;
	}
	.index-recommend .ninki li{
		width: 90px;
	}
}
/* =======================================
	faq よくある質問
======================================= */
.accordion {
  	width: 100%;
}

/* inputのチェックボックスを非表示 */
.accordion-hidden {
  	display: none;
}

/* 見出しボタン部分 */
.accordion-open {
  	display: block;
  	padding: 1rem 3rem 1rem 1rem;
  	background: #f2f2f2;
  	cursor: pointer;
  	margin: 1rem 0;
  	position: relative;
	font-weight:700;
}

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
  	content: '';
  	width: 20px;
  	height: 3px;
  	background: #000;
  	position: absolute;
  	top: 50%;
  	right: 5%;
  	transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
  	transform: translateY(-50%) rotate(90deg);
  	transition: .5s;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked+.accordion-open:after {
  	transform: translateY(-50%) rotate(0);
}

/* アコーディオン中身部分 */
.accordion-inner {
  	display: block;
  	height: 0;
  	overflow: hidden;
  	padding: 0;
  	opacity: 0;
  	cursor: pointer;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked+.accordion-open+.accordion-inner {
  	height: auto;
  	opacity: 1;
  	padding: 10px;
}
/* ↑ここまで共通 */


/* Q&A追加 */
.accordion_qa .Q,
.accordion_qa .A {
  	position: relative;
}

.accordion_qa .Q::before,
.accordion_qa .A::before {
  	font-size: 2rem;
  	display: block;
  	position: absolute;
  	top: -.6em;
  	left: -1.3em;
	font-weight:700;
}

.accordion_qa .Q::before {
  	content: 'Q';
	color:#FF6701;
}

.accordion_qa .A::before {
  	content: 'A';
	color:#000066;
}

.accordion_qa .accordion-open {
  	padding-left: 3.5rem;
}

.accordion_qa .accordion-hidden:checked+.accordion-open+.accordion-inner {
  	height: auto;
  	opacity: 1;
  	padding:0 3.5rem 1rem;
}

/* =======================================
	about 会社概要
======================================= */
.about-detail dl{
	max-width: 800px;
    	border-top: solid 1px #ccc;
    	margin: 0 auto 1rem;
}
.about-detail dl div{
    	display: table;
    	width: 100%;
    	border-bottom: dotted 1px #ccc;
    	padding: 1rem 3rem;
	line-height: 1.5;
}
.about-detail dl div:last-child{
    	border-bottom: solid 1px #ccc;
}
.about-detail dt{
    	display: block;
    	width: 8rem;
}
.about-detail dd {
    	display: table-cell;
    	width: 100%;
}
@media (max-width: 781px) {
	.about-detail dl div{
		padding: 1rem;
	}
	.about-detail dt {
    		width: 6.5rem;
	}
}
/* =======================================
	registration 講師登録
======================================= */
.is-layout-constrained .touroku-flow-box{
	max-width: 900px;
	margin-bottom:4rem!important;
	position:relative;
}
.is-layout-constrained .touroku-flow-box::after{
    	content: "";
    	position: absolute;
    	bottom: -50px;
    	left: 50%;
    	border: 12px solid transparent;
    	border-top: 18px solid #ff6701;
}
.touroku-flow-box.no-after::after{
    	border:none;
}
.touroku-flow-box figure{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ffffff;
    	border-radius: 50%;
    	width: 200px;
    	height: 200px;
}
.touroku-flow-box figure img{
    	border-radius: 0;
}
.touroku-flow-box .is-layout-flow>h3{
	font-size: 1.625rem;
    	border-bottom: solid 3px #ff6701;
	padding-left: 1rem;
}
.touroku-flow-box p{
	margin-top: .75rem;
	padding: 0 1rem;
}
.touroku .wp-block-button__link{
    	width: 400px;
    	padding: 1rem;
    	font-size: 1.45rem;
    	border-radius: 50px;
	display: flex;
    	justify-content: center;
    	align-items: center;
}
.touroku .wp-block-button__link:before{
    	content: '';
    	display: inline-block;
    	width: 32px;
    	height: 30px;
    	background-image: url(https://bestscore.co.jp/s-enter-test/wp/wp-content/plugins/my-snow-monkey/img/icon-human.svg);
    	background-size: auto;
    	margin-right: 0.6rem;
}
@media (max-width: 781px) {
	.is-layout-constrained .touroku-flow-box{
		padding: 1.5rem 1rem;
	}
	.touroku-flow-box .is-layout-flow>h3{
		font-size: 1.25rem;
		padding-left: .5rem;
	}
	.touroku-flow-box p{
		padding: 0 .5rem;
	}
	.touroku .wp-block-button__link {
		max-width: 300px;
    		font-size: 1.125rem;
	}
}
/* =======================================
	contact お問合せ
======================================= */
.contact-main .is-layout-constrained>h2{
	background-color: transparent;
    	text-align: center;
    	border-left: none;
}
.contact-main h2 span{
	background: linear-gradient(transparent 70%, #FFFF00 70%);
}

body .from-form .is-layout-flex {
    	justify-content: center;
}
.btn-request a{
	width: 400px;
    	font-size: 1.4rem;
    	border-radius: 50px;
    	font-weight: 700;
}
.btn-contact a{
    	width: 400px;
    	background-color: #ff6701;
    	color: white;
    	font-size: 1.4rem;
    	border-radius: 50px;
    	font-weight: 700;
}
.from-tel .contact-tel{
	line-height: 1.5;
    	padding-top: 0.3rem;
}
.from-tel .contact-tel span{
	font-size:1.25rem;
}
@media (max-width: 781px) {
	.contact-main .is-layout-constrained>h2{
		font-size: 1.25rem;
	}
	.btn-request a,
	.btn-contact a {
		max-width: 300px;
    		font-size: 1.125rem;
	}
}
/* =======================================
	contact-form お問い合わせフォーム
======================================= */
.input-dake .smf-item__col--label{
	display: none;
}
.input-dake .smf-form--simple-table .smf-item__col--controls{
	max-width: none;
}
[data-screen="confirm"] .input-dake{
	display: none;
}
.kochira{
	display: flex;
	align-items: center;
	margin-bottom: 4rem !important;
}
.kochira a{
	position: relative;
	font-weight: 700;
	text-decoration: none;
	border: solid 3px #b3b3b3;
	border-radius: 2rem;
	margin-left: 1rem;
	padding: .5rem 3rem .5rem 2rem;
}
.kochira a:hover{
	background-color: #E3ECF8;
}
.kochira a::after{
	content: "";
	position: absolute;
	top: 15px;
	right: 1rem;
	display: block;
	background: #006;
	height: calc(tan(60deg) * 18px / 2);
	width: 10px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.smf-form--simple-table .smf-item{
	border-bottom: solid 1px #eee;
}
.smf-item__label{
	display: inline;
	font-weight: 700;
	padding-right: .5rem;
}
.smf-item__description{
	display: inline-block;
}
.sme-badge{
	border-radius: 1rem;
	padding: 1px 10px;
}
.smf-form .smf-item .smf-text-control__control{
	width: 100%;
}
.smf-form .smf-item .smf-text-control__control.short-input{
	max-width: 10rem;
}
.link-policy::after{
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 1rem;
	height: 1rem;
	background: url(img/icon-tab.svg) no-repeat center center;
	background-size: contain;
	margin-left: .5rem;
}
.smf-action .smf-button-control__control{
	width: 12rem;
	font-family: dnp-shuei-mgothic-std, sans-serif;
	font-size: 1.25rem;
	color: #fff;
	background-image: none;
	background-color: #006;
	border: none;
	border-radius: 3rem;
	padding: .25rem 1rem;
}
.smf-action .smf-button-control__control[data-action="back"]{
	background-color: #aaa;
}
.smf-action .smf-button-control__control:hover{
	background-color: #00007e;
}
.smf-action .smf-button-control__control[data-action="back"]:hover{
	background-color: #ccc;
}
.btn-top{
	display: block;
	width: 15rem;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background-image: none;
	background-color: #006;
	border: none;
	border-radius: 3rem;
	margin: 0 auto;
	padding: .5rem 1rem;
}
.btn-top:hover{
	background-color: #00007e;
}
@media (min-width: 640px) {
	.input-dake .smf-form--simple-table .smf-item__col--controls{
		max-width: none;
	}
	.smf-form--simple-table .smf-item{
		align-items: center;
	}
	.smf-form--simple-table .smf-item__col--label{
		flex: 0 0 16em;
		max-width: 16em;
		padding-right: 1rem;
	}
}
@media (max-width: 480px) {
	.kochira{
		flex-direction: column;
	}
}
/* =======================================
	記事一覧
======================================= */
.sort{
	list-style: none;
	margin: 0;
	padding: 1rem 0 0;
}
.sort li{
	display: inline-block;
}
.sort li::after{
	content: "/";
	display: inline-block;
	margin: 0 1rem;
}
.sort li:last-child::after{
	content: none;
}
.sort a{
	text-decoration: none;
	color: #000;
}
.sort a:hover{
	text-decoration: underline;
}
.list-box{
	border-radius: .5rem;
	box-shadow: 0px 2px 6px 1px #9E9E9E;
	margin-bottom: 1.5rem;
	padding: 1rem 2rem;
}
.c-entries__item:nth-of-type(2n) .list-box{
	background-color: #f6f6f6;
}
.list-box h1{
	font-size: 1.25rem;
	border-left: solid 10px #FF6701;
	margin-bottom: 1rem;
	padding-left: .875rem;
}
.list-inner{
	display: flex;
	align-items: flex-start;
}
.list-inner img{
	width: 110px;
	border: solid 10px #fff;
	box-shadow: 2px 2px 5px 0px #bababa;
}
.list-detail{
	flex: 1;
	padding-left: 1rem;
}
.list-detail dl{
	display: flex;
	align-items: flex-start;
	border-bottom: dashed 1px #ccc;
	padding: .25rem 1rem;
}
.list-detail dl:first-child{
	border-top: dashed 1px #ccc;
}
.list-detail dt{
	width: 10rem;
}
.list-detail dd{
	flex: 1;
	padding-left: 1rem;
}
.list-btn{
	display: flex;
	justify-content: space-between;
	max-width: 40rem;
	margin: 0 auto;
	padding: 1rem 0;
}
.list-btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48%;
	max-width: 18rem;
	font-size: 1.125rem;
	font-weight: 700;
	text-decoration: none;
	border-radius: 2rem;
	padding: .25rem 1rem;
}
.list-btn a::before{
	content: "";
	display: block;
	width: 32px;
	height: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin-right: .5rem;
}
.btn-list-contact{
	color: #FF6701;
	border: solid 4px #FF6701;
}
.btn-list-contact:hover{
	background-color: #ffeee2;
}
.btn-list-contact::before{
	background-image: url(img/icon-mail02.svg);
}
.btn-list-detail{
	color: #fff;
	background-color: #FF6701;
}
.btn-list-detail:hover{
	background-color: #ff802b;
}
.btn-list-detail::before{
	background-image: url(img/icon-detail.svg);
}
@media (max-width: 781px) {
	.sort li{
		margin-right: 1rem;
	}
	.sort li:last-child{
		margin-right: 0;
	}
	.sort li::after{
		content: none;
	}
	.sort a{
		display: inline-block;
		background-color: #eee;
		border-radius: 1rem;
		padding: .375rem 1rem;
	}
	.sort a:hover{
		text-decoration: none;
		background-color: #ddd;
	}
	.list-box{
		position: relative;
	}
	.list-box h1{
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 100%;
		min-height: 130px;
		border-left: none;
		padding-left: 150px;
		padding-right: 1rem;
	}
	.list-inner img{
		position: absolute;
		top: 1rem;
		left: 2rem;
	}
	.list-detail{
		width: 100%;
		padding-left: 0;
	}
}
@media (max-width: 640px) {
	.list-box{
		padding: 1rem;
	}
	.list-box h1{
		padding-left: 130px;
	}
	.list-inner img{
		left: 1rem;
	}
	.list-detail dl{
		flex-direction: column;
		padding: .25rem .5rem;
	}
	.list-detail dd{
		width: 100%;
		padding-left: 0;
	}
}
@media (max-width: 480px) {
	.list-box h1{
		font-size: 1rem;
		min-height: 95px;
		padding-left: 100px;
	}
	.list-inner img{
		width: 80px;
		border-width: 6px;
	}
	.list-btn{
		flex-direction: column-reverse;
		align-items: center;
	}
	.list-btn a{
		width: 100%;
		margin-bottom: 1rem;
	}
	.btn-list-detail{
		padding: .5rem;
	}
}
/* =======================================
	記事詳細
======================================= */
.c-entry__meta{
	display: none;
}
.detail-box{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.detail-img > img{
	width: 90px;
}
.detail-img a{
	display: block;
}
.detail{
	flex: 1;
	padding-left: 2rem;
}
.btn-detail-contact{
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 25rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	color: #FF6701;
	border: solid 4px #FF6701;
	border-radius: 2rem;
	padding: .5rem;
	margin: 0 auto 1rem;
}
.btn-detail-contact:hover{
	background-color: #ffeee2;
}
.btn-detail-contact::before{
	content: "";
	display: block;
	width: 32px;
	height: 32px;
	background: url(img/icon-mail02.svg) no-repeat center center;
	background-size: contain;
	margin-right: .5rem;
}
.detail dl{
	display: flex;
	align-items: flex-start;
	border-bottom: dashed 1px #ccc;
	padding: .75rem .5rem;
}
.detail dt{
	width: 12rem;
	text-align: center;
	color: #00004d;
	background-color: #cccce0;
	border-radius: 2rem;
	padding: .25rem;
}
.detail dd{
	flex: 1;
	padding-top: .25rem;
	padding-left: 2rem;
}
.detail small{
	display: block;
}
.detail dl.detail-category{
	border-bottom: none;
}
.detail-category dt{
	width: auto;
	color: #000;
	background-color: transparent;
	padding: 0;
}
.detail-category dd{
	padding: 0;
}
@media (max-width: 1200px) {
	.detail dl{
		flex-direction: column;
	}
	.detail dl.detail-category{
		flex-direction: row;
	}
	.detail dd{
		padding-left: 1rem;
	}
}
@media (max-width: 1024px) {
	.post{
		position: relative;
	}
	.post .c-entry__header{
		margin-bottom: 1rem;
	}
	.post .c-entry__title{
		display: flex;
		align-items: center;
		min-height: 110px;
		padding-left: 130px;
	}
	.detail-img > img{
		position: absolute;
		top: 0;
		left: 0;
	}
	.detail{
		border-top: dashed 1px #ccc;
		padding-left: 0;
	}
}
@media (max-width: 781px) {
	.post .c-entry__title{
		font-size: 1.5rem;
		padding-left: 110px;
	}
}
@media (max-width: 640px) {
	.detail-img > img{
		width: 80px;
	}
	.post .c-entry__title{
		min-height: 97px;
		font-size: 1.25rem;
		padding-left: 100px;
	}
	.detail dl{
		padding: .5rem 0;
	}
}
@media (max-width: 480px) {
	.post .c-entry__title{
		font-size: 1.125rem;
	}
}
/* =======================================
	サイドバー
======================================= */
/*↓記事一覧の時だけ・追尾サイドバー用*/
.archive .l-sidebar-widget-area{
	height: 100%;
}
#block-20{
	height: calc(100% - 28px);
}
.tuibi{
	position: sticky;
	top: 183px;
}
/*↑記事一覧の時だけ・追尾サイドバー用*/
.btn-genre{
	position: relative;
	display: block;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background-color: #000066;
	border-radius: .5rem;
	padding: .5rem 1.5rem .5rem .5rem;
}
.btn-genre:hover{
	background-color: #00008f;
}
.btn-genre::after{
	content: "";
	position: absolute;
	top: 18px;
	right: 1rem;
	display: block;
	width: 8px;
	height: 8px;
	border: 1px solid #fff;
	border-left: 0;
	border-bottom: 0;
	transform: translateX(-25%) rotate(45deg);
}
.l-contents__sidebar .wp-block-heading{
	display: block !important;
	font-family: dnp-shuei-mgothic-std, sans-serif;
	font-size: 1rem;
	text-align: center;
	color: #fff;
	background-color: #000066 !important;
	border-radius: .5rem .5rem 0 0;
	margin-bottom: 0 !important;
	padding: .5rem !important;
}
.l-contents__sidebar .wp-block-categories-list{
	background-color: #fff;
	border: solid 1px #006;
	border-radius: 0 0 .5rem .5rem;
	margin-top: 0;
	padding: 0 .5rem .5rem !important;
}
.wp-block-categories-list li{
	border-bottom: dashed 1px #ccc;
	margin-top: 0 !important;
}
.wp-block-categories-list a{
	position: relative;
	display: block;
	padding: .5rem 1rem .5rem .5rem;
}
.wp-block-categories-list a:hover{
	text-decoration: none !important;
	color: #FF6701 !important;
}
.wp-block-categories-list a::after{
	content: "";
	position: absolute;
	top: 18px;
	right: .5rem;
	display: block;
	width: 8px;
	height: 8px;
	border: 1px solid #333;
	border-left: 0;
	border-bottom: 0;
	transform: translateX(-25%) rotate(45deg);
}
.wp-block-categories-list a:hover::after{
	border-color: #FF6701;
}
/* =======================================
	ジャンルから探す
======================================= */
.cat-list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.wp-block-categories-list.cat-list > li{
	width: 31%;
	border-bottom: none;
	margin-bottom: 3rem;
}
.cat-list > li > a{
	color: #4d4d4d;
	background-color: #ffe1cc;
}
.children-expander{
	display: none;
}
.cat-item .children{
	display: block;
	border: none;
	margin-top: 0;
	padding-top: 0;
}
@media (max-width: 840px) {
	.wp-block-categories-list.cat-list > li{
		width: 48%;
	}
}
@media (max-width: 560px) {
	.wp-block-categories-list.cat-list > li{
		width: 100%;
		margin-bottom: 1rem;
	}
}
/* =======================================
	主な実績
======================================= */
:where(.is-layout-constrained,.is-layout-flow)>table.jisseki01 tr:first-child td:last-child{
	padding: 0;
}