@charset "UTF-8";
@font-face { font-family: 'LigatureSymbols'; src: url("/font/LigatureSymbols-2.11.eot"); src: url("/font/LigatureSymbols-2.11.eot?#iefix") format("embedded-opentype"), url("/font/LigatureSymbols-2.11.woff") format("woff"), url("/font/LigatureSymbols-2.11.ttf") format("truetype"), url("/font/LigatureSymbols-2.11.svg#LigatureSymbols") format("svg"); src: url("/font/LigatureSymbols-2.11.ttf") format("truetype"); font-weight: normal; font-style: normal; }
.lsf, .lsf-icon:before { font-family: 'LigatureSymbols'; -webkit-text-rendering: optimizeLegibility; -moz-text-rendering: optimizeLegibility; -ms-text-rendering: optimizeLegibility; -o-text-rendering: optimizeLegibility; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; -ms-font-smoothing: antialiased; -o-font-smoothing: antialiased; font-smoothing: antialiased; -webkit-font-feature-settings: "liga" 1, "dlig" 1; -moz-font-feature-settings: "liga=1, dlig=1"; -ms-font-feature-settings: "liga" 1, "dlig" 1; -o-font-feature-settings: "liga" 1, "dlig" 1; font-feature-settings: "liga" 1, "dlig" 1; }

/***************************************************** 全ての要素をリセット 各ブラウザの表示を統一するための設定です
*****************************************************/
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; }
h2{ height: 25px; font-weight: normal; font-size: 18px; line-height: 19px; background: url("../images/common/h2.jpg") no-repeat left center; padding: 5px 0 0 15px; }
h3{ height: 41px; font-weight: bold; font-size: 18px; line-height: 41px; background: url("../images/common/h3.jpg") no-repeat left center; background-color: #e5e5e5; padding: 0 0 0 10px; }
h3 .h3_sub_text { font-size: 15px; background: url("../images/common/arrows.png") no-repeat left center; margin: 0 0 0 20px; padding: 2px 0 0 12px; }
h5{ height: 24px; font-weight: normal; font-size: 20px; line-height: 21px; background: url("../images/common/h5.jpg") no-repeat left center; padding: 3px 0 0 20px; }

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

li { list-style-type: none; }

img { vertical-align: middle; }

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

/*--- default */
html { font: 15px mplus, "Hiragino Maru Gothic ProN", Meiryo, Arial; line-height: 1.8em; letter-spacing: 0.05em; }
* { box-sizing: border-box; }
body { color: #333; background-color: #f2f2f2; font-size: 13px; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; line-height: 1.4; text-align: center; margin: 0; padding: 0; }

table { border-collapse: collapse; }

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

a:visited { text-decoration: underline; }

a:hover { text-decoration: none; }

a:active { text-decoration: underline; }

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

/* リガチャ（合字）設定 */
a.lsf:hover { text-decoration: none; }

a.home:hover {  }

a.line:hover { }

a.facebook:hover {  }

a.twitter:hover {  }

a.google:hover {  }

a.hatena:hover {  }

a.pocket:hover {  }

a.lsf:hover { text-decoration: none !important; }

/***************************************************** 汎用設定
*****************************************************/
.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; }

/***************************************************** レイアウト設定
*****************************************************/
body { position: relative; min-width: 1000px; color: #000; }

header { width: 100%; }

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

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

#container { width: 1000px; margin: 0 auto; overflow: hidden; }
#topcontainer { width: 100%; }
#container #mainblock { width: 750px; float: left; }
#container #mainblock .inner { width: 750px; }
#container #sideblock { width: 220px; margin: 47px 0 0 30px; float: left; }
#container #sideblock #subContainer .sideWidget > div {
    font-size: 15px;
    font-weight: bold;
    text-align: left;
    text-indent: 10px;
    background-color: #e5e5e5;
    margin: 0 0 30px 0;
    padding: 5px 0 0 0;
    
}
#container #sideblock #subContainer .sideWidget > div ul, #sideblock #subContainer .sideWidget .dpe-flexible-posts {
    font-size: 12px;
    font-weight: normal;
    text-indent: 0;
    background-color: #fff;
    margin: 5px 0 0 0;
}
#container #sideblock #subContainer .sideWidget > div ul.wpp-list li, #sideblock #subContainer .sideWidget .dpe-flexible-posts li {
    width: 210px;
    margin: 0 auto;
    padding: 10px 0;
    border-bottom: 1px solid #c4c4c4;
}
#container #sideblock #subContainer .sideWidget > div ul.wpp-list li img {
    width: 80px;
    height: 40px;
}
#container #sideblock #subContainer .sideWidget > div ul.wpp-list li:last-child, #sideblock #subContainer .sideWidget .dpe-flexible-posts li:last-child {
    border: none;
}

#container #sideblock #subContainer .sideWidget > div ul li.cat-item {
    width: 210px;
    margin: 0 auto;
    padding: 10px 0 0 15px;
    background: url("../images/common/arrow_side.jpg") no-repeat left 13px;
}
#container #sideblock #subContainer .sideWidget > div ul li.cat-item:last-child {
    padding: 10px 0 10px 15px;
}
#container #sideblock #subContainer .sideWidget > div ul li ul.children {
    margin: 0;
}
#container #sideblock #subContainer .sideWidget > div ul li ul.children li {
    padding: 10px 0 0 13px;
    background: url("../images/common/arrow_side.jpg") no-repeat left 13px;
}
#container #sideblock #subContainer .sideWidget > div ul li ul.children li.cat-item:last-child {
    padding: 10px 0 0 15px;
}

#sideblock #subContainer .wpp-list 
#sideblock #subContainer .wpp-list .wpp-thumbnail {

}
#sideblock #subContainer .wpp-list .wpp-post-title, #sideblock #subContainer .sideWidget .dpe-flexible-posts li a .title {
	width: 114px;
	float: left;
	display: block;
}

#sideblock #subContainer .sideWidget .dpe-flexible-posts li {
    overflow: hidden;
}
#sideblock #subContainer .sideWidget .dpe-flexible-posts li a {
}
#sideblock #subContainer .sideWidget .dpe-flexible-posts li a img {
    width: 80px;
    height: 40px;
    margin: 0 5px 0 0;
    float: left;
}













.boxtopline { width: 100%; height: 4px; background-color: #e5000d; position: relative; }
.boxtopline::after { position: absolute; top: 0; right: 0; z-index: 2; content: ''; width: 50%; height: 4px; background-color: #00a0ea; }

/***************************************************** 設定
*****************************************************/
#topicPath { padding: 10px 0 0 0; }
#topicPath ol .home { padding-left: 5px; }
#topicPath ol li { float: left; font-size: 1em; }
#topicPath ol li a { margin-right: 5px; }
#topicPath ol li strong { font-size: 1em; font-weight: normal; }

.icon_box_bk { width: 50px; position: fixed; top: 225px; right: 0; z-index: 50; }
.icon_box_bk a:hover { filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; }

/***************************************************** コンテンツ設定
*****************************************************/
.catIcon { display: inline-block; margin-right: 20px; padding: 2px; width: 100px; text-align: center; color: #fff; font-weight: normal; font-size: 0.8em; background-color: #000; border-radius: 3px; }

.bg01 { background-color: #e5004f; }

.bg02 { background-color: #8fc31f; }

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

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

.gotop {
    display: block;
    position: fixed;
    z-index: 9999;
    bottom: 10px;
    right: 0;
    width: 80px;
    height: 80px;
    text-align: center;
    text-decoration: none;
    transform: translateY(0);
    transition: .5s;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
}
.gotop::after {
    width: 20px;
    height: 20px;
    border-top: 4px solid #000;
    border-right: 4px solid #000;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin: -5px 0 0 -10px;
    position: absolute;
    top: 50%;
    left: 50%;
    content: '';
}

/***************************************************** 設定
*****************************************************/
.gotop { display: block; position: fixed; z-index: 9999; bottom: 10px; right: 10px; width: 80px; padding: 20px 10px; text-align: center; text-decoration: none; }

/***************************************************** clearfix
*****************************************************/
#container .inner:after, #newsList li a:after, .tubepress_container:after, .tubepress_thumbnail_area:after, .clear:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

* html #container .inner, * html #newsList li a, * html .tubepress_container, * html .tubepress_thumbnail_area, * html .clear { /* IE6 */ zoom: 1; }

*:first-child + html #container .inner, *:first-child + html #newsList li a, *:first-child + html .tubepress_container, *:first-child + html .tubepress_thumbnail_area, *:first-child + html .clear { /* IE7 */ zoom: 1; }

/***************************************************** ヘッダー設定
*****************************************************/
header {
	position: relative;
	z-index: 40;
	border-top: 4px solid #e5000d;
    background-color: #fff;
    padding: 0 0 80px 0;
}
header::after {
    position: absolute;
    top: -4px;
    right: 0;
    z-index: 2;
    content: '';
    width: 50%;
    height: 4px;
    background-color: #00a0ea;
}
header .topBox .inner { position: relative; }
header .topBox .inner h1 { font-weight: normal; font-size: 10px; position: absolute; top: 10px; left: 0; }
header .inner .logo {
    width: 105px;
    padding: 40px 0 0 0;
    float: left;
}
header .inner .logo img {
    width: 105px;
}
header .inner .logo a img:hover {
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    opacity: 1.0;
}
header .inner .wrap {
    width: 430px;
    margin-top: 23px;
    float: right;
}
header .inner .wrap .sub {
    overflow: hidden;
}
header .inner .wrap .sub li {
    font-size: 15px;
    line-height: 1.2;
    font-weight: 600;
    padding: 0;
    float: right;
}
header .inner .wrap .sub li .header_tel_list {
    align-content: center;
    flex-wrap: wrap;
    display: flex;
    gap: 15px 15px;
    margin: 15px 0;
}
header .inner .wrap .sub li .header_tel_list li {
    font-size: 16px;
    margin: 0;
    padding: 0;
}
header .inner .wrap .sub li .header_tel_list li:last-of-type {
    margin-right: 0;
}
header .inner .wrap .sub li .header_tel_list li div {
    font-size: 12px;
}
header #global {
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: #fff;
    border-top: 1px solid #bebebe;
    border-bottom: 1px solid #bebebe;
    position: absolute;
    top: 110px;
    left: 0;
}
header #global.fixed {
    position: fixed;
    top: 0;
}
header #global ul {}
header #global ul li {
    position: relative;
    float: left;
    display: block;
    width: auto;
}
header #global ul li a {}


#side_fixed {
    width: 63px;
    position: fixed;
    top: 242px;
    right: 0;
    z-index: 1000;
}
#side_fixed li {
    color: #fff;
    margin: 0 0 15px 0;
}
#side_fixed li a {
    font-size: 17px;
    text-decoration: none;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding: 20px 20px 20px 15px;
    display: block;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
}
#side_fixed li:first-child a { color: #fff; background-color: #00a0ea; }
#side_fixed li:nth-child(2) a { color: #fff; background-color: #e5000d; }
#side_fixed li:nth-child(3) a { color: #fff; background-color: #000; }
#side_fixed li:first-child a:hover { color: #00a0ea; background-color: #fff; }
#side_fixed li:nth-child(2) a:hover { color: #e5000d; background-color: #fff; }
#side_fixed li:nth-child(3) a:hover { color: #000; background-color: #fff; }

.sp-previous-arrow:before, .sp-previous-arrow:after, .sp-next-arrow:before, .sp-next-arrow:after {
    content: '';
    position: absolute;
    width: 50%;
    height: 50%;
    background-color: #FFF;
}
.sp-next-arrow:after {
    right: 30%;
    top: 50%;
    -webkit-transform: skew(-35deg, 0deg);
    -ms-transform: skew(-35deg, 0deg);
    transform: skew(-35deg, 0deg);
}
.sp-previous-arrow:after {
    left: 30%;
    top: 50%;
    -webkit-transform: skew(-145deg, 0deg);
    -ms-transform: skew(-145deg, 0deg);
    transform: skew(-145deg, 0deg);
}

#newsBox2 {
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #f2f3ee;
	background-image: url('../images/top/bg_news.jpg');
	background-repeat: repeat;
	background-position: left top;

}
#newsBox2 .inner {
	padding: 25px 0;
    position: relative;
}
#newsBox2 .inner h2 {
	width: 100px;
    font-size: 15px;
    float: left;
}
#newsBox2 strong {
	float: left;
	width: 80px;
}
#newsBox2 #sliderNewsBox {
	float: left;
	width: 900px;
    margin: 1px 0;
}
#newsBox2 #sliderNewsBox .sp-fade-arrows {
	height: 26px;
	opacity: 1;
}
#newsBox2 #sliderNewsBox .sp-horizontal .sp-arrows {
	width: 15px;
	right: 0;
	left: inherit;
	top: 50%;
	margin-top: -13px;
}
#newsBox2 #sliderNewsBox .sp-arrow {
    position: absolute;
    display: block;
    width: 15px;
    height: 26px;
    cursor: pointer;
}
#newsBox2 #sliderNewsBox .sp-slide {
	background: url(../images/common/arrows.png) no-repeat left center;
    padding: 3.5px 0 3.5px 15px;
}
/*次矢印のアイコンフォント*/
#newsBox2 #sliderNewsBox .sp-next-arrow:before {
	display: block;
	background: url(../images/top/btn_next_news.png) no-repeat left center;
	text-indent: -9999px;
}
/*前矢印のアイコンフォント*/
#newsBox2 #sliderNewsBox .sp-previous-arrow:before {
	display: block;
	background: url(../images/top/btn_prev_news.png) no-repeat left center;
	text-indent: -9999px;
	border-right: 1px solid #d7d3c1;
	-webkit-transform: inherit !important;
	-ms-transform: inherit !important;
	transform: inherit !important;
}
#newsBox2 #sliderNewsBox .sp-previous-arrow:before,
#newsBox2 #sliderNewsBox .sp-previous-arrow:after,
#newsBox2 #sliderNewsBox .sp-next-arrow:before,
#newsBox2 #sliderNewsBox .sp-next-arrow:after {
	content: inherit !important;
	position: absolute;
	width: 15px;
	height: 26px;
	background-color: transparent;
	-webkit-transform: inherit !important;
	-ms-transform: inherit !important;
	transform: inherit !important;
}
#newsBox2 #sliderNewsBox .sp-next-arrow:after {
	right: -30px;
	top: 50%
}
#newsBox2 #sliderNewsBox .sp-previous-arrow:after {
	left: 0;
	top: 50%;
}
#newsBox2 #sliderNewsBox .sp-horizontal .sp-previous-arrow {
    left: 0;
}
#newsBox2 #sliderNewsBox .sp-horizontal .sp-next-arrow {
	right: -34px;
}
#newsBox2 #sliderNewsBox .sp-next-arrow:hover,
#newsBox2 #sliderNewsBox .sp-previous-arrow:hover {
	opacity: 0.7;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}
#newsBox2 #sliderNewsBox .sp-buttons {
	position: relative;
	width: 100%;
	text-align: center;
	padding-top: 0;
	margin-top: -30px;
}
#newsBox2 #sliderNewsBox .sp-button {
	width: 30px;
	height: 4px;
	border: 2px solid #d2d2d2;
	border-radius: 0;
	margin: 4px;
	display: inline-block;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}
#newsBox2 #sliderNewsBox .sp-selected-button {
	border: 2px solid #f39800;
	background-color: #f39800;
}
#newsBox2 strong a {
	margin-left: 15px;
}
#newsBox2 .date {
	margin-right: 20px;
}
#newsBox2 #newslist { width: 74px; height: 18px; margin: -9px 0 0 0; position: absolute; top: 50%; right: 0; }

#mainContainer {
	position: relative;
}
#sliderBox {
    overflow: hidden;
}
#mainContainer .photo {
	position: absolute;
	top: 64%;
	right: 17%;
	z-index: 10;
}
.header-pulldownNavi .box {
	padding: 30px 0;
}
.header-pulldownNavi .box ul {
	margin: 0 auto;
	width: 1000px;
}
.header-pulldownNavi .box li a {
	text-decoration: none;
}
.header-pulldownNavi .box li a:hover {
	text-decoration: underline;
}
.header-pulldownNavi .box li img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
.header-pulldownNavi .box li p {
	margin-top:  10px;
	text-align: center;
}
.header-pulldownNavi #navi01 .box li {
	float: left;
	margin-left: 20px;
	width: 230px;
}
.header-pulldownNavi #navi02 .box ul {
	margin: 0 auto;
	width: 756px;
}
.header-pulldownNavi #navi02 .box li {
	float: left;
	margin-left: 20px;
	width: 232px;
}
.sp-horizontal .sp-previous-arrow {
    left: 75px;
}
.sp-horizontal .sp-next-arrow {
    right: 75px;
}
#menuView {
    background: url(../images/top/bg_menu.jpg) repeat-x center 65%;
}
#menuView .sp-top-thumbnails {
    position: absolute;
    top: 0;
    left: 0;
    margin-bottom: 4px;
    right: 0;
    margin: 0 auto;
}
#menuView .sp-thumbnail img:hover,
#menuView .sp-selected-thumbnail .sp-thumbnail img {
	visibility: hidden;
}
#menuView .sp-thumbnail-container:nth-child(1) li {
    background: url(../images/top/btn_menu01_on.png) no-repeat center top;
}
#menuView .sp-thumbnail-container:nth-child(2) li {
    background: url(../images/top/btn_menu02_on.png) no-repeat center top;
}
#menuView .sp-thumbnail-container:nth-child(3) li {
    background: url(../images/top/btn_menu03_on.png) no-repeat center top;
}
#menuView .sp-thumbnail-container:nth-child(4) li {
    background: url(../images/top/btn_menu04_on.png) no-repeat center top;
}
#menuView .sp-slides .sp-image li {
    display: inline;
    margin-right: 20px;
}
#menuView .sp-slides .sp-image li:nth-child(2n) img {
    padding-top: 100px;
}
#menuView .sp-thumbnails-container .sp-grab {
	cursor: pointer !important;
}
#menuView .sp-next-arrow:hover, #menuView .sp-previous-arrow:hover {
    opacity: 0.7;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
#menuView .sp-previous-arrow:before {
    left: 30%;
    top: 0;
    -webkit-transform: skew(0deg, 0deg);
    -ms-transform: skew(0deg, 0deg);
    transform: skew(0deg, 0deg);
}
#menuView .sp-fade-arrows {
    opacity: 1;
}
#menuView .sp-next-arrow:hover, #menuView .sp-previous-arrow:hover {
    opacity: 0.7;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
#menuView .sp-next-arrow:before {
    right: 30%;
    top: 0;
    -webkit-transform: skew(0deg, 0deg);
    -ms-transform: skew(0deg, 0deg);
    transform: skew(0deg, 0deg);
}
#menuView .sp-arrow {
    position: absolute;
    display: block;
    width: auto;
    height: auto;
    cursor: pointer;
    z-index: 35;
}
#menuView .sp-arrow {
    position: absolute;
    display: block;
    width: auto;
    height: auto;
    cursor: pointer;
    z-index: 35;
}
#menuView .sp-next-arrow:before {
    right: 30%;
    top: 0;
    -webkit-transform: skew(0deg, 0deg);
    -ms-transform: skew(0deg, 0deg);
    transform: skew(0deg, 0deg);
}
#menuView .sp-next-arrow:before {
    right: 30%;
    top: 0;
    -webkit-transform: skew(0deg, 0deg);
    -ms-transform: skew(0deg, 0deg);
    transform: skew(0deg, 0deg);
}
#menuView .sp-previous-arrow:before {
    content: ' ' !important;
    display: block;
    background: url(../images/common/btn_prev2.png) no-repeat left top;
    text-indent: -9999px;
    width: 50px;
    height: 50px;
    border: 1px solid #efefef;
    border-radius: 3px;
}
#menuView .sp-next-arrow:before {
    content: ' ' !important;
    display: block;
    background: url(../images/common/btn_next2.png) no-repeat left top;
    text-indent: -9999px;
    width: 50px;
    height: 50px;
    border: 1px solid #efefef;
    border-radius: 3px;
}
#menuView .sp-horizontal .sp-previous-arrow {
    left: 190px;
}
#menuView .sp-horizontal .sp-next-arrow {
    right: 190px;
}
#u02 {
    background: url(../images/bg_sample02.png) no-repeat center top;
}
#u03 {
    background: url(../images/bg_sample03.png) no-repeat center top;
}
#u04 {
    background: url(../images/bg_sample04.png) no-repeat center top;
}

.foot_banner {
    width: 766px;
    height: 172px;
    background: url(../images/footer/bannar_taiken.png?201706011826) no-repeat left top;
    position: relative;
    margin: 50px auto;
}
.foot_banner a {
    width: 340px;
    height: 53px;
    font-size: 22px;
    font-weight: bold;
    line-height: 53px;
    color: #fff;
    text-decoration: none;
    position: absolute;
    bottom: 20px;
    right: 33px;
    background-color: #000;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
}
.foot_banner a:hover {
    color: #000;
    background-color: #fff;
}
.foot_banner.leftbox {
    width: 1000px;
}
.foot_banner.leftbox a {
    right: 267px
}
footer {
    margin: 0 auto;
    position: relative;
    background-color: #fff;
}

footer .inner #snslink {
    padding: 50px 0 0 0;
    display: flex;
    justify-content: center;
}
footer .inner #snslink li {
    width: 60px;
    height: 60px;
    text-align: center;
}
footer .inner #snslink li .twitter {
    width: 60px;
    height: 60px;
    text-align: center;
    background-color: #000;
    border-radius: 50%;
    position: relative;
}
footer .inner #snslink li .twitter svg {
    width: 60%;
    fill: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}
/*
footer .inner #snslink li:nth-child(1) { background-color: #3b5997; margin: 0; }
footer .inner #snslink li:nth-child(2) { background-color: #1da1f3; }
footer .inner #snslink li:nth-child(3) { background-color: #d72d20; }
footer .inner #snslink li:nth-child(4) { background-color: #00a5df; }
footer .inner #snslink li:nth-child(5) { background-color: #00ba01; }
footer .inner #snslink li:nth-child(3) img, footer .inner #snslink li:nth-child(4) img { width: 36px; height: auto; margin: 4.5px 0 0 0; }
*/
footer .inner #sitemap {
    width: 1000px;
    margin: 0 auto;
    padding: 50px 20px 100px 20px;
    overflow: hidden;
}
footer .inner #sitemap #foot_info img {
    margin: 0 0 15px 0;
}
footer .inner #sitemap #foot_info, footer .inner #sitemap ul {
    width: 225px;
    margin: 0 0 0 20px;
    float: left;
}
footer .inner #sitemap #foot_info form {
    margin: 15px 0 0 0;
}
footer .inner #sitemap ul:nth-child(3) {
    margin: 0;
}
footer .inner #sitemap ul li {
    min-height: 16px;
    background: url(../images/footer/arrow02.jpg) no-repeat left center;
    margin: 0 0 10px 0;
    padding: 0 0 0 10px;
}
footer .inner #sitemap ul li:last-child {
    margin: 0;
}

footer .inner #sitemap ul:last-of-type li:last-of-type {
    background: url();
    margin-top: 20px;
    padding: 0;
}

#copyright {
	display: block;
	padding: 15px 0;
	text-align: center;
	background-color: #fff;
    position: relative;
	border-bottom: 4px solid #e5000d;
}
#copyright::after {
    position: absolute;
    bottom: -4px;
    right: 0;
    z-index: 2;
    content: '';
    width: 50%;
    height: 4px;
    background-color: #00a0ea;
}

.description dt {
	margin-bottom: 40px;
	text-align: center;
}
.description .textBox {
	font-size: 18px;
	text-align: center;
}
article {
	line-height: 220%;
}
#unit01,
#unit02,
#unit03 {
	padding: 60px 0;
}
#unit01,
#unit03 {
	background: url("../images/common/bg_border01.png") repeat left top !important;
}
#unit01 .description .textBox {
	margin: 0 auto 60px;
	width: 550px;
}
#unit02 .description dd {
	margin-bottom: 60px;
}
#unit02 .description .textBox {
	margin: 0 auto 60px;
	width: 840px;
}
#unit02 .description .table {
	margin: 0 auto;
	width: 872px;
}
#unit02 .description .table em {
	display: block;
	margin: 10px 10px 10px 2em;
	font-size: 16px;
	color: #ea68a2;
}
#unit03 .description .textBox {
	margin: 0 auto 60px;
	width: 650px;
}
#unit03 .flow {
	margin: 0 auto 60px;
	width: 940px;
}
#unit03 .flow li {
	margin-bottom: 50px;
	padding-bottom: 100px;
	background: url("../images/common/arrow_bottom.png") no-repeat center bottom;
}
#unit03 .flow li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	background-image: none;
}
#unit03 .flow li:nth-child(1) dl {
	background: url("../images/top/unit03_flow_image01.png") no-repeat 60px center;
	background-color: #fdfbe1;
}
#unit03 .flow li:nth-child(2) dl {
	background: url("../images/top/unit03_flow_image02.png") no-repeat 60px center;
	background-color: #fdfbe1;
}
#unit03 .flow li:nth-child(3) dl {
	background: url("../images/top/unit03_flow_image03.png") no-repeat 60px center;
	background-color: #fdfbe1;
}
#unit03 .flow li:nth-child(4) dl {
	background: url("../images/top/unit03_flow_image04.png") no-repeat 60px center;
	background-color: #fdfbe1;
}
#unit03 .flow li dl {
	padding: 20px 20px 20px 390px;
	min-height: 340px;
	font-size: 18px;
}
#unit03 .flow li dl dt {
	margin: 50px auto 40px;
}
#unit03 .flow li .btnBox {
	margin-top: 40px;
}
article .ttl {
    font-size: 26px;
    font-weight: 500;
    margin: 0.3em 0 0.8em 0;
    padding: 0;
    line-height: 1.3em;
}

/***************************************************** お問い合わせページ設定
*****************************************************/
.lawnTable { table-layout: fixed; margin: 0 auto; width: 820px; border: 1px solid #babab3; }
.lawnTable th { padding: 20px; width: 230px; text-align: center; background-color: #f1f1f1; border-right: 1px solid #babab3; border-bottom: 1px solid #babab3; }
.lawnTable td { padding: 20px; text-align: left; background-color: #f8f8f8; border: 1px solid #babab3; }

.agreeBox { margin: 0 auto; width: 820px; }
.agreeBox .textBox { overflow-y: scroll; margin: 20px auto; padding: 10px; width: 90%; height: 120px; text-align: left; border: 1px solid #ccc; }
.agreeBox .btnBox .btn{ text-align: center; }
.agreeBox .btnBox .btn label { display: block; margin: 0 auto; padding: 10px; width: 230px; border: 1px solid #ccc; }
.agreeBox .btnBox .btn input { width: auto !important; }

.agreeBox .btnBox { width: 750px; margin: 0 auto 40px auto; text-align: center; }
.agreeBox .btnBox dl { display: block; margin: 10px 0 40px 0;}
.agreeBox .btnBox dl dt {
    width: 100px !important;
    clear: both !important;
    font-size: inherit !important;
    font-weight: bold !important;
    padding: 10px 0px !important;
    text-align: left !important;
    border: none !important;
    margin: 0px !important;
}
.agreeBox .btnBox dl dd {
    border: none !important;
    margin: 0px !important;
    padding: 10px 0 !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-align: left !important;
}

.form_info, .thanks_info { width: 750px; margin: 30px auto 0 auto; }
.form_info ul {  }
.form_info ul li { text-align: left; }

.form_info ul li .icon_required { color: #a40000; font-weight: bold; margin: 0 5px; padding: 0 5px; }
#mailformpro table th.required {
    position: relative;
}
#mailformpro table th.required:before {
    font-size: 12px;
    line-height: 13px;
    font-weight: bold;
    content: "[必須]";
    color: #a40000;
    margin: -13px 0 0 0;
    padding: 5px 0;
    position: absolute;
    top: 50%;
    right: 10px;
}

.thanks_info p { font-size: 12px; margin: 30px 0 50px 0; }

#mailformpro table { width: 750px; margin: 0 auto; }
#mailformpro table th { width: 200px; font-weight: normal; text-align: left; }
#mailformpro table td { text-align: left; }
#mailformpro table td .sizeS { width: 100% !important; }
#mailformpro table td .sizeL { width: 100% !important; }
#mailformpro table td input, #mailformpro table td select, #mailformpro table td textarea {
    padding: 10px;
    background-color: #f9fafa;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: inherit;
}
#mailformpro table td textarea {
    height: 120px !important;
}
#mailformpro table td label {
    border: none !important;
}
#mailformpro table td .qualification_title { font-size: 15px; font-weight: bold; margin: 0 0 -20px 0; clear: both; }
#mailformpro table td .qualification_list {
    margin: 0 0 -15px 0;
    overflow: hidden;
}
#mailformpro table td .qualification_list li {
    margin: 0 15px 15px 0;
    float: left;
}
#mailformpro table td .qualification_list li input {
    margin: -2px 5px 0 0;
}

#mailformpro .mfp_buttons input {
    width: 339px;
    height: 79px;
    text-shadow: none;
    color: #fff;
    border: none;
    cursor: pointer;
}
#contact #mailformpro .mfp_buttons input { background: #000; }
#tour #mailformpro .mfp_buttons input { background: #00a0ea; }
#recruit #mailformpro .mfp_buttons input { background: #e5000d; }

#mailformpro .mfp_buttons input:hover { box-shadow: none; }
#contact #mailformpro .mfp_buttons input:hover { background: #fff; color: #000; }
#tour #mailformpro .mfp_buttons input:hover { background: #fff; color: #00a0ea; }
#recruit #mailformpro .mfp_buttons input:hover { background: #fff; color: #e5000d; }

table#mfp_confirm_table tr td { border: 1px solid #ccc; }

#company table {
    margin: 50px auto;
    width: 82%;
    border: none;
    border-top: solid 1px #c9c9c9;
    border-bottom: solid 1px #c9c9c9;
    border-collapse: separate;
    border-spacing: 0 10px;
}
#company table th {
    margin: 0;
    padding: 10px 10px 10px 40px;
    min-height: 25px;
    width: 25%;
    text-align: left;
    vertical-align: middle;
    font-size: 1em;
    font-weight: normal;
    border-right: solid 2px #000;
    background-color: #fff;
}
#company table td {
    margin: 0;
    padding: 10px 30px 10px 20px;
    min-height: 25px;
    font-size: 1em;
    line-height: 160%;
    text-align: left;
    vertical-align: middle;
    border: none;
    white-space: nowrap;
    overflow: hidden;
}
#company table td.bar {
    padding: 0;
    width: 100%;
    height: 1px;
    border-top: solid 1px #c9c9c9;
}

#privacy_policy ol.list {
    width: 900px;
    margin: 0 auto;   
}
#privacy_policy ol.list > li {
    text-align: left;
    margin: 30px 0;
}
#privacy_policy ol.list > li h2 {
    margin: 0 0 10px 0;
}

#recruit #container article section #work {
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    margin: 50px 0;
}
#recruit #container article section #work div {
    font-size: 15px;
    font-weight: normal;
}
#recruit #container article #opening_staff {
    margin: 50px 0;
}
#recruit #container article section #work {
    margin: 0 0 50px 0;
}
#recruit #container article section .recruit_block {
    margin: 0 0 150px 0;
}
#recruit #container article section .recruit_block .recruit_title {
    margin: 0 0 50px 0;
}
#recruit #container article section .recruit_block .recruit_main_text {
    font-size: 26px;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 0 30px 0;
}
#recruit #container article section .recruit_block #instructor {
    width: 800px;
    text-align: center;
    margin: 0 auto;
}
#recruit #container article section .recruit_block #instructor img {
    width: 75px;
    height: auto;
    margin: 0 auto;
    display: block;
}
#recruit #container article section .recruit_block #instructor div {
    font-size: 20px;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 auto 20px auto;
}
#recruit #container article section .recruit_block #benefits {
    width: 900px;
    margin: 0 auto;
    overflow: hidden;
}
#recruit #container article section .recruit_block #benefits li {
    width: 210px;
    margin: 0 0 0 20px;
    float: left;
}
#recruit #container article section .recruit_block #benefits li:first-child {
    margin: 0;
}
#recruit #container article section .recruit_block #benefits li img {
    margin: 0;
}
#recruit #container article section .recruit_block #benefits li .benefits_title {
    font-size: 16px;
    font-weight: bold;
}
#recruit #container article section .recruit_block #address {
    font-size: 18px;
    font-weight: bold;
}
#recruit #container article section .recruit_block iframe {
    width: 100%;
    margin: 50px 0 0 0;
}
#recruit #container article section .recruit_block #working_place {
    margin: 0 0 80px 0;
}
#recruit #container article section .recruit_block .job_category {
    font-size: 25px;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 0 30px 0;
}
#recruit #container article section .recruit_block .job_part {
    font-size: 23px;
    line-height: 1.5;
    font-weight: bold;
    color: #46a6ea;
    margin: 0 auto 10px auto;
    display: block;
}
#recruit #container article section .recruit_block .job_detail {
    width: 900px;
    text-align: left;
    margin: 0 auto 100px auto;
}
#recruit #container article section .recruit_block .job_detail .job_detail_title {
    height: 25px;
    font-size: 18px;
    line-height: 19px;
    font-weight: bold;
    margin: 0 auto 10px auto;
    background: url(../images/common/h2.jpg) no-repeat left center;
    padding: 5px 0 0 15px;
}
#recruit #container article section .recruit_block .job_detail .job_detail_text {
    margin: 0 0 80px 0;
}
