@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100..900&family=Open+Sans:wght@800&display=swap');

/*------------------------------------------------------

	リセット

------------------------------------------------------*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	vertical-align: baseline;
	background: transparent;
}
body { line-height: 1;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block;}
ul { list-style: none;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none;}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
table { border-collapse: collapse; border-spacing: 0;}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-bottom: 1px dotted #464646;
	margin: 0;
	padding: 0;
}
input, select { vertical-align: middle;}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: top;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	image-rendering: auto;
}
*, *:before, *:after { box-sizing: border-box;}


/*------------------------------------------------------

	グローバル

------------------------------------------------------*/

body {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
	color: #000;
	font-size: 1em;
	line-height: 1.8;
	position: relative;
	min-width: 1030px;
}

p { margin-bottom: 25px;}
p:last-child { margin-bottom: 0px;}

a { color: #29A2D9;}
a:hover, a:active { color: #6ECAEA; text-decoration: none;}

/* 文字装飾 */
.fo06 { font-size: 0.6em !important;}
.fo07 { font-size: 0.7em !important;}
.fo075 { font-size: 0.75em !important;}
.fo08 { font-size: 0.8em !important;}
.fo085 { font-size: 0.85em !important;}
.fo09 { font-size: 0.9em !important;}
.fo095 { font-size: 0.95em !important;}
.fo105 { font-size: 1.05em !important;}
.fo11 { font-size: 1.1em !important;}
.fo115 { font-size: 1.15em !important;}
.fo12 { font-size: 1.2em !important;}
.fo125 { font-size: 1.25em !important;}
.fo13 { font-size: 1.3em !important;}
.fo14 { font-size: 1.4em !important;}
.fo15 { font-size: 1.5em !important;}
.fo16 { font-size: 1.6em !important;}
.fo17 { font-size: 1.7em !important;}
.fo19 { font-size: 1.9em !important;}
.fo21 { font-size: 2.1em !important;}
.fo25 { font-size: 2.5em !important;}

.lh12 { line-height: 1.2;}
.lh14 { line-height: 1.4;}
.lh16 { line-height: 1.6;}
.lh20 { line-height: 2;}

.fo_noto { font-family: 'Noto Sans JP', sans-serif; font-weight: 700;}
.fo_noto.bold, .fo_noto .bold { font-weight: 900;}
.fo_open { font-family: 'Open Sans', sans-serif;}

.fo_white { color: #FFFFFF;}
.fo_orange { color: #ee8a1e !important;}
.fo_green { color: #0b8b42;}
.fo_blue { color: #90BCC8;}
.fo_blue02 { color: #004ea8;}
.fo_red { color: #FF3366;}
.fo_yellow { color: #ECB220;}

.break_keep { word-break: keep-all; overflow-wrap: break-word;}

/* ボックス */
.container { width: 1030px; padding: 0px 15px; margin: 0px auto;}
.container02 { max-width: 990px; padding: 0px 15px; margin: auto;}

.left { float: left;}
.right { float: right;}

.pos_rel { position: relative;}
.pos_ab { position: absolute;}

.bold { font-weight: bold;}
.black { font-weight: 900;}

.ta_center { text-align: center;}
.ta_right { text-align: right;}
.ta_left { text-align: left;}
.ta_right-s_center { text-align: right;}
.ta_left-s_center { text-align: left;}
.ta_center-s_left { text-align: center;}

.box_wrap { margin: auto -15px;}
.box50 { float: left; width: 50%; padding: 0px 15px;}

.back_white { background-color: #fff !important;}
.back_orange { background-color: #ECB220 !important;}
.back_orange02 { background-color: #EE8A1E !important;}
.back_gray { background-color: #f9f8ee !important;}
.back_blue { background-color: #004EA8 !important;}
.back_purple { background-color: #F7F6FB !important;}

.back_image01 { background: url(../images/common/pattern_01.jpg);}
.back_image02 { background: url(../images/common/pattern_02.jpg);}
.back_image03 { background: url(../images/common/pattern_03.jpg);}

@media (min-width: 861px) {
	.hidden_l { display: none !important;}
}

/* リスト */
ol { padding-left: 2em;}
ol li { list-style: outside decimal;}

.list_indent { padding-left: 1em;}
.list_indent li { text-indent: -1em;}

.list_disc { padding-left: 1em;}
.list_disc li { list-style: outside disc;}

/* margin */
.mb00 { margin-bottom: 0px !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb60 { margin-bottom: 60px !important;}
.mb80 { margin-bottom: 80px !important;}
.mb120 { margin-bottom: 120px !important;}

.mb40-20 { margin-bottom: 40px !important;}
.mb60-30 { margin-bottom: 60px !important;}
.mb50-30 { margin-bottom: 50px !important;}
.mb80-40 { margin-bottom: 80px !important;}
.mb100-60 { margin-bottom: 100px !important;}

.mt60-40 { margin-top: 60px;}

/* clearFix */
.clearFix {
    zoom: 100%;
}
.clearFix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

/* ------------------------
	ヘッダー
------------------------ */

.header { padding: 5px;}


/* ------------------------
	グローバルナビ
------------------------ */

.humberger {
	background: #8cc63f;
	border-radius: 4px;
	cursor: pointer;
	display: block;
	position: fixed;
	top: 5px;
	right: 5px;
	width: 50px;
	height: 50px;
	z-index: 10001;
}
.humberger span {
	background: #fff;
	border-radius: 15px;
	position: absolute;
	left: 10px;
	width: 30px;
	height: 3px;
	transition: 0.4s;
}
.humberger span:nth-of-type(1) { top: 9px;}
.humberger span:nth-of-type(2) { top: 17px;}
.humberger span:nth-of-type(3) { top: 25px;}
.humberger:after {
	color: #fff;
	content: 'MENU';
	display: block;
	font-size: 10px;
	text-decoration: none;
	text-align: center;
	transition: 0.4s;
	position: absolute;
	left: 0;
	bottom: 1px;
	width: 100%;
}
.is-open .humberger:after { content: 'CLOSE';}
.is-open .humberger span:nth-of-type(1) { transform: translateY(6px) rotate(-45deg);}
.is-open .humberger span:nth-of-type(2) { opacity: 0;}
.is-open .humberger span:nth-of-type(3) { transform: translateY(-10px) rotate(45deg);}

/* ナビ本体 */
.sp-navi { -webkit-text-size-adjust: 100%;}
.sp-navi.is-open .sp-navi-inner {
	opacity: 1;
	visibility: visible;
	z-index: 10000;
}
.sp-navi .sp-navi-inner {
	background: #fff;
	background-size: auto 3px, auto;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0px;
	height: 100%;
	width: 100%;
	transition: .5s;
	padding-bottom: 30px;
}

.sp-navi .logo { padding: 0 70px 0 15px; line-height: 60px;}
.sp-navi .logo img { max-height: 38px; width: auto; vertical-align: middle;}
.sp-navi .list01 a, .sp-navi .list01 span { display: block; text-decoration: none; border-bottom: dashed 1px #ccc; padding: 0.5em 0.5em 0.5em 2.5em; font-size: 1.15em; position: relative; color: #000;}
.sp-navi .list01 a:before, .sp-navi .list01 span:before { content: ""; position: absolute; left: 15px; top: 50%; margin-top: -1.5px; width: 10px; height: 3px; background-color: #bbd51a;}
.sp-navi .list01 > li:first-child a { border-top: dashed 1px #ccc;}
.sp-navi .list01 > li > ul > li { width: 100%;}
.sp-navi .list01 > li > ul > li > a {
	display: block;
	font-size: 14px;
	line-height: 1.3em;
	padding: 10px 10px 10px 50px;
	position: relative;
	text-decoration: none;
}
.sp-navi .list01 > li > ul > li > a:before {
	background: #bbd51a;
	content: "";
	height: 1px;
	width: 10px;
	position: absolute;
	left: 26px;
	top: 19px;
}

/* ------------------------
	フッター
------------------------ */

.footer { padding-top: 40px;}

.footer .box01 { display: flex; justify-content: space-between;}
.footer_nav li { background: url("../images/common/footer_ico_arrow.svg") no-repeat left 0.6em; background-size: 0.45em auto; padding-left: 0.9em;}
.footer_nav a { color: #000; text-decoration: none;}
.footer_nav a:hover { opacity: 0.6;}

.footer .box02 { display: flex; justify-content: space-between; align-items: center; gap: 10%;}

.copy { padding: 0.3em;}

.fixed_btn03 { position: fixed; right: 0px; top: 13%; z-index: 9999;}


/*------------------------------------------------------

	トップページ

------------------------------------------------------*/

.slide_wrap { max-width: 1500px; margin: auto;}
.slide_wrap .thumb { display: flex; justify-content: center; padding-top: 15px;}
.slide_wrap .thumb li { width: 230px; margin: 0px 7px; }
.slide_wrap .thumb a { display: block; position: relative;}
.slide_wrap .thumb a:after { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0,0,0,0.3);}
.slide_wrap .thumb a.active:after { display: none;}

.bx-wrapper { position: relative;}
.bx-controls-direction a { position: absolute; background: url("../images/top/ico_prev.png") no-repeat center center; background-size: 100% auto; width: 59px; height: 59px; top: 50%; transform: translateY(-50%);}
.bx-controls-direction .bx-prev { left: 5%;}
.bx-controls-direction .bx-next { right: 5%; transform: translateY(-50%) scale(-1,1);}

.slide_wrap .bx-controls-direction a { background-image: url("../images/top/ico_prev02.svg"); width: 5vw; height: 20vw;}
.slide_wrap .bx-controls-direction .bx-prev { left: 0px;}
.slide_wrap .bx-controls-direction .bx-next { right: 0px;}

.top_sec01 dl { display: flex; align-items: center; gap: 2em; width: 100%; max-width: 600px; margin: auto;}
.top_sec01 dt { width: 130px;}
.top_sec01 dd { flex: 1;}

.top_sec02 { background: url(../images/top/top_sec02_img.png) no-repeat center bottom #ecb220; background-size: 90% auto, auto; padding: 50px 0px;}
.top_sec02 section { display: table; width: 100%;}
.top_sec02 .box_inner { display: table-cell; vertical-align: top; width: 50%;}
.top_sec02 .box02 { max-width: 495px;}
.top_sec02 .text01 { font-size: 1.6em;}

.top_sec02 .sec01 figure.box_inner { background: url(../images/top/top_sec02_img01.jpg) no-repeat right top;}
.top_sec02 .sec01 div.box_inner { padding: 0px 15px 0px 50px;}

.top_sec02 .sec02 figure.box_inner { background: url(../images/top/top_sec02_img02.png) no-repeat left top; height: 484px;}
.top_sec02 .sec02 div.box_inner { padding: 0px 50px 0px 15px;}
.top_sec02 .sec02 .more_btn a { min-width: 310px;}

.top_sec02 .sec03 { max-width: 560px; margin: auto;}
.top_sec02 .sec03 .iframe_wrap { position: relative; width: 100%; padding-top: 56.25%;}
.top_sec02 .sec03 .iframe_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.top_heading span { display: inline-block; font-size: 2.5em; line-height: 1; letter-spacing: 0.05em; border-top: solid 5px #000; border-bottom: solid 5px #000; padding: 8px; width: 400px; position: relative;}
.top_heading span:before, .top_heading span:after { content: ""; position: absolute; width: 5px; background-color: #000; top: 5px; bottom: 5px;}
.top_heading span:before { left: -5px;}
.top_heading span:after { right: -5px;}
.top_subttl { letter-spacing: 0.15em;}
.top_heading span.fo_noto { font-size: 2.2em; padding: 8px 2em 12px;}

.top_sec04 { padding: 50px 0px 30px;}
.top_sec04 .top_heading span { border-top-color: #fff; border-bottom-color: #fff;}
.top_sec04 .top_heading span:before, .top_sec04 .top_heading span:after { background-color: #fff;}
.top_sec04 li { float: left; width: 33.3333%; padding: 0px 15px; margin-bottom: 20px;}
.top_sec04 .box { width: 305px; height: 305px; border-radius: 100%; padding: 50px 40px;}
.top_sec04 h3 { font-size: 1.7em;}

.top_sec05 { padding: 50px 0px; background: url("../images/top/top_sec05_bg01.png") no-repeat left top, url("../images/top/top_sec05_bg02.png") no-repeat right top; background-size: 470px auto;}
.top_sec05 .bx-wrapper { margin: auto;}
.top_sec05 .bx-pager { display: flex; justify-content: center; gap: 2em; margin-top: 1.5em;}
.top_sec05 .bx-pager a { display: block; text-indent: -9999px; width: 1em; height: 1em; border-radius: 100%; background: #ccc;}
.top_sec05 .bx-pager a.active { background: #999;}

.top_sec06 { display: table; width: 100%; max-width: 1500px; margin: auto;}
.top_sec06 section { display: table-cell; vertical-align: middle; width: 50%;}
.top_sec06 a {
	display: block;
	background-repeat: no-repeat;
	background-position: center 50%;
	background-size: auto 100%;
	height: 410px;
	padding-top: 160px;
  transition: 0.3s;
}
.top_sec06 a:hover { background-size: auto 105%;}
.top_sec06 section:first-child a { background-image: url(../images/top/top_sec06_bg01.jpg);}
.top_sec06 section:last-child a { background-image: url(../images/top/top_sec06_bg02.jpg);}

.top_sec07 ul { display: flex; justify-content: center; align-items: flex-end; flex-wrap: wrap; gap: 20px;}

.top_sec08 { padding: 50px 0px;}
.top_sec08 .btn_area a { font-size: 1.5em;}
.top_sec08 .btn_area a:before { content: ""; display: inline-block; background: url("../images/common/ico_pin.svg") no-repeat center center; background-size: 100% auto; width: 0.95em; height: 1.4em; vertical-align: middle; margin-right: 0.5em;}

.top_sec09 { padding: 50px 0px;}
.top_sec09 .container { display: flex; align-items: center; gap: 5%; padding-right: 10%;}
.top_sec09 .box01 { width: 53%;}
.top_sec09 .box01 .more_btn a { background-color: #fa5a5a; width: 100%; padding: 1.5em;}
.top_sec09 .box01 .more_btn a:before { content: url("../images/top/top_sec08_icon.svg"); margin-right: 10px; position: relative; bottom: -5px;}
.top_sec09 .img01 { width: 23%; right: 0px; bottom: -50px;}

.top_calendar { padding: 50px 0;}
.top_calendar iframe { width: 100%;}
.top_calendar .ta_right span { color: #D50000;}


/*------------------------------------------------------

	下層ページ

------------------------------------------------------*/

/* 共通 */
.show_sp { display: none;}
.over_hidden { overflow: hidden;}

.more_btn a {
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 1.15em;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background-color: #004ea8;
	padding: 12px 45px 15px;
	border-radius: 50px;
	box-shadow: -5px 5px 0px #ccc;
	position: relative;
}
.more_btn.red a { background-color: #e70012;}
.more_btn a, .more_btn a:before { transition: 0.3s;}
.more_btn a:after { content: url(../images/common/ico_arrow.png); position: absolute; right: 15px; top: 50%; margin-top: -15px;}
.more_btn a:hover { transform: translate3d(-5px, 5px, 0px); box-shadow: 0px 0px 0px #ccc}

.pagettl { background: url("../images/common/pagettl.svg") no-repeat center center #ECB220; background-size: auto 80%; height: 150px; padding-top: 30px; letter-spacing: 0.1em;}
.pagettl h2 { font-size: 2.5em;}
.pagettl p { font-size: 1.3em;}

.subttl span { display: inline-block; font-size: 2.5em; line-height: 1; letter-spacing: 0.1em; border-top: solid 4px #004ea8; border-bottom: solid 4px #004ea8; padding: 8px 20px; position: relative;}
.subttl span:before, .subttl span:after { content: ""; position: absolute; width: 4px; background-color: #004ea8; top: 4px; bottom: 4px;}
.subttl span:before { left: -4px;}
.subttl span:after { right: -4px;}
.ls015 { letter-spacing: 0.15em;}
.subttl .fo_orange { color: #004ea8 !important;}


/* ------------------------
	SALE
------------------------ */

.ttl_arrow { background: #000000; font-size: 2.1em; letter-spacing: 0.05em; line-height: 1.4; padding: 0.4em 0.5em; display: table; margin: auto;}
.ttl_arrow.w100 { width: 100%;}
.ttl_arrow:after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -0.7em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.8em 0.4em 0 0.4em;
	border-color: #000 transparent transparent transparent;
}

.sale_sec01 h4 { font-size: 1.6em; line-height: 1.5;}

.sale_sec01 .sec04 ul { display: flex; justify-content: center; flex-wrap: wrap; margin: 0px -3% -35px;}
.sale_sec01 .sec04 li { margin: 0px 3% 35px;}
.sale_sec01 .sec04 .text01 { margin-top: -30px; position: relative; z-index: 50;}
.sale_sec01 .sec04 span { background: #ffcade; padding: 4px 0.7em; line-height: 2.2;}

.sale_sec01 .sec05 h4 { margin: auto -1em;}

.sale_sec02 h3 { max-width: 300px; margin: auto;}


/* ------------------------
	SHOP
------------------------ */

.shop_sec01 .box01 { display: flex; justify-content: space-between; flex-flow: row-reverse; gap:  30px 8%;}
.shop_sec01 .box01 > figure { width: 41%;}
.shop_sec01 .box01 .box_inner { flex: 1;}

.shop_sec02 .top_heading span { width: auto; padding: 8px 1em;}
.shop_sec02 table { width: 100%; max-width: 760px; margin: auto;}
.shop_sec02 tr { border-bottom: dotted 1px #ccc;}
.shop_sec02 tr:last-child { border-bottom: none;}
.shop_sec02 th, .info_sec01 td { padding: 15px;}
.shop_sec02 th { width: 9em; text-align: left; font-weight: bold; padding-right: 0px;}
.shop_sec02 td { padding-left: 3em;}

.shop_sec03 .ttl_arrow.w100 { max-width: 500px;}
.shop_sec03 .box01 { display: flex; justify-content: space-between; align-items: center; gap: 30px 5%;}
.shop_sec03 .box01 > figure { width: 32%;}
.shop_sec03 .box02 { display: flex; align-items: center; gap: 20px; flex: 1;}
.shop_sec03 .box02 > figure { width: 24%;}
.shop_sec03 .box02 .box_inner { flex: 1;}
.shop_sec03 .map iframe { width: 100%; height: 370px;}

.privacy_sec { max-width: 800px; margin: auto;}
.privacy_sec .top_heading span{ width: 100%; max-width: 460px;}


/* ------------------------
	BANKIN
------------------------ */

.ban_sec01 { background: #E6B802; padding-top: 50px;}
.ban_sec01 .ttl_box { display: flex; justify-content: center; align-items: center; gap: 1em; font-size: 2.1em; line-height: 1.4;}
.ban_sec01 .img02 img { width: 100%;}

.ban_sec02 h4 { display: table; background: #000000; padding: 0.4em 1em;}
.ban_sec02 section { display: flex; justify-content: space-between; gap: 20px 3%;}
.ban_sec02 section:nth-of-type(even) { flex-flow: row-reverse;}
.ban_sec02 section .box_inner { width: 58%;}
.ban_sec02 section > figure { flex: 1;}

.ban_sec03 .box01 { max-width: 810px; margin: auto; padding: 50px; display: flex; flex-flow: column; gap: 25px;}
.ban_sec03 .box01 section { display: flex; align-items: center; padding: 15px; gap: 5%;}
.ban_sec03 .box01 section > figure { width: 220px;}
.ban_sec03 .box01 section .box_inner { flex: 1;}
.ban_sec03 .box01 h4 { font-size: 2em; line-height: 1.3;}
.ban_sec03 .box01 dl { display: flex; align-items: center; gap: 0.8em;}
.ban_sec03 .box01 dt { border: solid 1px #000; padding: 0.1em 0.3em;}
.ban_sec03 .img01 { right: -100px; bottom: 0;}



/* ------------------------
	recruit
------------------------ */

.heading_large { font-size: 2.4em;}
.heading_middle { font-size: 1.7em; letter-spacing: 0.1em;}
.heading_en { letter-spacing: 0.15em;}

.rec_main { background: url("../images/recruit/rec_main_img.jpg") no-repeat center top; background-size: cover; max-width: 14400px; margin: auto; padding: 5% 0px 18%;}
.rec_main .pos_ab { background: rgba(238,138,30,0.8); width: 100%; bottom: 0px; left: 0px; font-size: min(2.7vw,1.8em); padding: 30px 10px; letter-spacing: 0.05em;}

.rec_sec01 { padding: 50px 0px;}
.rec_sec01 .text01 { font-size: 1.35em;}
.rec_sec01 .box01 { background: url("../images/recruit/rec_sec01_img.jpg") no-repeat 30% bottom; background-size: cover; display: flex; justify-content: flex-end;}
.rec_sec01 .box01 .box_inner { width: 64%; padding: 45px;}

.rec_sec02 { padding: 70px 0px;}
.rec_sec02 ul { display: flex; justify-content: space-between; flex-wrap: wrap;}

.rec_sec03 ul { display: flex; justify-content: center; flex-wrap: wrap;}
.rec_sec03 li { margin: 0px 30px;}
.rec_sec03 a { display: block;}
.rec_sec03 img { transition: 0.3s;}
.rec_sec03 a:hover img { transform: scale(1.05);}
.rec_sec03 .pos_ab { background: rgba(0,78,168,0.8); width: 100%; bottom: 0px; left: 0px; font-size: 0.95em; padding: 0.4em 0.7em;}
.rec_sec03 .pos_ab:after {
	content: "";
	right: 13px;
	top: 37%;
	position: absolute;
  width: 15px;
  height: 15px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.rec_sec05 { padding: 40px 0px;}
.rec_sec05 .container02 { display: flex; justify-content: center; align-items: center; gap: 4%;}
.rec_sec05 h3 { font-size: 2.2em;}
.rec_sec05 .btn_area a { display: inline-block; background: #004EA8; color: #fff; width: 100%; max-width: 300px; text-align: center; text-decoration: none; padding: 0.6em; position: relative;}
.rec_sec05 .btn_area a:after {
	content: "";
	right: 0.8em;
  top: 1em;
	position: absolute;
  width: 1em;
  height: 1em;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.rec_sec07 { padding: 70px 0px 100px;}
.rec_sec07 .back_white { padding: 50px 50px 40px;}
.rec_sec07 dl { max-width: 840px; margin: 0px auto 10px; display: table; width: 100%;}
.rec_sec07 dl > * { display: table-cell; vertical-align: middle; padding: 0.7em 2em;}
.rec_sec07 dt { background: #ECB220; width: 176px;}
.rec_sec07 dd { border-bottom: solid 1px #B7B7B7;}

/* ------------------------
	interview
------------------------ */

.int_wrap { padding-top: 20px;}
.int_wrap .text01 { font-size: min(6vw,3.1em);}

.int_wrap .box01 { display: flex; gap: 5%; align-items: flex-start;}
.int_wrap .box01 figure { width: 36%;}
.int_wrap .box01 .box_inner { flex: 1;}
.int_wrap .box01 figcaption { background: rgba(236,178,32,0.8); display: flex; width: 100%; left: 0; bottom: 0; z-index: 50; padding: 1em 0.5em; font-size: 1.3em; line-height: 1.6; letter-spacing: 0.05em; justify-content: center; align-items: center; height: 5em;}

.link_pad { padding-top: 50px; margin-top: -50px;}


/* ------------------------
	number
------------------------ */

.num_wrap { padding-top: 20px;}
.num_wrap .box01 { display: flex; justify-content: space-between;}
.num_wrap .box01 > section { width: 47.5%;}
.num_wrap section { border: solid 10px #F7F6FB; padding-top: 20px;}
.num_wrap h3 { font-size: 1.4em;}

.num_wrap .img01 { padding: 10px;}
.num_wrap .img02, .num_wrap .img03 { padding: 25px 10px 20px;}

/* ------------------------
	CONTACT
------------------------ */

.contact_sec01 { padding: 80px 0px;}
.contact_sec01 .sec01 h3 { padding: 25px 15px;}
.contact_sec01 .sec01 .box_inner { display: flex; justify-content: center ;align-items: center; gap: 1.5em;}
.contact_sec01 .sec01 .box_inner > figure { margin-top: -10px;}

.contact_sec01 .sec02 { padding: 50px 10%;}
.contact_sec a { color: #00b7cb;}
.contact_sec a:hover { text-decoration: none;}

.contact_sec table { width: 100%;}
.contact_sec th, .contact_sec td { vertical-align: top; padding-bottom: 10px;}
.contact_sec th { font-weight: bold; text-align: right; padding-right: 2em; padding-top: 17px; width: 240px;}
.contact_sec .no_pad_t th, .contact_sec .no_pad_t td,
.contact_sec .confirm th, .contact_sec .confirm td { padding-bottom: 15px;}
.contact_sec .no_pad_t th, .contact_sec .confirm th { padding-top: 0px;}
.contact_sec .hissu, .contact_sec .ninni { display: inline-block; color: #fff; font-size: 0.7em; padding: 0px 5px; margin-left: 5px;}
.contact_sec .hissu { background-color: #ee8a1e;}
.contact_sec .ninni { background-color: #999;}
.contact_sec input[type="text"], .contact_sec input[type="email"], .contact_sec input[type="tel"], .contact_sec textarea, .contact_sec select {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 1em;
	border: none;
	padding: 7px 10px;
	margin: 10px 0px;
	background-color: #f2f2f2;
	max-width: 100%;
}
.contact_sec textarea { height: 6em;}
.contact_sec select { -webkit-appearance: menulist-button; height: 2.5em;}
.contact_sec input[type="text"], .contact_sec input[type="email"], .contact_sec input[type="tel"], .contact_sec textarea { width: 100%;}
.contact_sec .width_auto input[type="text"] { width: auto;}

.contact_sec .btn_area input {
	display: inline-block;
	width: 400px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 1.2em;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background: url("../images/common/ico_arrow.png") no-repeat 95% 50% #fa5a5a;
	border: none;
	padding: 15px 45px 18px;
	border-radius: 50px;
	box-shadow: -5px 5px 0px #ccc;
	cursor: pointer;
	-moz-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	margin: 0px 10px 15px;
}
.contact_sec .btn_area input:hover { transform: translate3d(-5px, 5px, 0px); box-shadow: 0px 0px 0px #ccc}
.contact_sec .btn_area input[type="submit"]:focus { outline: 0;}

.contact_sec h4 { margin-left: 1em;}
.contact_sec .privacy_box { max-width: 790px; height: 210px; overflow-y: scroll; padding: 15px; border: solid 1px #666; margin: auto;}

.wpcf7-spinner { display: block; margin: 20px auto;}
.wpcf7-list-item { margin: 0 1em 0 0;}
.wpcf7-not-valid-tip { display: inline-block;}

[data-class="wpcf7cf_group"] { padding-top: 10px;}
[data-class="wpcf7cf_group"] input, [data-class="wpcf7cf_group"] select { margin: 0px !important;}

/* ------------------------
	STAFF
------------------------ */

.staff_wrap .text01 { font-size: 1.3em; letter-spacing: 0.1em;}
.staff_wrap .text02 { font-size: 3.4em; letter-spacing: 0.05em;}

.staff_list { display: flex; flex-wrap: wrap; margin: auto -2%;}
.staff_list li { width: 29.3333%; margin: 0px 2% 80px;}
.staff_list .img_box { max-width: 300px; margin: auto;}
.staff_list .img_box img { border: solid 4px #007bc6; border-radius: 100%;}
.staff_list dl { display: table; border: solid 2px #000; background: #fff; left: 0px; bottom: 10px; font-size: 1.15em; line-height: 1.4;}
.staff_list dl > * { display: table-cell; vertical-align: middle; padding: 1px 0.6em;}
.staff_list dt { background: #000; color: #fff;}


/* ページャー(アーカイブ) */
.pagination span.current, .pagination a {
	margin: 0px 4px 5px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	text-decoration: none;
	background-color: #fff;
	border-radius: 3px;
	min-width: 40px;
	height: 40px;
	line-height: 40px;
	padding: 0px 8px;
	color: #004ea8;
	font-weight: bold;
	-moz-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
}
.pagination span.current, .pagination a:hover { background-color: #004ea8; color: #fff;}


/* loan */
.loan { padding: 40px 0px;}


