@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@700&family=Zen+Kaku+Gothic+New:wght@700&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;
	font-weight: 500;
	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-top: 1px solid #707070;
	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;
	color: #333;
	font-size: 1em;
	line-height: 1.6;
	position: relative;
	min-width: 1030px;
}

.fo_zen { font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 700;}
.fo_quick { font-family: "Quicksand", sans-serif; font-weight: 700;}

.bold, .bold * { font-weight: 700;}

p { margin-bottom: 25px;}
p:last-child { margin-bottom: 0px;}

a { color: #333; text-decoration: none;}
a:hover, a:active { color: #1146A8;}

a.fo_blue03 { text-decoration: underline;}
a.fo_blue03:hover { 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;}
.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;}
.fo135 { font-size: 1.35em !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;}
.fo18 { font-size: 1.8em !important;}
.fo20 { font-size: 2em !important;}

.lh12 { line-height: 1.2;}
.lh14 { line-height: 1.4;}
.lh16 { line-height: 1.6;}
.lh18 { line-height: 1.8;}
.lh20 { line-height: 2;}

.fo_white { color: #FFFFFF;}
.fo_blue { color: #1146A8;}
.fo_blue02 { color: #011F88;}
.fo_blue03 { color: #386BA7;}
.fo_yellow { color: #FCEE21;}
.fo_red { color: #FF0000;}

/* ボックス */
.cont1000 { max-width: 1030px; padding: 0px 15px; margin: 0px auto;}
.cont1200 { max-width: 1230px; padding: 0px 15px; margin: 0px auto;}
.cont1400 { max-width: 1430px; padding: 0px 15px; margin: 0px auto;}

.left { float: left;}
.right { float: right;}

.pos_rel { position: relative;}
.pos_ab { position: absolute;}

.z50 { z-index: 50;}
.z-1 { z-index: -1;}

.break_keep { word-break: keep-all; overflow-wrap: anywhere;}

.ta_center { text-align: center !important;}
.ta_right { text-align: right !important;}
.ta_left { text-align: left !important;}
.ta_right-s_center { text-align: right !important;}
.ta_left-s_center { text-align: left !important;}
.ta_center-s_left { text-align: center !important;}

.back_white { background-color: #fff !important;}
.back_blue { background-color: #E2F0FF !important;}
.back_blue02 { background-color: #011F88 !important;}

@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;}

.mb30-15 { margin-bottom: 30px !important;}
.mb40-20 { margin-bottom: 40px !important;}
.mb50-30 { margin-bottom: 50px !important;}
.mb60-30 { margin-bottom: 60px !important;}
.mb80-40 { margin-bottom: 80px !important;}
.mb100-60 { margin-bottom: 100px !important;}
.mb120-60 { margin-bottom: 120px !important;}
.mb160-80 { margin-bottom: 160px !important;}

/* clearFix */
.clearFix { zoom: 100%;}
.clearFix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

/* ------------------------
	ヘッダー
------------------------ */

body { padding-top: 7.62em;}

.header { position: fixed; z-index: 999; width: 100%; left: 0; top: 0; display: flex; justify-content: space-between; align-items: center; padding: 2em;}
.header h1 { width: 28%;}

.gn { display: flex; gap: 2em; align-items: center;}
.gn > li > span { cursor: pointer;}

.gn .dd_wrap { position: absolute; width: 100%; left: 0; padding: 3em 0; display: none;}
.gn .dd_wrap .cont1000 { max-width: 900px; margin: auto;}
.gn .dd_wrap ul { display: flex; gap: 1.3em 2.5em; flex-wrap: wrap;}
.gn .dd_wrap li { background: url("../images/common/gn_arrow.svg") no-repeat left center; background-size: 0.5em auto; padding-left: 1em;}

.gn .btn_area a { display: block; color: #fff; font-weight: bold; font-size: 1.15em; text-decoration: none; background: url("../images/common/header_btn01.svg") no-repeat calc(100% - 0.8em) #011F88; background-size: 1.2em auto; border-radius: 3em; padding: 0.75em 3.5em 0.75em 2em;}

@media only screen and (max-width: 1200px) {
  body { padding-top: 113px;}
  
  .header { padding: 2em 1em; min-width: calc(1000px + 2em);}
  .gn { gap: 1.5em;}
  .gn .btn_area a { font-size: 1em; padding: 0.75em 3em 0.75em 1.5em;}
}


/* ------------------------
	フッター
------------------------ */

.cta_list { display: flex; flex-flow: column; align-items: center; gap: 0.8em;}
.cta_list a { display: flex; flex-flow: column; align-items: center; justify-content: center; background-color: #fff !important; color: #1146A8; border-radius: 3rem; width: 20rem; height: 4.5rem; padding-left: 2em;}
.cta_list li:first-child a { background: url("../images/common/ico_tel.svg") no-repeat 2.5rem center; background-size: 1.6rem auto;}
.cta_list li:last-child a { background: url("../images/common/ico_mail.svg") no-repeat 2rem center; background-size: 2.3rem auto; padding-left: 3em;}

.cta_box { background: #386BA7; padding: 50px 0 60px;}
.cta_box .btn_area a { display: inline-block; background-color: #fff; color: #1146A8; font-weight: bold; font-size: 1.2em; text-decoration: none; border-radius: 3em; padding: 1em 2em; width: 100%; max-width: 17em;}

.footer .bg01 { background: url("../images/common/footer_bg.jpg") no-repeat center center; background-size: cover; padding: 50px 0;}
.footer .bg01 h2 { border-bottom: solid 1px #333; padding-bottom: 0.2em;}
.footer .bg01 .box01, .footer .bg01 .box02 { display: flex; justify-content: space-between; align-items: flex-end; gap: 1.5em;}
.footer_nav { display: flex; gap: 3em;}
.footer_nav > ul { display: flex; flex-flow: column; gap: 1.3em;}
.footer_nav > ul > li > a, .footer_nav > ul > li > span { font-weight: bold; color: #003686;}
.footer_nav > ul > li > a:hover { opacity: 0.7;}
.footer_nav > ul ul { margin: 0.3em 0 0 1em;}
.footer_nav > ul > li li { position: relative; line-height: 2; padding-left: 1.2em;}
.footer_nav > ul > li li:before { content: ""; position: absolute; width: 0.7em; height: 1px; background: #333; left: 0; top: 0.95em;}

.footer_bnr { display: flex; gap: 0.7em;}

.footer .copy { background: #333; padding: 1em;}

/*------------------------------------------------------

	トップページ

------------------------------------------------------*/

.mainimage .text01 { font-size: 2.9em; padding: 1em 0 1.5em; color: #000;}
.mainimage .text01 span { display: inline-block;}
.mainimage .text01 span:before { content: ""; position: absolute; z-index: -1; background-repeat: no-repeat; background-position: center center; background-size: 100% auto;}
.mainimage .text01 .bg01:before { background-image: url("../images/top/main_text_bg01.svg"); width: 1.6em; height: 1.8em; left: 0; top: 0;}
.mainimage .text01 .bg02:before { background-image: url("../images/top/main_text_bg02.svg"); width: 2.05em; height: 1.1em; left: 0; top: 0.3em;}
.mainimage .text01 .bg03:before { background-image: url("../images/top/main_text_bg03.svg"); width: 5.1em; height: 0.4em; left: 0; bottom: 0.1em;}
.mainimage video { width: 100%; height: auto; vertical-align: bottom;}

.top_sec01 { background: url("../images/top/top_sec01_bg.png") no-repeat center bottom; background-size: 100% auto; padding: 100px 0 220px;}
.top_sec01 .ttl_box { background: #003686; max-width: 640px; margin: auto; border-radius: 0.4em; font-size: 1.7em; padding: 0.7em 3em;}
.top_sec01 .ttl_box:after { content: ""; position: absolute; background: url("../images/top/top_sec01_ttl.svg") no-repeat center bottom; background-size: auto 100%; width: 100%; left: 0; height: 1em; bottom: -0.8em;}
.top_sec01 .ttl_box h2 { border-bottom: dashed 2px #fff; padding-bottom: 0.2em; display: inline-block;}
.top_sec01 .img01 { bottom: -80px; left: calc(50% - 700px);}

.top_sec02 { background: #FAF6F2; padding: 120px 0;}
.top_sec02 .en_ttl { font-size: 5.2em; line-height: 0.8; color: rgba(56,107,167,0.4);}
.top_sec02 .list01 { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: -6%;}
.top_sec02 .list01 li { width: 24.4%;}
.top_sec02 .list01 li:nth-child(1) { order: 1;}
.top_sec02 .list01 li:nth-child(2) { order: 4;}
.top_sec02 .list01 li:nth-child(3) { margin: 15% 0 0 2%; order: 2;}
.top_sec02 .list01 li:nth-child(4) { margin-top: 10%; order: 3;}
.top_sec02 .list01 li:nth-child(5) { margin: -2% 0 0 6%; order: 5;}
.top_sec02 .list01 li:nth-child(6) { order: 6; margin: 4% -3% 0 0;}
.top_sec02 .list01 li:nth-child(7) { order: 7; margin-right: 4%;}

.top_sec03 section { padding: 20px;}
.top_sec03 .back_white { max-width: 620px; border-radius: 10em; padding: 30px;}
.top_sec03 section:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; width: calc(50vw + 70%); background-size: auto 100% !important;}
.top_sec03 section:nth-of-type(1):before { background: url("../images/top/top_sec03_bg01.png") no-repeat left center; left: 0;}
.top_sec03 section:nth-of-type(2):before { background: url("../images/top/top_sec03_bg02.png") no-repeat right center; right: 0;}
.top_sec03 section:nth-of-type(2) .back_white { margin-left: auto;}


.top_sec04 .box01 { border-radius: 1em; padding: 5%; display: flex; justify-content: space-between; gap: 30px 5%;}
.top_sec04 .box01 .main_box { width: 70%;}

.art_dl { display: flex; align-items: center; border-bottom: solid 1px #707070; padding-bottom: 0.8em;}
.art_dl:not(:last-child) { margin-bottom: 1.8em;}
.art_dl dt { width: 8em;}
.art_dl dd { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.art_dl a { font-weight: bold;}


/*------------------------------------------------------

	下層ページ

------------------------------------------------------*/

/* 共通 */
.show_sp { display: none;}
.over_hidden, .img_hover { overflow: clip;}
.flex01 { flex: 1;}

.img_hover img { transition: 0.3s;}
.img_hover a:hover img, a:hover .img_hover img { transform: scale(1.05);}

.more_btn a { display: inline-block; font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 700; font-size: 1.25em; line-height: 1.6; color: #fff; text-decoration: none; background: url("../images/common/header_btn01.svg") no-repeat calc(100% - 1em) center #011F88; background-size: 1em auto; padding: 0.4em 3em 0.5em 1.2em; border-radius: 2em; transition: 0.3s;}
.more_btn a:hover, .more_btn_small a:hover { opacity: 0.7;}

.more_btn_small a { display: inline-block; font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 700; line-height: 1.6; color: #fff; text-decoration: none; background: url("../images/common/header_btn01.svg") no-repeat calc(100% - 1em) center #011F88; background-size: 1em auto; padding: 0.05em 3em 0.1em 1.2em; border-radius: 2em; transition: 0.3s; font-size: min(4vw,1em);}

.more_btn02 a { display: inline-block; background: url("../images/common/ico_arrow_white.svg") no-repeat calc(100% - 1.3em) center #011F88; background-size: 1.25em auto; color: #fff; font-family: "Zen Kaku Gothic New", sans-serif; text-decoration: none; border-radius: 0.6em; padding: 0.4em 4em 0.4em 1.2em; transition: 0.3s;}
.more_btn02 a:hover { transform: translateX(0.5em);}

/* animation */
.scroll_in { opacity: 0;}
.displayed { animation-duration: 1s; animation-fill-mode: both;}
.delay02s { animation-delay: 0.2s;}
.delay04s { animation-delay: 0.4s;}
.delay06s { animation-delay: 0.6s;}
.delay08s { animation-delay: 0.8s;}
.duration2s { animation-duration: 2s;}
.duration3s { animation-duration: 3s;}

.fadeInUp.displayed { animation-name: fadeInUp; animation-duration: 0.8s; animation-timing-function: ease; animation-fill-mode: forwards;}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


.pagettl { background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.75) 60%, #fff 100%), url("../images/common/pagettl_bg.png") no-repeat left center; background-size: 100% 100%, cover; padding: 4.5em 0;}

.heading_btmline { border-bottom: solid 1px #011F88; padding-bottom: 0.4em;}

.heading_back { background: #E2F0FF; border-left: solid 4px #011F88; font-size: min(7.5vw,1.7em); padding: 0.5em 0.6em;}

.heading_leftshape { padding-left: 3.5em;}
.heading_leftshape:before { content: ""; position: absolute; background: #386BA7; border-top-right-radius: 1em; border-bottom-right-radius: 1em; width: 3em; height: 1.6em; top: 0.05em; left: 0;}
.heading_leftshape.blue02:before { background: #011F88;}


/* ------------------------
	company
------------------------ */

.com_sec02 .text01 { padding: 1.5em 0.5em;}

.com_sec04 table, .com_sec05 table, .com_sec06 table { width: 100%;}
.com_sec04 th, .com_sec04 td { padding: 0.3em 0;}
.com_sec04 th { width: 9em;}

.com_sec05 th, .com_sec05 td { padding: 0.1em 0;}
.com_sec05 th { width: 4.3em;}
.com_sec05 td:nth-of-type(1) { width: 7em;}

.com_sec06 th, .com_sec06 td { padding: 0.2em 0;}
.com_sec06 th { width: 12em;}

.com_sec07 .list01 { display: flex; gap: 20px 1em; flex-wrap: wrap;}


/* ------------------------
	sales
------------------------ */

.under_box01 { border: solid 1px #707070; padding: 30px 40px;}
.under_box01 .under_ttl01 { border: solid 1px #707070; border-left: none; border-top-right-radius: 3em; border-bottom-right-radius: 3em; padding: 0.5em 40px; margin-left: -40px;}
.under_box01 h5 { border-bottom: solid 1px #707070; padding-bottom: 0.1em;}
.sales_sec01 .box01, .pur_sec02 .box01 { display: flex; gap: 1.5em;}
.sales_sec01 .box01 > figure, .pur_sec02 .box01 > figure { width: 35%;}
.sales_sec01 .box01 .box_inner, .pur_sec02 .box01 .box_inner { flex: 1;}
.sales_sec01 .box02, .pur_sec02 .box02 { display: table;}
.sales_sec01 .box02 section:not(:last-child), .pur_sec02 .box02 section:not(:last-child) { border-bottom: solid 1px #707070; padding-bottom: 10px; margin-bottom: 15px;}

.sales_btn01 a { display: flex; align-items: center; gap: 1em 1.5em; justify-content: space-between; background: #D9D9D9; padding: 1em 2em 1em 1em; border-radius: 1em; max-width: 38em;}
.sales_btn01 figure { border-radius: 0.4em; width: 45%;}
.sales_btn01 a p { background: url("../images/common/ico_arrow.svg") no-repeat right center; background-size: 2em auto; padding: 1em 3.5em 1em 0; flex: 1; text-align: center;}


/* ------------------------
	insurance
------------------------ */

.ins_sec01 .box01 { display: flex; gap: 30px 5%;}
.ins_sec01 .box01 .box_inner { width: 50%;}

.ins_sec01 .sec02 .list01 { display: flex; justify-content: center; gap: 4%;}
.ins_sec01 .sec02 .list01 li { flex: 1;}

.ins_sec01 .sec03 .list01 { display: flex; flex-wrap: wrap; gap: 2em 8%; justify-content: center;}

.ins_sec01 .sec04 dl { display: flex; align-items: center; gap: 2em; border: solid 1px #707070; width: fit-content; padding: 2.2em 2.5em;}

.ins_sec01 .box02 { border: solid 1px #707070; padding: 2em;}


/* ------------------------
	ss
------------------------ */

.ss_sec01 .heading_back { font-size: min(7.5vw,2.1em); padding: 0.2em 0.6em;}
.ss_sec01 h4 { border-bottom: solid 1px #011F88; font-size: 1.45em; padding-bottom: 0.3em;}
.ss_sec01 .btn_area { right: 0; bottom: 0.6em;}
.ss_sec01 .btn_area a { display: inline-block; background: url("../images/common/header_btn01.svg") no-repeat calc(100% - 1.3em) center #011F88; background-size: 0.9em auto; color: #fff; text-decoration: none; border-radius: 0.6em; padding: 0.2em 3em 0.2em 1.2em;}

.ss_sec01 .box01 { display: flex; gap: 0 5%;}
.ss_sec01 .box01 .img_box { width: 42%;}
.ss_sec01 .box01 .img_box figure:last-child img { max-width: initial;}
.ss_sec01 .box01 .table_box { width: 40%;}
.ss_sec01 table { width: 100%;}
.ss_sec01 tr { border-bottom: solid 1px #707070;}
.ss_sec01 th, .ss_sec01 td { padding: 0.6em 0;}
.ss_sec01 th { text-align: left; width: 7em;}


.ss_under_sec01 { background: url("../images/ss/ss_bg01.svg") no-repeat center bottom; background-size: 100% auto; padding-bottom: 20%;}
.ss_under_sec01 .img01 { bottom: -60px; right: 10%;}
.ss_under_sec01 h3 { font-size: 2.1em;}
.ss_under_sec01 .box01 { display: flex; gap: 30px 3%;}
.ss_under_sec01 .box01 .box_inner { width: 50%;}
.ss_under_sec01 .box01 h4 { border-bottom: solid 1px #011F88; padding-bottom: 0.5em;}

.ss_under_sec01 .box02 .list01 { display: flex; flex-flow: column; align-items: center; gap: 0 1.5em;}
.ss_under_sec01 .box02 .list01 li { background: #FFBA76; border-radius: 1em; padding: 1em 2.5em; display: flex; align-items: center; min-height: 6em; max-width: calc((100% - 1.5em) / 2);}
.ss_under_sec01 .box02 .list01 li:after { content: url("../images/ss/arrow.svg"); position: absolute; width: 37px; height: auto; bottom: -29px; left: 50%; transform: translateX(-50%);}

.ss_under_sec01.asahi .box02 .list01 li:nth-child(1) { align-self: flex-start;}
.ss_under_sec01.asahi .box02 .list01 li:nth-child(2) { align-self: flex-end; margin: -3em 0 3em;}

.ss_under_sec01.higashi .box02 .list01 li:nth-child(2) { max-width: min(100% - 31em);}
.ss_under_sec01.higashi .box02 .list01 li:nth-child(3) { max-width: 48em;}

.ss_under_sec01.anjo .box02  { max-width: 1100px; margin: auto;}

.ss_under_sec02 .box01 { border: solid 1px #707070; border-radius: 1.5em; padding: 2em 4%;}
.ss_under_sec02 .map iframe { width: 100%; height: 255px;}
.ss_under_sec02 th, .ss_under_sec02 td { vertical-align: top; padding: 1em 0;}
.ss_under_sec02 th { width: 12em;}
.ss_under_sec02 .btn_area { right: 4%; top: 2em;}
.ss_under_sec02 .copy_btn { border: none; background: #386BA7; color: #fff; font-size: 0.9em; border-radius: 3em; text-align: center; width: 15em; height: 3em; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 0.7em; line-height: 3.2;}
.ss_under_sec02 .copy_btn img { vertical-align: middle; width: 1.6em; margin-top: 0.2em;}
.copy_btn.done .icon { display: none;}

.ss_under_sec02 .more_btn a { font-size: 1.5em; background-size: 0.9em auto; background-position: calc(100% - 1.7em) center; padding: 1em 4em 1em 2em;}


/* ------------------------
	maintenance
------------------------ */

.main_sec01 .box01 { display: flex; gap: 30px 2em;}
.main_sec01 .box01 .box_inner { width: 59%;}
.main_sec01 .box01 section:not(:last-child) { border-bottom: solid 1px #707070; padding-bottom: 1em; margin-bottom: 1em;}

.main_sec01 .under_box01 .main_box01 { display: flex; gap: 40px 7%;}
.main_sec01 .under_box01 iframe { width: 100%; height: 100px;}
.main_sec01 .under_box01 section:first-child h5 { border-bottom: solid 1px #707070; padding-bottom: 0.4em;}
.main_sec01 .under_box01 section:last-child section:not(:last-child) { border-bottom: solid 1px #707070; padding-bottom: 0.7em; margin-bottom: 0.7em;}
.main_sec01 .under_box01 section:last-child h5 { border-bottom: none; padding: 0;}

.main_table_box h5 { border-bottom: solid 1px #707070; padding-bottom: 0.2em; display: table;}
.main_table_box .list_check { display: flex; gap: 1em 3.5em; flex-wrap: wrap;}
.main_table_box .list_check li { background: url("../images/common/ico_check.svg") no-repeat left top; background-size: 1.4em auto; padding-left: 1.8em;}
.main_table_box .list_check .fo08 { font-weight: 500;}


/* ------------------------
	purchase
------------------------ */

.pur_sec01 .list01 { display: flex; gap: 40px 6%;}


/* ------------------------
	coating
------------------------ */

.coat_sec01 .box01 { display: flex; gap: 30px 4%;}
.coat_sec01 h4 { border-bottom: solid 1px #011F88; padding-bottom: 0.2em;}

.coat_sec02 .box01 { display: flex; gap: 40px 8%;}
.coat_sec02 .map iframe { width: 100%; height: 120px;}


/* ------------------------
	rental
------------------------ */

.rent_sec01 .list01 { display: flex; gap: 1em 0.7em;}
.rent_sec01 .list01 li { background: #E2F0FF; border-radius: 0.6em; padding: 1.5em 1.3em 1.3em;}
.rent_sec01 .list01 h4 { margin: auto -1em;}

.rent_sec01 .under_box01 section { display: flex; gap: 15px 10%;}
.rent_sec01 .under_box01 .map { width: 40%;}
.rent_sec01 .under_box01 .map iframe { width: 100%; height: 100%;}


/* ------------------------
	recruit
------------------------ */

.rec_header h3 { font-size: 2.2em;}

.rec_header .page_nav ul { display: flex; gap: 1.3em;}
.rec_header .page_nav li { width: calc((100% - 3.9em) / 4);}
.rec_header .page_nav a { display: block; background: url("../images/common/ico_arrow_down02.svg") no-repeat calc(100% - 2em) center #011F88; background-size: 1.2em; color: #fff; font-size: clamp(0.9em,1.3vw,1.25em); text-decoration: none; border-radius: 0.7em; padding: 1.5em 3em 1.5em 0.5em; transition: 0.3s;}
.rec_header .page_nav a:hover { transform: translateY(0.3em);}

.entry_btn a { display: inline-block; font-size: 1.75em; line-height: 1.6; background: url("../images/common/ico_circle_orange.svg") no-repeat calc(100% - 1em) center #FF9B26; background-size: 0.8em auto; color: #fff; text-decoration: none; padding: 0.7em 2.5em 0.7em 1em; border-radius: 3em;}

.rec_sec .box01 { display: flex; gap: 0 3%;}
.rec_sec .box01 > figure { width: 34%;}
.rec_sec .box01 h3.back_blue { background: #EDEFF5 !important; font-size: 2.1em; line-height: 1.5; padding: 0.2em 0.8em;}
.rec_sec .box01 .list01 { display: flex; justify-content: center; gap: 8%;}
.rec_sec .box01 .list01 .opacity00 { opacity: 0;}

.rec_sec dl { border: solid 2px #000000; border-radius: 8em; padding: 2em 8%;}
.rec_sec dt { border-bottom: solid 1px #707070; padding-bottom: 0.8em;}

.more_btn.big a { font-size: 1.6em; letter-spacing: 0.05em; background-size: 0.75em auto; padding: 0.8em 5em 0.8em 3.5em;}


/* ------------------------
	contact
------------------------ */

.con_nav ul { display: flex; gap: 20px 4%; flex-wrap: wrap; justify-content: center;}
.con_nav a { display: block; background: url("../images/common/ico_arrow_down.svg") no-repeat calc(100% - 1.5em) center #386BA7; background-size: 0.9em auto; color: #fff; font-weight: bold; font-size: 1.45em; border-radius: 0.4em; padding: 0.7em 2em 0.7em 1.2em; min-width: 16em; transition: 0.3s;}
.con_nav a:hover { transform: translateY(0.3em);}

.link_pad { padding-top: 150px; margin-top: -150px !important;}

.con_sec01 .box01 { display: flex; flex-wrap: wrap; gap: 20px 4%;}
.con_sec01 .box_inner01 { width: calc(96% / 2);}
.con_sec01 h4 { position: relative; padding-left: 1.4em;}
.con_sec01 h4:before { content: ""; position: absolute; width: 0.85em; height: 0.85em; background: #011F88; left: 0; top: 0.35em;}
.con_sec01 .back_blue { border-radius: 1.5em; padding: 1.5em 2rem;}
.con_sec01 .back_blue .list01 { display: flex; gap: 0.7em; flex-flow: column;}
.con_sec01 .back_blue .list01 a, .con_sec01 .back_blue .list01 li > span { display: table; border-radius: 3em; font-size: 1.25em; font-weight: bold; color: #fff; background: #386BA7; border: solid 2px #386BA7; text-decoration: none; padding: 0.2em 2.5em;}
.con_sec01 .back_blue .list01 li > span { background: #fff; border-color: #011F88; color: #333;}
.con_sec01 .back_blue .text01 { border: solid 1px #707070; padding: 1em;}
.con_sec01 .back_blue h5 { position: relative; display: table; padding-bottom: 0.6em;}
.con_sec01 .back_blue h5:before { content: ""; position: absolute; right: 0; left: -2rem; height: 5px; background: #386BA7; bottom: 0;}

.con_sec02 { max-width: 900px; margin: auto;}
.contact_sec { border: solid 1px #707070; padding: 3em;}

.contact_sec dl { display: flex;; align-items: flex-start; gap: 0 0.8em;}
.contact_sec dt { width: 15em; min-height: 3em; display: flex; justify-content: space-between; align-items: center;}
.contact_sec .privacy dt { min-height: 2em;}
.contact_sec dd { flex: 1;}
input[type="text"], input[type="email"], input[type="tel"], input[type="date"], textarea, select {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	padding: 0.5em;
	background-color: #EAEAEA;
	border: none;
	vertical-align: middle;
	width: 100%;
}
.contact_sec .width_auto input[type="text"], .contact_sec .width_auto input[type="tel"] { width: auto;}

.contact_sec .btn_area input {
  font-family: "Zen Kaku Gothic New", sans-serif;
	display: inline-block;
	color: #fff;
	font-size: 1.25em;
  font-weight: 700;
	text-decoration: none;
	text-align: center;
	background: url("../images/common/header_btn01.svg") no-repeat calc(100% - 1em) center #011F88;
  background-size: 0.95em auto;
	border: none;
  border-radius: 3em;
	padding: 0.6em 4em 0.6em 2em;
	outline: none;
	cursor: pointer;
	-webkit-appearance: none;
	transition: 0.3s;
}
.contact_sec .btn_area input:hover { opacity: 0.7;}
.contact_sec .btn_area input:focus { outline: 0;}

.wpcf7-spinner { display: block; margin: 20px auto;}
.wpcf7-radio input { margin-top: -0.2em;}
.wpcf7-not-valid-tip { display: inline-block;}
.wpcf7-list-item { margin: 0 2em 0 0;}
.wpcf7-checkbox, .wpcf7-radio { display: block; padding: 0.6em 0;}

.privacy_box { border: solid 1px #707070; padding: 1.5em; height: 280px; overflow-y: auto;}


/* ------------------------
	topics
------------------------ */

.archive_art { display: flex; flex-flow: column; gap: 30px;}
.archive_art a { display: block; border-bottom: solid 1px #707070; padding-bottom: 1em;}
.archive_art dl { display: flex; align-items: center;}
.archive_art dt { width: 8em;}
.archive_art dd { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1;}
.archive_art p { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}

.single_head { display: flex; align-items: flex-end; gap: 0.5em 0; border-bottom: solid 4px #386BA7; padding-bottom: 0.3em;}
.single_head .date { width: 8em;}

.blog_content h2 { font-weight: bold; font-size: 1.5em; line-height: 1.4; color: #386BA7; padding-left: 1.4em; margin-bottom: 1.5em; position: relative; clear: both;}
.blog_content h2:before { content: ""; position: absolute; width: 0.9em; height: 0.9em; background: #386BA7; border-radius: 50%; left: 0; top: 0.3em;}
.blog_content h3 { font-size: 1.25em; font-weight: bold; line-height: 1.4; color: #004B9E; margin-bottom: 30px; clear: both;}
.blog_content h4, .blog_content h5, .blog_content h6 { font-weight: bold; font-size: 1.2em; line-height: 1.6; margin-bottom: 25px; clear: both;}
.blog_content blockquote { border: solid 1px #707070; background: #fff; padding: 1.5em 2em; margin-bottom: 40px; clear: both;}
.blog_content blockquote p:last-child { margin-bottom: 0px;}
.blog_content ul { margin-bottom: 30px;}
.blog_content li { position: relative; padding-left: 1em; margin-bottom: 1em;}
.blog_content li:before { content: ""; position: absolute; width: 0.7em; height: 0.85em; left: 0px; top: 0.5em; background: #004B9E; clip-path: polygon(0 0, 100% 50%, 0 100%);}
.blog_content table { width: 100%; border: solid 1px #bbbbbb;}
.blog_content td { border: solid 1px #bbbbbb; padding: 0.5em 0.6em; vertical-align: middle;}
.blog_content iframe { width: 100%;}

/*WP用 投稿表示*/
img.aligncenter { display: block; margin: 20px auto;}
img.alignright { margin: 20px 0 20px 20px; float: right;}
img.alignleft { margin: 20px 20px 20px 0; float: left;}

/* ページャー */
.pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 0.7em;}
.pagination span.current, .pagination a {
	display: block;
	text-align: center;
	text-decoration: none;
	color: #000;
  min-width: 2em;
  line-height: 2;
  padding: 0 0.5em;border-radius: 2em;
}
.pagination span.current, .pagination a:hover { background: #386BA7; color: #fff;}


