@charset "utf-8";
/* Author: S.H */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
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, sub, 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, a { border: 0; outline: 0; vertical-align: baseline; -webkit-box-sizing: border-box; box-sizing: border-box; }
ol, ul { list-style: none; }

body {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-display: swap; font-size: 16px;}

#wrapper {width: 100%; margin: 0 auto; overflow: hidden;}

.container {width: 100%; max-width: 1200px; margin: 0 auto;}
.container:after {content: ""; clear: both; display: block;}

a {-webkit-transition: all ease 0.2s; -moz-transition: all ease 0.2s; -o-transition: all ease 0.2s; transition: all ease 0.2s; box-sizing: border-box;}
a:link, a:visited {color: #333; text-decoration: none;}
a:hover, a:visited {color: #333; text-decoration: none;}
a:hover {opacity: .7;}

img {max-width: 100%; height: auto; line-height: 1; vertical-align: bottom;}
img.max {width: 100%;}

p {line-height: 1.8; margin: 0;}

.flexbox {display: -ms-flexbox; display: -webkit-box; display: flex; flex-wrap: wrap; align-items: top; justify-content: space-between;}
.flexbox.mid {align-items: center;}
.flexbox.center {justify-content: center;}
.flexbox.reverse {flex-direction: row-reverse;}

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

.taL {text-align: left;}
.taC {text-align: center;}
.taR {text-align: right;}

.rel {position: relative;}

.mincho {font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.gothic {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.w20 {width: 20%;}
.w30 {width: 30%;}
.w70 {width: 70%;}
.w80 {width: 80%;}
.w1200 {max-width: 1200px;}

.txt-ll {font-size: 1.25em;}
.txt-l {font-size: 1.125em;}
.txt-s {font-size: 0.875em;}
.txt-ss {font-size: 0.75em;}

.tcol-red {color: #F00;}
.tcol-blue {color: #00F;}

.pc-only {display: block;}
.sp-only {display: none;}
.pc-block {display: block;}
.sp-block {display: none;}
.pc-inline {display: inline;}
.sp-inline {display: none;}


@media screen and (max-width: 1366px) {
}

@media screen and (max-width: 1024px) {
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	body {}
	.container {max-width: 100%;}
	p {line-height: 1.4;}
	.w1200 {width: auto;}
	.pc-only {display: none !important;}
	.sp-only {display: block;}
	.pc-block {display: none !important;}
	.sp-block {display: block;}
	.pc-inline {display: none !important;}
	.sp-inline {display: inline;}
	.pc-hidden {display: block;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
}

/* ---------------------------------------------------
	bg-change
------------------------------------------------------ */
/*.bg-change01 { background-color: #FFF;}
.bg-change02 { background-color: #000;}
.bg-change03 { background-color: #00F;}*/

/* ---------------------------------------------------
	font-size-change
------------------------------------------------------ */
/*.is-fs-m {font-size: 120%;}
.is-fs-l {font-size: 140%;}*/

/* ---------------------------------------------------
	header
------------------------------------------------------ */
#header {width: 100%; height: 100px; position: relative; background: #03526F; box-shadow: 0 5px 8px rgba(0,0,0,0.15); z-index: 1000;}
#header .h-container {display: flex; justify-content: space-between; align-items: center; height: 100%;}
#header .header-logo {min-width: 16.71875%;  max-width: 321px; color: #FFF; margin-left: 4.58%; position: relative; z-index: 2000; padding: 0;}
#header .header-logo a {display: block;}
#header .header-contents {display: flex; justify-content: space-between; align-items: center; margin-right: 4.58%;}
#header .header-contents .header-tel {color: #FFF;font-size: 26px; font-family: Arial, Helvetica, "sans-serif"; font-weight: 400; padding-left: 50px; border-left: 1px solid #FFF;}
#header .header-contents .header-tel a {display: inline-block; color: #FFF; pointer-events: none;}
#header .header-contents .header-tel span {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: normal; font-size: 16px;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
#header {width: 100%; height: 80px; border-bottom: 1px solid #FFF;}
#header .header-logo {width: 70%;  max-width: 70%; margin-left: 0; padding: 15px;}
#header .header-contents .header-tel {display: none;}
}

/* ---------------------------------------------------
	gnavi
------------------------------------------------------ */
.gnavi {}
.gnavi > ul {display: flex; justify-content: space-between; align-items: center; flex-wrap: nowrap; margin: 0; list-style: none; padding: 0 50px 0 0;}
.gnavi > ul > li {margin-right: 50px; margin-left: 0; padding: 0; list-style: none; color: #FFF; font-size: 22px; font-weight: bold; white-space: nowrap; position: relative;}
.gnavi > ul > li:last-child {margin-right: 0;}
.gnavi > ul > li a {color: #FFF; font-size: 22px; font-weight: bold; white-space: nowrap;}
.gnavi > ul > li ul {display: none; position: absolute; top: 0; left: -50%; padding: 62px 0 0; list-style: none;}
.gnavi > ul > li:hover ul {display: block;}
.gnavi > ul > li ul li {display: block;}
.gnavi > ul > li ul li a {display: block; min-width: 170px; min-height: 50px; color: #03526F; font-size: 20px; font-weight: bold; line-height: 1; padding: 15px 0; text-align: center; background: #F3F3F3; margin-bottom: 1px;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
    .gnavi {display: none; width: 100vw; height: 100vh; background: rgba(3,82,111,0.95); position: fixed; top: 0; left: 0; z-index: 4000;}
    .gnavi > ul {display: block; padding: 100px 0 0 0; width: 100%; max-height: 100%; overflow: scroll;}
    .gnavi > ul li {margin-right: 0; margin-left: 0;  padding: 0; border-bottom: 1px dotted #FFF;}
    .gnavi > ul li a {display: block; width: 100%; padding: 20px 0; text-align: center;}
    .gnavi > ul > li:nth-child(2) > a {pointer-events: none;}
    .gnavi > ul > li ul {display: block; position: relative; top: 0; left: 0; padding: 0;}
    .gnavi > ul > li ul li {display: block;}
    .gnavi > ul > li ul li:last-child {border-bottom: none;}
    .gnavi > ul > li ul li a {color: #03526F; font-size: 20px; padding: 15px 0; background: #F3F3F3; margin-bottom: 0;}
}


/* ---------------------------------------------------
	btn_menu
------------------------------------------------------ */
.btn_menu {display: none; position: fixed; right: 15px; top: 10px; width: 100px; height: 100px; padding: 20px 20px 15px; cursor: pointer; text-align: center; z-index: 9999; background: #03526F;}
.btn_menu .menu-trigger {display: inline-block; position: relative; width: 40px; height: 32px; box-sizing: border-box; transition: all .4s;}
.btn_menu .menu-trigger span {display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 3px; background-color: #FFF;}
.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 4px;}
.btn_menu .menu-trigger span:nth-of-type(2) {top: 14px;}
.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
.btn_menu .menu-trigger.active {-webkit-transform: rotate(180deg); transform: rotate(180deg);}
.btn_menu .menu-trigger.active span {}
.btn_menu .menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(10px) rotate(-35deg); transform: translateY(10px) rotate(-35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(2) {-webkit-transform: translateY(0) rotate(35deg); transform: translateY(0) rotate(35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(3) {opacity: 0;}
.btn_menu .txt {color: #FFF; font-size: 12px; font-family: Arial, Helvetica, "sans-serif"; font-weight: bold; margin-top: 4px;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.btn_menu {display: block; width: 60px; height: 60px; padding: 10px 10px 15px;}
.btn_menu .menu-trigger {width: 40px; height: 26px;}
.btn_menu .menu-trigger span {height: 2px;}
.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 2px;}
.btn_menu .menu-trigger span:nth-of-type(2) {top: 12px;}
.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
}

/* ---------------------------------------------------
	h-container
------------------------------------------------------ */
/*.h-container {display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: #002BA2; z-index: 1500;}
.menu-box {width: 100%; width: 1200px; margin: 37vh auto 0;}
.menu-box ul {display: flex; justify-content: center; text-align: center; margin-bottom: 13vh;}
.menu-box ul li {position: relative; color: #FFF;}
.menu-box ul li:before {content: "/"; display: inline-block;}
.menu-box ul li:first-child:before {content: ""; display: none;}
.menu-box ul li a {display: inline-block; color: #FFF; padding: 0 25px;}

.menu-contact {width: 50%; max-width: 600px; margin: 0 auto;}
.menu-contact table {width: 100%; border-top: 1px solid #FFF; border-left: 1px solid #FFF;}
.menu-contact table td { border-right: 1px solid #FFF; border-bottom: 1px solid #FFF; vertical-align: middle; text-align: center; padding: 20px 0;}
.menu-contact .f-tit { color: #FFF; font-weight: bold; padding: 10px 0;}
.menu-contact .f-tel {margin: 0px 50px;}
.menu-contact .f-tel a {display: block; color: #FFF; font-size: 2em; position: relative; padding-left: 26px; font-family: Arial, Helvetica, "sans-serif";}
.menu-contact .f-tel a:before {content: ""; display: block; position: absolute; top: 50%; left: 0; margin-top: -15px; width: 23px; height: 30px; background: url(../images/header/ico-header-tel2@2x.png) no-repeat top center; background-size: cover;}
.menu-contact .f-mail {margin: 0px 20px;}
.menu-contact .f-mail a {display: flex; justify-content: center; align-items: center; background-color: #E2E911; color: #002BA2; font-size: 1.111em; font-weight: bold; text-align: center; width: 200px; height: 80px; position: relative;}
.menu-contact .f-mail a:before {content: ""; display: block; width: 20px; height: 15px; background: url(../images/header/ico-header-mail@2x.png) no-repeat top center; background-size: cover; margin-right: 10px;}

@media screen and (max-width: 767px) {
.h-container {}
.menu-box {width: 100%; width: 100%; margin: 120px auto 0;}
.menu-box ul {display: block; margin-bottom: 40px;}
.menu-box ul li {border-bottom: 1px solid #FFF;}
.menu-box ul li:before {content: ""; display: none;}
.menu-box ul li a {display: inline-block; color: #FFF; padding: 20px 0;}

.menu-contact {display: none;}
}*/

/* ---------------------------------------------------
	side-contact
------------------------------------------------------ */

@media screen and (max-width: 767px) {
}

/* ---------------------------------------------------
	下層ページタイトル
------------------------------------------------------ */
.pagetit {width: 100%; height: 190px; position: relative; background: #FFF; text-align: center; box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
.pagetit .page-title {margin: 0 auto; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-size: 40px; font-weight: bold; line-height: 1.5; color: #000; letter-spacing: 0.05em; padding-top: 60px;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.pagetit {width: 100%; max-width: 100%; height: 100px;}
.pagetit .page-title {font-size: 20px; padding-top: 35px;}
}

/* ---------------------------------------------------
	パンくず
------------------------------------------------------ */
.topicpath { background: none; width: 100%; text-align: center; padding: 15px 0; margin-bottom: 0;}
.topicpath .acms-container {max-width: 1200px;}
.topicpath-list { width: 100%; padding: 0; text-align: left;}
.topicpath-item { float: none; display: inline-block; background: none; padding: 0; font-size: 15px; line-height: 1.2; font-weight: 200; }
.topicpath-item a {display: inline;}
.topicpath-item:first-child { padding: 0;}
.topicpath-item:before { display: inline-block; content: "/"; padding: 0 10px;}
.topicpath-item:first-child:before { display: inline-block; content: ""; padding: 0;}
.topicpath-link { font-size: 15px; font-weight: 200;}

@media screen and (max-width: 767px) {
}

/* ---------------------------------------------------
	pager
------------------------------------------------------ */
.pager {margin: 0 0 50px;}
.pager li {width: 50px; height: 50px; border: 1px solid #000; border-radius: 0; font-size: 20px; vertical-align: middle; background: #FFF;}
.pager li.prev, .pager li.next {width: 50px; height: 50px; border: none; border-radius: 0; font-size: 20px; vertical-align: middle; background: none;}
.pager li.cur {background: #06799E; color: #FFF; border-radius: 0; padding: 10px;}
.pager li a {display: inline-block; width: 100%; height: 100%; vertical-align: middle; color: #000; font-size: 20px;}
.pager-link {background: #FFF; padding: 10px;}
.pager-link:active, .pager-link:focus, .pager-link:visited { color: #000;}
.pager-link:hover {background: #06799E; color: #FFF; border-radius: 0; opacity: 1; }
.pager li.prev .pager-link, .pager li.next .pager-link {background: none; color: #000; }
.pager li.prev .pager-link:hover, .pager li.next .pager-link:hover {background: none; color: #000; }

.serial-nav {width: 100%; max-width: 1200px; margin: 0 auto 50px;}
.serial-nav a {display: block; padding: 15px 30px; color: #000; font-weight: bold;}
.serial-nav a:active, .serial-nav a:focus, .serial-nav a:hover, .serial-nav a:visited {color: #000;}
.serial-nav a:hover {text-decoration: none;}
.serial-nav-item a { border: 1px solid #000;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.pager {margin: 0 0 25px;}
.pager li {margin-bottom: 10px;}
.serial-nav { display: flex; justify-content: space-between;}
.serial-nav .serial-nav-item { width: 48%;}
}

/* ---------------------------------------------------
	pager
------------------------------------------------------ */
.mainimg {width: 100%; height: auto; max-height: 850px;}
.mainimg a {display: block;}
.mainimg img {width: 100%; height: auto;}

@media screen and (max-width: 767px) {
}

/* ---------------------------------------------------
	子ブログindex
------------------------------------------------------ */

.koblog {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card { width: 22.5%; margin-right: 3.33%; margin-bottom: 40px;}
.koblog .koblog-card:nth-child(4n) { margin-right: 0; }
.koblog .koblog-card .koblog-card-inner { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between; -ms-flex-align: center; -webkit-box-align: center; align-items: center; margin-top: 15px; }
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 20px; font-size: 1.25rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }
.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }
_:-ms-fullscreen, :root .koblog .koblog-card .category { padding-top: 4px; }
.koblog .koblog-card .text { margin-top: 10px; }


@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.koblog { padding: 0 15px 60px; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card { width: 100%; margin-bottom: 25px; }
.koblog .koblog-card:last-child { margin-right: 0; }
.koblog .koblog-card .koblog-card-inner { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between; -ms-flex-align: center; -webkit-box-align: center; align-items: center; margin-top: 15px; }
.koblog .koblog-card img { width: 100%; }
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 18px; font-size: 1.125rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }

.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }

.koblog .koblog-card .text { margin-top: 10px; }

.koblog .c-btn1 { margin-top: 25px; }
}

/* ---------------------------------------------------
	お問い合わせ
------------------------------------------------------ */
.contact {}
.contact-box {width: 100%; max-width: 1200px; margin: 0 auto 100px;}
.contact-box .tel-box {width: 680px; margin: 0 auto 40px; padding: 30px 0 0; border: 1px solid #000; text-align: center;}
.contact-box .tel-box h2 {margin-bottom: 0;}
.entry-column .contact-box ul li {background: none; padding: 0;}
.contact-box .contact-no { font-size: 40px;}
.contact-box .fax {}
.contact-box .contact-no span {color: #BB4824;}
.contact-form, .contact-form-group {background: none;}
.contact-form-label {border-bottom: 1px solid #ccc;}
.contact-form-control {border-bottom: 1px solid #ccc;}
.contact-box input[type=date], .contact-box input[type=datetime-local], .contact-box input[type=datetime], .contact-box input[type=email], .contact-box input[type=month], .contact-box input[type=number], .contact-box input[type=password], .contact-box input[type=search], .contact-box input[type=tel], .contact-box input[type=text], .contact-box input[type=time], .contact-box input[type=url], .contact-box input[type=week] {padding: 5px;}
.contact-box select {min-height: 40px;}
.contact-box .acms-admin-form-radio {display: block; margin-bottom: 10px;}
.contact-box .radio-sub {display: inline-block; padding-left: 25px; margin-bottom: 10px;}
.form-btn-box {margin: 20px 10px;}
.contact-box .btn-attention-block-large { position: relative; display: block; width: 100%; padding: 25px 50px; border: none; color: #FFF; font-weight: bold; text-align: center; text-decoration: none;/*background: url(../images/common/ico-arrow-cr@2x.png) no-repeat 85% 50% #00469C;*/ background-size: 30px 30px; transition: all .25s ease; border-radius: 0;  margin: auto; margin-top: 100px;}

/*.contact-box .btn-attention-block-large { position: relative; display: block; width: 100%; padding: 25px 50px; border: none; color: #FFF; font-weight: bold; text-align: left; text-decoration: none; background: url(../images/common/ico-arrow-cr@2x.png) no-repeat 85% 50% #00469C; background-size: 30px 30px; transition: all .25s ease; border-radius: 0; margin: auto;}*/

.contact-box .btn-attention-block-large:active, .contact-box .btn-attention-block-large:focus, .contact-box .btn-attention-block-large:hover {opacity: 0.8;}
input, select { font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif; font-weight: 500;}

.label-any {margin: 0 5px; padding: 2px 8px; color: #fff; background: #666; border-radius: 3px; font-size: 12px; float: right;}
.label-required {float: right;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.contact-box .tel-box {width: 94%;}
.contact-box .contact-no { font-size: 28px;}
.contact-box .fax { font-size: 20px;}
.contact-box .btn-attention-block-large {margin-top: 50px;}
}

/* ---------------------------------------------------
	suggest
------------------------------------------------------ */
/*.suggest {width: 100%;}
.suggest-box {width: 100%; max-width: 1200px; padding: 40px 0; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: nowrap; background: none;}
.suggest-box .f-address { display: flex; justify-content: flex-start; flex-wrap: nowrap; align-items: center;}
.suggest-box .f-address .f-logo {width: 240px; height: 120px; margin-right: 20px;}
.suggest-box .f-address p {line-height: 1.4;}
.suggest-box .f-contact {width: 45%; max-width: 540px;}
.suggest-box .f-contact table {width: 100%; border-top: 1px solid #002BA2; border-left: 1px solid #002BA2;}
.suggest-box .f-contact table td { border-right: 1px solid #002BA2; border-bottom: 1px solid #002BA2; vertical-align: middle; text-align: center; padding: 20px;}
.suggest-box .f-contact .f-tit { color: #002BA2; font-weight: bold; padding: 10px 0;}
.suggest-box .f-contact .f-tel {}
.suggest-box .f-contact .f-tel a {display: block; color: #002BA2; font-size: 2em; position: relative; padding-left: 26px; font-family: Arial, Helvetica, "sans-serif"; pointer-events: none;}
.suggest-box .f-contact .f-tel a:before {content: ""; display: block; position: absolute; top: 50%; left: 0; margin-top: -15px; width: 23px; height: 30px; background: url(../images/header/ico-header-tel@2x.png) no-repeat top center; background-size: cover;}
.suggest-box .f-contact .f-mail {}
.suggest-box .f-contact .f-mail a {display: flex; justify-content: center; align-items: center; background-color: #E2E911; color: #002BA2; font-size: 1.111em; font-weight: bold; text-align: center; width: 200px; height: 80px; position: relative;}
.suggest-box .f-contact .f-mail a:before {content: ""; display: block; width: 20px; height: 15px; background: url(../images/header/ico-header-mail@2x.png) no-repeat top center; background-size: cover; margin-right: 10px;}


@media screen and (max-width: 767px) {
.suggest-box {width: 100%; max-width: 100%; padding: 40px 0 0; display: block;}
.suggest-box .f-address { display: block; padding-bottom: 40px;}
.suggest-box .f-address .f-logo {margin: 0 auto; text-align: center; padding-bottom: 20px;}
.suggest-box .f-address p {text-align: center;}
.suggest-box .f-contact {width: 100%; max-width: 100%;}
.suggest-box .f-contact table td {padding: 10px; display: block;}
.suggest-box .f-contact .f-tel a {pointer-events: auto; margin: auto; width: 240px;}
.suggest-box .f-contact .f-mail a {width: 100%; height: 80px;}
}*/

/* ---------------------------------------------------
	footer
------------------------------------------------------ */
#footer {position: relative; width: 100%; background-color: #03526F;}
#footer .fnavi {width: 100%; padding: 50px 0 40px; margin: 0 auto; border-bottom: 1px solid #FFF;}
#footer .fnavi ul {display: flex; justify-content: center; text-align: center; list-style: none; margin: 0; padding: 0;}
#footer .fnavi ul li {position: relative; color: #FFF; margin: 0; padding: 0;}
#footer .fnavi ul li a {display: inline-block; color: #FFF; padding: 0 25px;}

#footer .flogo {width: 100%; max-width: 1200px;text-align: center; padding: 40px 0 30px; margin: 0 auto;}

#footer .fcontents {width: 100%; max-width: 1200px; display: flex; justify-content: center; align-items: center; margin: 0 auto;}
#footer .fcontents p {margin: 5px 0;}
#footer .ftel {font-size: 24px; color: #FFF; padding-right: 35px;}
#footer .ftel p {line-height: 1.2;}
#footer .ftel a {color: #FFF; pointer-events: none;}
#footer .ftel span {font-size: 16px;}
#footer .faddress {font-size: 18px; color: #FFF; line-height: 1.8; padding-left: 35px; border-left: 1px solid #FFF;}

#footer .fcopy {font-size: 12px;  width: 100%; max-width: 1200px; text-align: center; color: #FFF; padding: 45px 0 35px; margin: 0 auto;}

#footer .page-top a.page-top-btn {display: block; width: 60px; height: 60px; background: url(../images/footer/btn-pagetop.png) no-repeat top center; background-size: contain;}

#footer .fixmenu {display: none; }

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
    #footer {padding-bottom: 60px;}
    #footer .fnavi {width: 100%; padding: 0; margin: 0 auto; }
    #footer .fnavi ul {flex-wrap: wrap; padding: 10px 0;}
    #footer .fnavi ul li {}
    #footer .fnavi ul li a {padding: 15px 15px;}

    #footer .flogo {width: 100%; max-width: 100%; padding: 30px 0; margin: 0 auto;}

    #footer .fcontents {width: 100%; max-width: 100%; display: block; margin: 0 auto;}
    #footer .fcontents p {margin: 5px 0;}
    #footer .ftel {width: 100%; font-size: 24px; padding-right: 0; margin-bottom: 25px; text-align: center;}
    #footer .ftel p {}
    #footer .ftel a {pointer-events: auto;}
    #footer .ftel span {font-size: 16px;}
    #footer .faddress {width: 100%; font-size: 18px; padding-left: 0; border-left: none; text-align: center;}
    #footer .faddress p {line-height: 1.8;}

    #footer .fcopy {font-size: 12px;  width: 100%; max-width: 100%; color: #FFF; padding: 30px 0;}

    #footer .page-top a.page-top-btn {display: none; width: 40px; height: 40px; background: url(../images/footer/btn-pagetop.png) no-repeat top center; background-size: contain; right: 10px; bottom: 10px;}
    
    #footer .fixmenu {display: flex; justify-content: space-between; align-items: center; position: fixed; bottom: 0; left: 0; width: 100%; height: 60px; background: #03526F; border-top: 1px solid #FFF;}
    #footer .fixmenu .tel {width: calc(100% - 60px); text-align: center;}
    #footer .fixmenu .tel a {display: block; width: 100%; height: 100%; font-size: 17px; font-weight: bold; color: #FFF; letter-spacing: 0.1em;}
    #footer .fixmenu .ptop {border-left: 1px solid #FFF;}
    #footer .fixmenu .ptop a {display: block; width: 60px; height: 60px; text-align: center; padding-top: 19px;}
}