@charset "UTF-8";
/***************************************************** 全ての要素をリセット 各ブラウザの表示を統一するための設定です
*****************************************************/
@import url(https://fonts.googleapis.com/css?family=Lato:300);
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td { margin: 0; padding: 0; }

address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, p { text-align: left; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; text-align: left; }

img, abbr, acronym, fieldset { border: 0; }

li { list-style-type: none; }

img { vertical-align: middle; }

.line { font-size: 1px; line-height: 1px; }

/*--- default */
table { border-collapse: collapse; }

/***************************************************** 基本設定、リンクカラーなど
*****************************************************/
a:link { text-decoration: none; }

a:hover { text-decoration: underline; }

a:hover img { filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }

/***************************************************** 汎用設定
*****************************************************/
.mt0 { margin-top: 0   !important; }

.mt5 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mr0 { margin-right: 0   !important; }

.mr5 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr15 { margin-right: 15px !important; }

.mr20 { margin-right: 20px !important; }

.mr25 { margin-right: 25px !important; }

.mr30 { margin-right: 30px !important; }

.mr35 { margin-right: 35px !important; }

.mr40 { margin-right: 40px !important; }

.mr45 { margin-right: 45px !important; }

.mr50 { margin-right: 50px !important; }

.mb0 { margin-bottom: 0   !important; }

.mb5 { 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; }

.mb35 { margin-bottom: 35px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb45 { margin-bottom: 45px !important; }

.mb50 { margin-bottom: 50px !important; }

.ml0 { margin-left: 0   !important; }

.ml5 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml15 { margin-left: 15px !important; }

.ml20 { margin-left: 20px !important; }

.ml25 { margin-left: 25px !important; }

.ml30 { margin-left: 30px !important; }

.ml35 { margin-left: 35px !important; }

.ml40 { margin-left: 40px !important; }

.ml45 { margin-left: 45px !important; }

.ml50 { margin-left: 50px !important; }

.pt0 { padding-top: 0   !important; }

.pt5 { padding-top: 5px !important; }

.pt10 { padding-top: 10px !important; }

.pt15 { padding-top: 15px !important; }

.pt20 { padding-top: 20px !important; }

.pt25 { padding-top: 25px !important; }

.pt30 { padding-top: 30px !important; }

.pt35 { padding-top: 35px !important; }

.pt40 { padding-top: 40px !important; }

.pt45 { padding-top: 45px !important; }

.pt50 { padding-top: 50px !important; }

.pr0 { padding-right: 0   !important; }

.pr5 { padding-right: 5px !important; }

.pr10 { padding-right: 10px !important; }

.pr15 { padding-right: 15px !important; }

.pr20 { padding-right: 20px !important; }

.pr25 { padding-right: 25px !important; }

.pr30 { padding-right: 30px !important; }

.pr35 { padding-right: 35px !important; }

.pr40 { padding-right: 40px !important; }

.pr45 { padding-right: 45px !important; }

.pr50 { padding-right: 50px !important; }

.pb0 { padding-bottom: 0   !important; }

.pb5 { padding-bottom: 5px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb15 { padding-bottom: 15px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb25 { padding-bottom: 25px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb35 { padding-bottom: 35px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb45 { padding-bottom: 45px !important; }

.pb50 { padding-bottom: 50px !important; }

.pl0 { padding-left: 0   !important; }

.pl5 { padding-left: 5px !important; }

.pl10 { padding-left: 10px !important; }

.pl15 { padding-left: 15px !important; }

.pl20 { padding-left: 20px !important; }

.pl25 { padding-left: 25px !important; }

.pl30 { padding-left: 30px !important; }

.pl35 { padding-left: 35px !important; }

.pl40 { padding-left: 40px !important; }

.pl45 { padding-left: 45px !important; }

.pl50 { padding-left: 50px !important; }

.tal { text-align: left   !important; }

.tac { text-align: center !important; }

.tar { text-align: right  !important; }

.ls1 { letter-spacing: 1em    !important; }

.ls05 { letter-spacing: 0.5em  !important; }

.ls045 { letter-spacing: 0.45em !important; }

.ls04 { letter-spacing: 0.4em  !important; }

.ls035 { letter-spacing: 0.35em !important; }

.ls03 { letter-spacing: 0.3em  !important; }

.ls025 { letter-spacing: 0.25em !important; }

.ls02 { letter-spacing: 0.2em  !important; }

.ls015 { letter-spacing: 0.15em !important; }

.ls01 { letter-spacing: 0.1em  !important; }

header .wrap, header .wrap #global ul, #container .adjustMainBox:before, .filterBox ul li, .btnBox a, .contactStyle .contactTable table td .sizeS, footer .wrap, footer .wrap nav, footer .wrap nav dl dt, footer .wrap .sns, #top article #unit01 .inner .flexNW li, #top article #unit02 .inner .flexNW .photoBox, #top article #unit02 .inner .flexNW .wrap, #top article #unit02 .inner .flexNW .wrap .btnBox li a, #top article #unit04 .inner .flexNW .photoBox, #top article #unit04 .inner .flexNW .wrap, #top article #unit04 .inner .flexNW .wrap .btnBox a, #top article #unit05 .inner .flexNW li, #top article #unit06 .inner form#mailformpro.contactTable input, #top article #unit06 .inner form#mailformpro.contactTable select, #top article #unit06 .inner form#mailformpro.contactTable textarea, #top article #unit06 .inner form#mailformpro.contactTable dl dt, #top article #unit06 .inner form#mailformpro.contactTable dl dd, .bgStyle.staffStyle .flexW .staffBox, .bgStyle.staffSD .staffBox, .bgStyle.staffSD .staffBox .ratioBox .detailBox, .bgStyle.voiceStyle .flexW li, #faq .bgStyle.faqStyle .faqBox li dl dd, .bgStyle.newsStyle .flexW li { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

header .wrap, header .wrap #global ul, .pagenation ol, .pagenation ul, .flexW, .flexNW, #subMV, #subMV .inner, footer .wrap, footer .wrap nav dl .menuList, #recruit .recruitStyle .flexNW .listBox .list dl { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }

.flexW { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

/*****************************************************
				レイアウト設定
*****************************************************/
html, body, #container { min-width: 1200px; height: 100%; }

body { position: relative; min-width: 1200px; color: #000; font-size: 14px; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; line-height: 1.8; text-align: center; }

header { width: 100%; min-width: 1200px; }

.inner { margin: 0 auto; width: 1200px; text-align: left; }

footer { width: 100%; text-align: left; }

.viewSP { display: none !important; }

/*****************************************************
				設定
*****************************************************/
.gotop { display: block; position: fixed; z-index: 9999; bottom: 10px; right: 10px; width: 80px; padding: 20px 10px; text-align: center; text-decoration: none; transform: rotateY(270deg); transition: .5s; }

/*****************************************************
				設定
*****************************************************/
header { overflow: hidden; position: fixed; top: 0; left: 0; z-index: 100; padding-bottom: 1px; width: 100%; text-align: center; background-color: white; }
header .wrap { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; align-items: center; height: 100px; -moz-transition: height 0.3s; -o-transition: height 0.3s; -webkit-transition: height 0.3s; transition: height 0.3s; }
header .wrap .logo { width: 360px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
header .wrap .logo img { max-width: 95%; }
header .wrap #global { width: 640px; }
header .wrap #global ul { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
header .wrap #global ul li { padding: 0 12px; letter-spacing: 1px; }
header .wrap #global ul li a { position: relative; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
header .wrap #global ul li a:after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; transform: translate(0, 10px); opacity: 0; background-color: #999; transition: all .3s ease; }
header .wrap #global ul li a:hover { text-decoration: none; }
header .wrap #global ul li a:hover::after { filter: alpha(opacity=100); -moz-opacity: 1; opacity: 1; transform: translate(0, 0); }
header .wrap .sub { width: 200px; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
header .wrap .sub li { text-align: center; font-family: 'Century Gothic'; }
header .wrap .sub li span { display: block; padding: 10px; color: #fff; background-color: #29abc4; border-radius: 50px; }
header .wrap .sub li span small { display: inline-block; margin-right: 5px; font-size: 0.8em; }
header .wrap .sub li:last-child { font-size: 0.8em; }

/* 縮小時 */
header.smaller { border-bottom: 1px solid #eee; }
header.smaller .wrap { height: 50px; }
header.smaller .wrap .sub li:last-child { display: none; }

.pageTitle { letter-spacing: 2px; font-size: 28px; font-weight: normal; font-family: 'Lato', Helvetica, Arial, Verdana, sans-serif; }

#container { position: absolute; padding-top: 100px; width: 100%; }
#container .adjustMainBox { position: relative; width: 100%; height: auto; }
#container .adjustMainBox:before { content: ""; display: block; margin-bottom: 20px; padding-top: 17.5%; min-height: 210px; }
#container .adjustMainBox .inner { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; background: url("../images/common/sub_main.jpg") no-repeat center top; background-size: cover; }
#container article { padding: 0 0 160px; }

#staff #container article { padding: 0; }

.mix { display: none; }

.filterBox { margin: 0 0 50px; padding: 0 10px; font-family: 'Century Gothic'; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.filterBox ul li { float: left; margin-right: 10px; padding: 10px; width: 95px; text-align: center; cursor: pointer; }
.filterBox ul li span { position: relative; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; color: #bfbfbf; }
.filterBox ul li span:after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; transform: translate(0, 5px); opacity: 0; background-color: #29abc4; transition: all .3s ease; }
.filterBox ul li:hover span { color: #121212; }
.filterBox ul li:hover span::after { filter: alpha(opacity=100); -moz-opacity: 1; opacity: 1; transform: translate(0, 0); }
.filterBox ul .active span { color: #121212; }
.filterBox ul .active span:after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; bottom: 0; filter: alpha(opacity=100); -moz-opacity: 1; opacity: 1; transform: translate(0, 0); background-color: #29abc4; transition: all .3s ease; }

#topicPath { margin-bottom: 20px; padding: 10px 0; border-bottom: 1px solid #29abc4; }
#topicPath ol .home { padding-left: 5px; }
#topicPath ol li { float: left; font-size: 1em; color: #29abc4; }
#topicPath ol li a { margin-right: 5px; color: #29abc4; text-decoration: none; }
#topicPath ol li a:hover { text-decoration: underline; }
#topicPath ol li strong { font-size: 1em; font-weight: normal; }

/*****************************************************
	ページネーション 設定
*****************************************************/
.pagenation ol, .pagenation ul { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; justify-content: center; margin-top: 100px; }
.pagenation ol li, .pagenation ul li { margin: 0 10px; font-family: 'Century Gothic'; font-size: 1.6em; }
.pagenation ol li a, .pagenation ul li a { background: none repeat scroll 0 0 #d1d1d1; color: #fff; display: block; padding: 10px 24px; text-decoration: none; }
.pagenation ol li a:hover, .pagenation ul li a:hover { background-color: #29abc4; color: #fff; opacity: 0.8; transition-duration: 500ms; transition-property: all; transition-timing-function: ease; }
.pagenation ol li:first-child, .pagenation ul li:first-child { margin-left: 0; }
.pagenation ol li:first-child a, .pagenation ol li:last-child a, .pagenation ul li:first-child a, .pagenation ul li:last-child a { position: relative; display: inline-block; color: #e1d7c8 !important; vertical-align: middle; text-decoration: none; font-size: 15px; background-color: transparent; }
.pagenation ol li:first-child a:before, .pagenation ol li:first-child a:after, .pagenation ol li:last-child a:before, .pagenation ol li:last-child a:after, .pagenation ul li:first-child a:before, .pagenation ul li:first-child a:after, .pagenation ul li:last-child a:before, .pagenation ul li:last-child a:after { position: absolute; top: 0; bottom: 0; margin: auto; content: ''; vertical-align: middle; }
.pagenation ol li:first-child a:before, .pagenation ol li:last-child a:before, .pagenation ul li:first-child a:before, .pagenation ul li:last-child a:before { box-sizing: border-box; width: 12px; height: 12px; border: 1px solid #535353; -webkit-border-radius: 50%; border-radius: 50%; }
.pagenation ol li:first-child a:after, .pagenation ol li:last-child a:after, .pagenation ul li:first-child a:after, .pagenation ul li:last-child a:after { width: 3px; height: 3px; border-top: 1px solid #535353; border-right: 1px solid #535353; }
.pagenation ol li:first-child a:hover, .pagenation ol li:last-child a:hover, .pagenation ul li:first-child a:hover, .pagenation ul li:last-child a:hover { color: #29abc4 !important; }
.pagenation ol li:first-child a:hover:before, .pagenation ol li:last-child a:hover:before, .pagenation ul li:first-child a:hover:before, .pagenation ul li:last-child a:hover:before { border: 1px solid #29abc4; }
.pagenation ol li:first-child a:hover:after, .pagenation ol li:last-child a:hover:after, .pagenation ul li:first-child a:hover:after, .pagenation ul li:last-child a:hover:after { border-top: 1px solid #29abc4; border-right: 1px solid #29abc4; }
.pagenation ol li:first-child a, .pagenation ul li:first-child a { padding: 0 0 0 16px; }
.pagenation ol li:first-child a:before, .pagenation ul li:first-child a:before { left: 0; }
.pagenation ol li:first-child a:after, .pagenation ul li:first-child a:after { left: 5px; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
.pagenation ol li:last-child a, .pagenation ul li:last-child a { padding: 0 16px 0 0; }
.pagenation ol li:last-child a:before, .pagenation ul li:last-child a:before { right: 0; }
.pagenation ol li:last-child a:after, .pagenation ul li:last-child a:after { right: 5px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.pagenation ol li.active, .pagenation ul li.active { background-color: #29abc4; color: #fff; cursor: not-allowed; padding: 10px 24px; }

.pnStyle li:first-child { padding-right: 40px; }
.pnStyle li:last-child { padding-left: 40px; }

/*****************************************************
	コンテンツ設定
*****************************************************/
.catIcon { display: inline-block; margin-right: 20px; padding: 1px 2px; min-width: 60px; text-align: center; color: #fff; font-weight: normal; font-size: 0.7em; vertical-align: middle; background-color: #29abc4; border-radius: 3px; }

.catIcon.new { margin-left: 20px; min-width: 40px; font-family: 'Century Gothic'; background-color: #a40000 !important; }

.news { background-color: #121212 !important; }

.notice { background-color: #0068b7 !important; }

.iconRequired { display: inline-block; padding: 0 8px; text-align: center; color: #fff; font-weight: normal; font-size: 0.8em; vertical-align: middle; background-color: #a40000; border-radius: 3px; }

.subTtl { margin-bottom: 100px; }
.subTtl h1, .subTtl h2, .subTtl p { margin-bottom: 20px; text-align: center; }

/*****************************************************
	設定
*****************************************************/
.flexNW { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; justify-content: space-between; }

.ttlStyle01 { position: relative; text-align: left; font-size: 2.4em; font-weight: normal; color: #29abc4; }
.ttlStyle01:first-letter { border-top: 2px solid #eee; }
.ttlStyle01 span { display: inline-block; margin-left: 20px; font-family: 'Century Gothic'; font-size: 0.5em; color: #d1c0a5; }
.ttlStyle01 a { position: absolute; right: 40px; bottom: 10px; display: inline-block; padding-left: 15px; font-size: 0.5em; color: #29abc4; }
.ttlStyle01 a:before, .ttlStyle01 a:after { position: absolute; top: 0; bottom: 0; left: 0; margin: auto; content: ""; vertical-align: middle; }
.ttlStyle01 a:before { box-sizing: border-box; width: 12px; height: 12px; border: 1px solid #535353; -webkit-border-radius: 50%; border-radius: 50%; }
.ttlStyle01 a:after { left: 3px; width: 3px; height: 3px; border-top: 1px solid #535353; border-right: 1px solid #535353; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.ttlES { position: relative; margin: 15px 0; padding-bottom: 10px !important; text-align: left; font-size: 1.2em; font-weight: normal; line-height: initial; color: #29abc4; border-bottom: 1px solid #eee; }

#subMV { overflow: hidden; position: relative; height: 310px; }
#subMV:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; bottom: 0; right: -70%; margin: auto; background-color: rgba(41, 171, 196, 0.3); transform: skewx(-16deg); animation: title-animation 1.2s ease forwards; }
#subMV .inner { justify-content: flex-end; align-items: center; text-align: right; }
#subMV .inner .ttlStyle02 { position: relative; margin-top: -60px; text-align: left; font-size: 3em; font-weight: normal; font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; color: #fff; line-height: initial; -webkit-text-shadow: 0 0 8px #040000; -moz-text-shadow: 0 0 8px #040000; text-shadow: 0 0 8px #040000; }
#subMV .inner .ttlStyle02 span { display: block; margin: -5px 0 0 10px; font-family: 'Century Gothic'; font-size: 0.6em; }
#subMV .imageBox { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; margin: auto; }
#subMV .imageBox img { width: 100%; height: 310px; object-fit: cover; }

@keyframes title-animation { from { right: -10%; }
  to { right: -70%; } }
.show1.beltAni, .show2.beltAni, .show3.beltAni, .show4.beltAni, .show5.beltAni, .show6.beltAni, .show.beltAni { overflow: hidden; }
.show1.beltAni:before, .show2.beltAni:before, .show3.beltAni:before, .show4.beltAni:before, .show5.beltAni:before, .show6.beltAni:before, .show.beltAni:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 3; margin: auto; width: 100%; background-color: #29abc4; }

.beltAni.show:nth-child(1):before { -webkit-animation: beltAni 0.5s linear 0.1s 1 forwards; animation: beltAni 0.5s linear 0.1s 1 forwards; }

.beltAni.show:nth-child(2):before { -webkit-animation: beltAni 0.5s linear 0.2s 1 forwards; animation: beltAni 0.5s linear 0.2s 1 forwards; }

.beltAni.show:nth-child(3):before { -webkit-animation: beltAni 0.5s linear 0.3s 1 forwards; animation: beltAni 0.5s linear 0.3s 1 forwards; }

.beltAni.show:nth-child(4):before { -webkit-animation: beltAni 0.5s linear 0.4s 1 forwards; animation: beltAni 0.5s linear 0.4s 1 forwards; }

.beltAni.show:nth-child(5):before { -webkit-animation: beltAni 0.5s linear 0.5s 1 forwards; animation: beltAni 0.5s linear 0.5s 1 forwards; }

.beltAni.show:nth-child(6):before { -webkit-animation: beltAni 0.5s linear 0.6s 1 forwards; animation: beltAni 0.5s linear 0.6s 1 forwards; }

.beltAni.show:nth-child(7):before { -webkit-animation: beltAni 0.5s linear 0.7s 1 forwards; animation: beltAni 0.5s linear 0.7s 1 forwards; }

.beltAni.show:nth-child(8):before { -webkit-animation: beltAni 0.5s linear 0.8s 1 forwards; animation: beltAni 0.5s linear 0.8s 1 forwards; }

.beltAni.show:nth-child(9):before { -webkit-animation: beltAni 0.5s linear 0.9s 1 forwards; animation: beltAni 0.5s linear 0.9s 1 forwards; }

@keyframes beltAni { from { left: 0; }
  to { left: 100%; } }
.bgStyle { position: relative; padding-bottom: 40px; }
.bgStyle:after { content: ''; position: absolute; top: 80px; right: 9%; bottom: 0; left: 0; z-index: -1; margin: auto; background-color: #f7f7f7; }
.bgStyle .inner { padding-top: 60px; }

.tableStyle01 { width: 100%; }
.tableStyle01 th, .tableStyle01 td { padding: 10px; text-align: center; font-weight: normal; border: 1px solid #e1dfc6; }
.tableStyle01 thead th { color: #fff; background-color: #29abc4; }
.tableStyle01 tbody th { font-family: 'Century Gothic'; background-color: #b9e0e8; }

.contactBtn { position: relative; margin: 0 auto 50px; width: 1011px; height: 130px; background: url("../images/common/bg_contact.png") no-repeat left top; }
.contactBtn a { position: absolute; top: 26px; right: 32px; display: block; width: 480px; height: 77px; }

.mapBox { width: 100%; }
.mapBox iframe { width: 100%; height: 420px; border: none; }

.btnBox { margin: 40px 0 0; text-align: center; }
.btnBox a { display: inline-block; width: 230px; padding: 20px; text-align: center; text-decoration: none; color: #fff; background: url("../images/common/icon_arrow_white.gif") no-repeat 90% center; background-color: #29abc4; border-radius: 50px; }
.btnBox a:hover { text-decoration: none; filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }

.contactStyle form#mailformpro dl dt { float: left; width: 150px; clear: both; font-size: inherit; padding: 10px 0px; text-align: left; border: none !important; margin: 0px; }
.contactStyle form#mailformpro dl dd { border: none !important; margin: 0px; padding: 10px 5px 10px 160px; font-size: inherit; line-height: inherit; text-align: left; }
.contactStyle .mfp_element_text, .contactStyle .mfp_element_number, .contactStyle .mfp_element_select-one, .contactStyle .mfp_element_email, .contactStyle .mfp_element_tel, .contactStyle .mfp_element_textarea { border: none; border-radius: inherit; box-shadow: inherit; padding: 0; margin: 0; vertical-align: inherit; }
.contactStyle div.mfp_ok { display: none !important; }
.contactStyle form#mailformpro label { margin: 0; }
.contactStyle form#mailformpro label.mfp_not_checked { padding: 3px; border: none; }
.contactStyle div.mfp_err { background-position: 0 5px !important; }
.contactStyle .contactTable table { table-layout: fixed; margin: -1px auto 0; width: 820px; }
.contactStyle .contactTable table input, .contactStyle .contactTable table select, .contactStyle .contactTable table textarea { padding: 10px !important; width: 93% !important; background-color: #f9fafa; border: 1px solid #ccc !important; border-radius: 5px; }
.contactStyle .contactTable table select { width: 98% !important; }
.contactStyle .contactTable table textarea { width: 94% !important; height: 120px !important; }
.contactStyle .contactTable table tr:first-child th, .contactStyle .contactTable table tr:first-child td { border-top: 1px solid #eee; }
.contactStyle .contactTable table th { padding: 20px; width: 230px; text-align: left; font-weight: normal; border-bottom: 1px solid #eee; }
.contactStyle .contactTable table td { padding: 20px; text-align: left; border-bottom: 1px solid #eee; }
.contactStyle .contactTable table td .address li { margin-bottom: 10px; }
.contactStyle .contactTable table td .address li:last-child { margin-bottom: 0; }
.contactStyle .contactTable table td .border { margin: 5px 0; padding: 10px 0; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.contactStyle .contactTable table td .sizeS { width: 47% !important; }
.contactStyle .contactTable table td .normal { width: auto !important; }
.contactStyle .contactTable table td em { display: block; font-size: 0.9em; color: #f00; }
.contactStyle .contactTable .radio { justify-content: flex-start; }
.contactStyle .contactTable .radio li { margin-right: 10px; width: auto; }
.contactStyle .contactTable .radio li input { margin: 0 5px !important; width: auto !important; vertical-align: middle; }
.contactStyle .contactTable .lv02 li { width: 48%; }
.contactStyle .contactTable .lv02 li label { width: 83% !important; }
.contactStyle .contactTable .lv02 li input { width: 100% !important; }
.contactStyle .contactTable .caution { color: #f00; }
.contactStyle .contactTable .required label { display: block !important; }
.contactStyle .contactTable .required span { position: relative; display: block; }
.contactStyle .contactTable .required span:after { content: '必須'; position: absolute; right: 0; display: inline-block; padding: 0 8px; text-align: center; color: #fff; font-weight: normal; font-size: 0.8em; vertical-align: middle; background-color: #a40000; border-radius: 3px; }
.contactStyle .contactTable .mfp_buttons { margin: 40px 0; text-align: center; }
.contactStyle .contactTable .mfp_buttons button { display: inline-block; width: 280px; padding: 20px; text-align: center; text-decoration: none; text-shadow: none; color: #fff; background: url("../images/common/icon_arrow_white.gif") no-repeat 90% center; background-color: #29abc4; border: none; border-radius: 50px; cursor: pointer; }
.contactStyle .contactTable .mfp_buttons button:hover { text-decoration: none; filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }
.contactStyle .contactTable .problem { background-color: #fcc !important; }
.contactStyle .contactTable .agreeBox { margin: 0 auto; width: 820px; color: #4b4b4b; }
.contactStyle .contactTable .agreeBox .textBox { overflow-y: scroll; margin: 20px auto 0; padding: 10px; height: 190px; border: 1px solid #ccc; }
.contactStyle .contactTable .agreeBox .textBox .formTit { margin-bottom: 10px; font-weight: bold; }
.contactStyle .contactTable .agreeBox .textBox .termBox h2 { margin-bottom: 20px; text-align: center; }
.contactStyle .contactTable .agreeBox .textBox #terms00 { margin: 40px auto 50px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 { margin: 0 auto 50px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 h2 { margin-bottom: 10px; padding: 0 0 10px 5px; text-align: left; font-size: 1.2em; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list { margin: 0 20px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list ol { margin: 0 0 50px 30px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list ol li { margin-bottom: 50px; text-align: left; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list li ol li, .contactStyle .contactTable .agreeBox .textBox #terms01 .list li ol li ol li { list-style-type: decimal; margin-bottom: 20px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list li ol li ol { margin-top: 10px; }
.contactStyle .contactTable .agreeBox .textBox #terms01 .list li ol li ol li { list-style-type: decimal-leading-zero; margin-bottom: 5px; }
.contactStyle .contactTable .agreeBox .textBox #terms02 { margin: 0 auto 50px; }
.contactStyle .contactTable .agreeBox .textBox #terms02 h3 { margin-bottom: 10px; font-size: 1.2em; }
.contactStyle .contactTable .agreeBox .btnBox { margin-top: 0; }
.contactStyle .contactTable .agreeBox .btnBox dl { display: inline-block; margin: 10px 0 40px; }
.contactStyle .contactTable .agreeBox .btnBox dl dt { float: none !important; display: inline-block; width: auto !important; font-weight: bold; }
.contactStyle .contactTable .agreeBox .btnBox dl dd { display: inline-block; padding: 10px !important; }
.contactStyle .contactTable .agreeBox .btnBox .btn { margin-bottom: 25px; text-align: center; }
.contactStyle .contactTable .agreeBox .btnBox .btn label { display: inline-block; margin: 0 auto; padding: 20px !important; border: 1px solid #ccc !important; }
.contactStyle .contactTable .agreeBox .btnBox .btn input { width: auto !important; }
.contactStyle .contactTable .agreeBox .btnBox .comment { text-align: center; }

.contactInfo { margin: 45px 0; text-align: center; }
.contactInfo p { margin-bottom: 20px; text-align: center; }
.contactInfo ul { display: inline-block; text-align: left; }
.contactInfo ul li { margin-bottom: 5px; }

/*****************************************************
	共通：フッター設定
*****************************************************/
footer .inner { padding: 20px 0 40px; }
footer .wrap { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; align-items: flex-start; }
footer .wrap .logoBox { margin-top: 10px; width: 30%; }
footer .wrap .logoBox img { max-width: 95%; }
footer .wrap .logoBox dd { padding: 10px 30px 0 65px; font-size: 0.9em; }
footer .wrap nav { width: 55%; }
footer .wrap nav dl dt { position: relative; display: inline-block; margin-bottom: 20px; padding: 10px 10px; padding-bottom: .1em; width: 40%; text-align: left; font-family: 'Century Gothic'; font-weight: normal; font-size: 1.4em; border-bottom: 3px solid #ccc; }
footer .wrap nav dl dt:after { position: absolute; bottom: -3px; left: 0; z-index: 2; content: ''; width: 20%; height: 3px; background-color: #29abc4; }
footer .wrap nav dl .menuList { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
footer .wrap nav dl .menuList ul { margin-left: 60px; }
footer .wrap nav dl .menuList ul:first-child { margin-left: 0; }
footer .wrap nav dl .menuList ul li { margin-bottom: 5px; }
footer .wrap nav dl .menuList ul li a { padding: 0 0 0 15px; color: #000; background: url("../images/common/icon_arrow_green.gif") no-repeat left center; }
footer .wrap .sns { display: inline-block; padding: 12% 20px 5px; width: 15%; border-bottom: 3px solid #29abc4; }
footer .wrap .sns li { display: inline-block; margin-top: 10px; }
footer .wrap .sns li a { overflow: hidden; display: block; width: 40px; height: 40px; text-align: center; }
footer .wrap .sns li a img { max-width: 40px; max-height: 40px; object-fit: cover; }
footer #copy { display: block; padding: 20px 0; text-align: center; color: #fff; border-top: 1px solid #ddd; background-color: #29abc4; }

/*****************************************************
				clearfix
*****************************************************/
.clear:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

html .clear { /* IE6 */ zoom: 1; }

*:first-child + html .clear { /* IE7 */ zoom: 1; }

/***************************************************** トップページ設定
*****************************************************/
#top { min-width: 1200px; }
#top #container { background-image: none; }
#top article .inner { min-width: 1200px; }
#top article .list { overflow: hidden; }
#top article .list li { transition: .8s; }
#top article .list-mv07 { opacity: 0; transform: translate(0, 100px); -webkit-transform: translate(0, 100px); }
#top article .mv07 { opacity: 1.0; transform: translate(0, 0); -webkit-transform: translate(0, 0); }
#top article #mainView .inner { overflow: hidden; padding-top: 0; width: 100%; min-width: 1200px; }
#top article #mainView .inner img { width: 100%; height: auto; }
#top article section .ttlStyle01 { padding-left: 60px; }
#top article #unit01 { position: relative; }
#top article #unit01:after { content: ''; position: absolute; top: 16%; right: 10%; bottom: 5%; left: 0; z-index: -1; margin: auto; background-color: #f7f7f7; }
#top article #unit01 .inner { padding: 60px 0 100px; width: 100%; }
#top article #unit01 .inner h1 { overflow: hidden; position: relative; }
#top article #unit01 .inner .flexNW { justify-content: space-around; }
#top article #unit01 .inner .flexNW li { overflow: hidden; position: relative; width: 300px; }
#top article #unit01 .inner .flexNW li a { text-decoration: none; }
#top article #unit01 .inner .flexNW li a dl dt { margin-bottom: 20px; }
#top article #unit01 .inner .flexNW li a dl dd { padding: 0 5px; }
#top article #unit02 { position: relative; padding-bottom: 100px; }
#top article #unit02:after { content: ''; position: absolute; top: 22%; right: 0; bottom: 5%; left: 150px; z-index: -1; margin: auto; background-color: #f7f7f7; }
#top article #unit02 .inner { padding: 100px 0 0; width: 100%; }
#top article #unit02 .inner .flexNW { justify-content: space-between; }
#top article #unit02 .inner .flexNW .photoBox { position: relative; overflow: hidden; margin-right: 40px; width: 580px; }
#top article #unit02 .inner .flexNW .photoBox img { max-width: 100%; }
#top article #unit02 .inner .flexNW .wrap { padding: 30px 70px 0 0; width: 50%; min-width: 700px; }
#top article #unit02 .inner .flexNW .wrap h1 { margin-left: 0; }
#top article #unit02 .inner .flexNW .wrap h2 { margin-top: 20px; font-weight: normal; }
#top article #unit02 .inner .flexNW .wrap .address { font-size: 1.2em; }
#top article #unit02 .inner .flexNW .wrap .address a { display: inline-block; margin-left: 50px; padding: 0 0 0 15px; color: #29abc4; background: url("../images/common/icon_arrow_green.gif") no-repeat left center; }
#top article #unit02 .inner .flexNW .wrap .guideTT { margin-top: 20px; }
#top article #unit02 .inner .flexNW .wrap .guideTT dt { font-size: 1.2em; }
#top article #unit02 .inner .flexNW .wrap .noteBox { margin: 20px 0 0 20px; }
#top article #unit02 .inner .flexNW .wrap .btnBox { margin: 20px 0 0; justify-content: space-around; }
#top article #unit02 .inner .flexNW .wrap .btnBox li { width: 38%; text-align: center; }
#top article #unit02 .inner .flexNW .wrap .btnBox li a { display: inline-block; width: 230px; padding: 10px; text-align: center; text-decoration: none; color: #fff; background: url("../images/common/icon_arrow_white.gif") no-repeat 90% center; background-color: #29abc4; border-radius: 50px; }
#top article #unit02 .inner .flexNW .wrap .btnBox li a:hover { text-decoration: none; filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }
#top article #unit03 { position: relative; padding-bottom: 100px; }
#top article #unit03:after { content: ''; position: absolute; top: 13%; right: 5%; bottom: 7%; left: 0; z-index: -1; margin: auto; background-color: #f7f7f7; }
#top article #unit03 .inner { padding-top: 80px; width: 100%; }
#top article #unit03 .inner h1 { overflow: hidden; position: relative; }
#top article #unit03 .inner .noteBox { margin: 20px 0 40px 60px; width: 510px; font-size: 1.2em; line-height: 180%; }
#top article #unit03 .inner .imageBox img { width: 100%; height: auto; }
#top article #unit03 .inner .imageLB { position: relative; width: 100%; padding: 0 0 25%; overflow: hidden; }
#top article #unit03 .inner .imageLB li { position: absolute; }
#top article #unit03 .inner .imageLB li img { width: 100%; height: auto; }
#top article #unit03 .inner .imageLB li:nth-child(1) { top: 0; left: 0; width: 25%; }
#top article #unit03 .inner .imageLB li:nth-child(2) { top: 0; left: 25%; width: 12.5%; }
#top article #unit03 .inner .imageLB li:nth-child(3) { top: 0; left: 37.5%; width: 12.5%; }
#top article #unit03 .inner .imageLB li:nth-child(4) { top: 50%; left: 25%; width: 25%; }
#top article #unit03 .inner .imageLB li:nth-child(5) { top: 0; left: 50%; width: 25%; }
#top article #unit03 .inner .imageLB li:nth-child(6) { top: 0; left: 75%; width: 25%; }
#top article #unit03 .inner .imageLB li:nth-child(7) { top: 50%; left: 75%; width: 25%; }
#top article #unit04 { position: relative; padding-bottom: 100px; }
#top article #unit04:after { content: ''; position: absolute; top: 27%; right: 0; bottom: 10%; left: 130px; z-index: -1; margin: auto; background-color: #f7f7f7; }
#top article #unit04 .inner { padding-top: 80px; width: 100%; }
#top article #unit04 .inner .flexNW { justify-content: space-between; }
#top article #unit04 .inner .flexNW .photoBox { position: relative; overflow: hidden; margin-right: 40px; width: 580px; }
#top article #unit04 .inner .flexNW .photoBox img { max-width: 100%; }
#top article #unit04 .inner .flexNW .wrap { padding: 60px 70px 0 0; width: 50%; min-width: 700px; }
#top article #unit04 .inner .flexNW .wrap h1 { margin-left: 0; }
#top article #unit04 .inner .flexNW .wrap h2 { margin-top: 20px; font-weight: normal; }
#top article #unit04 .inner .flexNW .wrap .noteBox { margin: 40px 0 0; font-size: 1.2em; line-height: 180%; }
#top article #unit04 .inner .flexNW .wrap .btnBox { margin: 40px 0 0; text-align: center; }
#top article #unit04 .inner .flexNW .wrap .btnBox a { display: inline-block; width: 230px; padding: 20px; text-align: center; text-decoration: none; color: #fff; background: url("../images/common/icon_arrow_white.gif") no-repeat 90% center; background-color: #29abc4; border-radius: 50px; }
#top article #unit04 .inner .flexNW .wrap .btnBox a:hover { text-decoration: none; filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }
#top article #unit05 { position: relative; padding-bottom: 40px; }
#top article #unit05:after { content: ''; position: absolute; top: 19%; right: 9%; bottom: 0; left: 0; z-index: -1; margin: auto; background-color: #f7f7f7; }
#top article #unit05 .inner { padding-top: 60px; width: 100%; }
#top article #unit05 .inner .flexNW { margin-top: 20px; justify-content: space-around; }
#top article #unit05 .inner .flexNW li { width: 300px; overflow: hidden; position: relative; }
#top article #unit05 .inner .flexNW li a { text-decoration: none; }
#top article #unit05 .inner .flexNW li a dl dt { margin-bottom: 20px; }
#top article #unit05 .inner .flexNW li a dl dd { padding: 0 5px; }
#top article #unit06 .inner { width: 1000px; }
#top article #unit06 .inner .mfp_element_text, #top article #unit06 .inner .mfp_element_number, #top article #unit06 .inner .mfp_element_select-one, #top article #unit06 .inner .mfp_element_email, #top article #unit06 .inner .mfp_element_tel, #top article #unit06 .inner .mfp_element_textarea { border: none; border-radius: inherit; box-shadow: inherit; padding: 0; margin: 0; vertical-align: inherit; }
#top article #unit06 .inner div.mfp_ok { display: none !important; }
#top article #unit06 .inner form#mailformpro.contactTable input, #top article #unit06 .inner form#mailformpro.contactTable select, #top article #unit06 .inner form#mailformpro.contactTable textarea { padding: 10px !important; width: 100%; border: 1px solid #ccc !important; }
#top article #unit06 .inner form#mailformpro.contactTable textarea { height: 120px !important; }
#top article #unit06 .inner form#mailformpro.contactTable .sizeS { width: 25% !important; }
#top article #unit06 .inner form#mailformpro.contactTable .sizeM { width: 45% !important; }
#top article #unit06 .inner form#mailformpro.contactTable .sizeL { width: 90% !important; }
#top article #unit06 .inner form#mailformpro.contactTable .radio label { margin-right: 40px; border: none; }
#top article #unit06 .inner form#mailformpro.contactTable .radio .mfp_checked { background-color: transparent; }
#top article #unit06 .inner form#mailformpro.contactTable .lv02 .sizeS { width: 100% !important; }
#top article #unit06 .inner form#mailformpro.contactTable .lv02 label { margin-right: 40px; width: 40%; }
#top article #unit06 .inner form#mailformpro.contactTable dl { width: 100%; background-color: #eee; overflow: hidden; border: 1px solid #eee; border-bottom: 1px solid #fff; }
#top article #unit06 .inner form#mailformpro.contactTable dl:last-child { border-bottom: 1px solid #eee; }
#top article #unit06 .inner form#mailformpro.contactTable dl dt { float: left; margin: 0; padding: 10px 70px 10px 20px; width: 260px; font-size: initial; font-weight: bold; text-align: left; vertical-align: top; color: #333; background-color: #eee; border-top: none; }
#top article #unit06 .inner form#mailformpro.contactTable dl dd { margin: 0 0 0 260px; padding: 10px 20px 10px 20px; font-size: initial; line-height: initial; background-color: #fff; border-top: none; }
#top article #unit06 .inner form#mailformpro.contactTable dl dd ul li { display: inline; }
#top article #unit06 .inner form#mailformpro.contactTable dl dd em { display: block; color: #c00; }
#top article #unit06 .inner form#mailformpro.contactTable .bn { border-top: none; }
#top article #unit06 .inner form#mailformpro.contactTable .caution { color: #f00; }
#top article #unit06 .inner form#mailformpro.contactTable .required { background: url("../images/common/icon_required.png") no-repeat 90% 18px; background-color: #eee; }
#top article #unit06 .inner form#mailformpro.contactTable .mfp_buttons { margin: 40px 0; text-align: center; }
#top article #unit06 .inner form#mailformpro.contactTable .mfp_buttons input { width: 320px; height: 76px; background: url("../images/common/btn_submit.png") no-repeat left top; border: none !important; cursor: pointer; }
#top article #unit06 .inner form#mailformpro.contactTable .mfp_buttons input:hover { filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }

/***************************************************** お問い合わせページ設定
*****************************************************/
#thanks article { padding-bottom: 200px; }
#thanks article .info { margin-bottom: 50px; }
#thanks article .info h2 { margin-bottom: 50px; }
#thanks article .info p { margin: 0 auto; width: 490px; }

/***************************************************** スタッフ紹介ページ設定
*****************************************************/
.bgStyle.staffStyle:after { right: 20%; bottom: 8%; left: 0; }
.bgStyle.staffStyle .noteBox { margin-top: 20px; text-align: center; font-size: 1.2em; line-height: 180%; }
.bgStyle.staffStyle .noteBox p { display: inline-block; width: 45%; text-align: left; }
.bgStyle.staffStyle .flexW { margin-top: 60px; }
.bgStyle.staffStyle .flexW .staffBox { margin-bottom: 100px; width: 33%; overflow: hidden; position: relative; }
.bgStyle.staffStyle .flexW .staffBox .detailBox { position: relative; z-index: 1; margin: 245px 30px 0 120px; padding: 20px; color: #fff; background-color: #29abc4; }
.bgStyle.staffStyle .flexW .staffBox .detailBox dt { font-size: 1.4em; }
.bgStyle.staffStyle .flexW .staffBox .detailBox dt span { display: block; margin-top: 0; text-align: right; font-size: 0.6em; font-family: 'Century Gothic'; }
.bgStyle.staffStyle .flexW .staffBox .detailBox dd { margin-top: 20px; }
.bgStyle.staffStyle .flexW .staffBox .photoBox { position: absolute; top: 0; left: 0; }
.bgStyle.staffStyle .flexW .staffBox .photoBox img { max-width: 260px; height: auto; }
.bgStyle.staffStyle .flexW .staffBox a { text-decoration: none; }

.bgStyle.staffSD:after { right: 20%; bottom: 140px; left: 0; }
.bgStyle.staffSD .noteBox { margin-top: 20px; text-align: center; font-size: 1.2em; line-height: 180%; }
.bgStyle.staffSD .noteBox p { display: inline-block; width: 45%; text-align: left; }
.bgStyle.staffSD .staffBox { margin-bottom: 100px; }
.bgStyle.staffSD .staffBox .ratioBox { position: relative; margin-top: 60px; height: auto; }
.bgStyle.staffSD .staffBox .ratioBox:before { content: ''; display: block; padding-top: 60%; }
.bgStyle.staffSD .staffBox .ratioBox .wrap { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.bgStyle.staffSD .staffBox .ratioBox .detailBox { position: absolute; bottom: 0; left: 0; z-index: 1; padding: 40px; width: 400px; color: #fff; background-color: #29abc4; }
.bgStyle.staffSD .staffBox .ratioBox .photoBox { position: absolute; top: 0; right: 0; }
.bgStyle.staffSD .staffBox .ratioBox .photoBox img { max-width: 1000px; height: auto; }
.bgStyle.staffSD .staffBox .btnBox { margin-top: 150px; }

/***************************************************** 患者様の声ページ設定
*****************************************************/
.bgStyle.voiceStyle:after { right: 20%; bottom: 0; left: 0; }
.bgStyle.voiceStyle .flexW { margin-top: 60px; justify-content: flex-start; }
.bgStyle.voiceStyle .flexW li { margin-bottom: 60px; width: 33%; overflow: hidden; position: relative; }
.bgStyle.voiceStyle .flexW li dl { margin: 0 auto; width: 300px; }
.bgStyle.voiceStyle .flexW li dl dt { margin-bottom: 20px; }
.bgStyle.voiceStyle .flexW li dl dt img { max-width: 100%; height: auto; }
.bgStyle.voiceStyle .flexW li dl dd { padding: 0 5px; }
.bgStyle.voiceStyle .flexW li a { text-decoration: none; }

/***************************************************** よくあるご質問ページ設定
*****************************************************/
#faq .bgStyle.faqStyle:after { right: 20%; bottom: 0; left: 0; }
#faq .bgStyle.faqStyle .faqBox { margin: 60px auto 0; width: 870px; }
#faq .bgStyle.faqStyle .faqBox li { margin-bottom: 30px; border-bottom: 1px solid #eee; }
#faq .bgStyle.faqStyle .faqBox li dl { line-height: 180%; }
#faq .bgStyle.faqStyle .faqBox li dl dt { margin-bottom: 20px; padding: 15px 60px 15px 80px; text-align: left; background: url("../images/common/icon_q.png") no-repeat 20px 0, url("../images/common/icon_plus.png") no-repeat 100% 0; cursor: pointer; }
#faq .bgStyle.faqStyle .faqBox li dl .active { background: url("../images/common/icon_q.png") no-repeat 20px 0, url("../images/common/icon_minus.png") no-repeat 100% 0; }
#faq .bgStyle.faqStyle .faqBox li dl dd { display: none; padding: 30px 40px 30px 80px; background: url("../images/common/icon_a.png") no-repeat 20px 20px; background-color: rgba(108, 191, 210, 0.2); }
#faq .bgStyle.faqStyle .faqBox li dl dd ul { margin-left: 20px; }
#faq .bgStyle.faqStyle .faqBox li dl dd ul li { margin-bottom: 10px; list-style-position: outside; list-style-type: disc; border: none; }
#faq .bgStyle.faqStyle .faqBox li dl dd ul li span { padding-left: 10px; }
#faq .bgStyle.faqStyle .faqBox li dl dd ul li em { display: block; }

/***************************************************** 採用情報ページ設定
*****************************************************/
#recruit .bgStyle.recruitStyle:after { right: 20%; bottom: 15%; left: 0; }
#recruit .recruitStyle .flexNW { margin-top: 60px; padding-bottom: 60px; }
#recruit .recruitStyle .flexNW .noteBox { width: 45%; }
#recruit .recruitStyle .flexNW .noteBox dl dt { margin-bottom: 20px; font-size: 1.4em; color: #29abc4; }
#recruit .recruitStyle .flexNW .noteBox dl dd { font-size: 1.4em; }
#recruit .recruitStyle .flexNW .listBox { width: 45%; }
#recruit .recruitStyle .flexNW .listBox .list { margin-bottom: 100px; }
#recruit .recruitStyle .flexNW .listBox .list dl { -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: nowrap; -moz-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; justify-content: space-between; margin-top: 40px; }
#recruit .recruitStyle .flexNW .listBox .list dl:first-child { margin-top: 0; }
#recruit .recruitStyle .flexNW .listBox .list dl dt { position: relative; width: 30%; font-size: 1.2em; color: #29abc4; }
#recruit .recruitStyle .flexNW .listBox .list dl dt:after { content: ''; position: absolute; top: 12px; right: 0; left: 55%; display: block; width: 55px; height: 1px; background-color: #eae4db; }
#recruit .recruitStyle .flexNW .listBox .list dl dd { width: 70%; font-size: 1.2em; line-height: 200%; }
#recruit .recruitStyle .flexNW .listBox .list dl dd ul { padding-left: 35px; }
#recruit .recruitStyle .flexNW .listBox .list dl dd ul li { list-style-position: outside; list-style-type: disc; }

/***************************************************** ニュースページ設定
*****************************************************/
.bgStyle.newsStyle:after { right: 20%; bottom: 0; left: 0; }
.bgStyle.newsStyle .flexW { margin-top: 60px; }
.bgStyle.newsStyle .flexW li { margin-bottom: 60px; width: 33%; overflow: hidden; position: relative; }
.bgStyle.newsStyle .flexW li dl { margin: 0 auto; width: 300px; }
.bgStyle.newsStyle .flexW li dl dt { margin-bottom: 20px; }
.bgStyle.newsStyle .flexW li dl dt img { max-width: 100%; height: auto; }
.bgStyle.newsStyle .flexW li dl dd { padding: 0 5px; }
.bgStyle.newsStyle .flexW li a { text-decoration: none; }
.bgStyle.newsStyle .newsDS { margin-top: 60px; }
.bgStyle.newsStyle .newsDS .eyecatchBox { width: 40%; }
.bgStyle.newsStyle .newsDS .eyecatchBox img { max-width: 100%; height: auto; }
.bgStyle.newsStyle .newsDS .entryBox { width: 50%; }
.bgStyle.newsStyle .newsDS .entryBox .ttlES { margin: 20px 0 0; }
.bgStyle.newsStyle .newsDS .entryBox .detailsBox { margin: 20px 0 0; line-height: 200%; }
.bgStyle.newsStyle .newsDS .entryBox .detailsBox img { max-width: 100%; height: auto; }

/***************************************************** 診療案内ページ設定
*****************************************************/
#guide .guideStyle { padding: 0 0 100px; }
#guide .guideStyle:after { right: 20%; bottom: 0; left: 0; }
#guide .guideStyle .guideBox { margin-top: 40px; }
#guide .guideStyle .guideBox .wrap { width: 50%; }
#guide .guideStyle .guideBox .wrap h2 { font-size: 2.2em; font-weight: normal; color: #29abc4; }
#guide .guideStyle .guideBox .wrap .noteBox { margin-top: 20px; font-size: 1.2em; }
#guide .guideStyle .guideBox .wrap .address { margin-top: 100px; font-size: 1.2em; }
#guide .guideStyle .guideBox .wrap .address a { display: inline-block; padding: 0 0 0 15px; color: #29abc4; background: url("../images/common/icon_arrow_green.gif") no-repeat left center; }
#guide .guideStyle .guideBox .photoBox { margin-top: 80px; width: 50%; }
#guide .guideStyle .guideBox .photoBox img { max-width: 100%; }
#guide .guideStyle .guideTT { margin-top: 60px; width: 630px; }
#guide .guideStyle .guideTT dt { font-size: 1.2em; color: #29abc4; }
#guide .guideStyle .guideTT dd .noteBox { margin: 20px 0 0 20px; }
#guide .guideStyle #newPatient { padding: 100px 0 0; }
#guide .guideStyle #newPatient .flexNW .photoBox { width: 35%; }
#guide .guideStyle #newPatient .flexNW .photoBox img { max-width: 100%; }
#guide .guideStyle #newPatient .flexNW .wrap { width: 55%; }
#guide .guideStyle #newPatient .flexNW .wrap ul { margin: 20px 0 0 20px; }
#guide .guideStyle #newPatient .flexNW .wrap ul li { margin-bottom: 10px; text-align: left; list-style-position: outside; list-style-type: disc; border: none; }

/***************************************************** お問合わせページ設定
*****************************************************/
.contactStyle .inner { padding-top: 60px; }

.contactTS .inner { text-align: center; }
.contactTS h2 { margin-top: 40px; text-align: center; font-size: 1.6em; font-weight: normal; color: #29abc4; }
.contactTS .thanksInfo { display: inline-block; margin-top: 40px; text-align: left; }
.contactTS .btnBox { margin-top: 100px; }
