/*
Theme Name: JSDP Theme
Theme URI: 
Author: the WordPress team
Author URI: 
Description: 
Version: 1.0
Tags: 
*/


/* --------------------------------------------------
	reset
-------------------------------------------------- */
*,
::before,
::after { box-sizing: border-box; min-width: 0;}

html { line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent;}
body { margin: 0;}
main { display: block;}
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0;}
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0;}
ul, ol { margin: 0; padding: 0; list-style: none;}
ul li, ol li { margin: 0; padding: 0; list-style-type: none;}
dd { margin-left: 0;}
hr { box-sizing: content-box; height: 0; overflow: visible; border-top-width: 1px; margin: 0; clear: both; color: inherit;}
pre { font-family: monospace, monospace; font-size: inherit;}
address { font-style: inherit;}
a { background-color: transparent; text-decoration: none; color: inherit;}
abbr[title] { text-decoration: underline dotted;}
code, kbd, samp { font-family: monospace, monospace; font-size: inherit;}
small { font-size: 80%;}
sub,
sup { line-height: 0; position: relative; vertical-align: baseline;}

svg, img, embed, object, iframe { vertical-align: bottom;}

/* Forms */
/* ============================================ */
button, input, optgroup, select, textarea { -webkit-appearance: none; appearance: none; background: transparent; padding: 0; margin: 0; border-radius: 0;
 color: inherit; font: inherit; text-align: inherit; text-transform: inherit; vertical-align: middle;
}
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer;}
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default;}
:-moz-focusring { outline: auto;}
select:disabled { opacity: inherit;}
option { padding: 0;}
fieldset { margin: 0; padding: 0; min-width: 0;}
legend { padding: 0;}

progress { vertical-align: baseline;}
textarea { overflow: auto;}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button { height: auto;}
[type="search"] { outline-offset: -2px;}
[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit;}
[type="number"] { -moz-appearance: textfield;}
label[for] { cursor: pointer;}
details { display: block;}
summary { display: list-item;}
[contenteditable]:focus { outline: auto;}

table { border-color: inherit; border-collapse: collapse;}
td,
th { vertical-align: top; padding: 0;}


/*	Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box;
-webkit-user-select: none;
   -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;

-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
  	  touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}

.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0;}
.slick-list:focus { outline: none;}
.slick-list.dragging{ cursor: pointer; cursor: hand;}
.slick-slider .slick-track,
.slick-slider .slick-list{
-webkit-transform: translate3d(0, 0, 0);
   -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
     -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
}
.slick-track { position: relative; top: 0; left: 0; display: block;}
.slick-track:before,
.slick-track:after { display: table; content: '';}
.slick-track:after { clear: both;}
.slick-loading .slick-track { visibility: hidden;}
.slick-slide { display: none; float: left; height: 100%; min-height: 1px;}
[dir='rtl'] .slick-slide { float: right;}
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none;}
.slick-slide.dragging img { pointer-events: none;}
.slick-initialized .slick-slide { display: block; outline: none;}
.slick-loading .slick-slide { visibility: hidden;}
.slick-vertical .slick-slide{ display: block; height: auto;}
.slick-arrow.slick-hidden { display: none;}

.slick-arrow { width: 50px; height: 50px; position: absolute; top: 50%; transform: translateY(-50%);
 background: #6b9d57; border: none; border-radius: 50%; z-index: 100;
 text-indent: -9999em; outline: none;
}
	.slick-arrow:before{ position: absolute; content: ''; display: block; width: 16px; height: 16px; top: 50%; transform: translateY(-50%) rotate(45deg);}
.slick-prev:before { left: 38%; border-bottom: solid 3px #fff; border-left: solid 3px #fff;}
.slick-next:before { right: 38%; border-top: solid 3px #fff; border-right: solid 3px #fff;}

/** Dots */
.slick-dotted.slick-slider{ margin-bottom: 30px;}
.slick-dots { position: absolute; bottom: -25px; display: block; width: 100%; padding: 0; margin: 0; text-align: center;}
.slick-dots li { position: relative; display: inline-block; width: 10px; height: 10px; margin: 0 5px; padding: 0; cursor: pointer;}
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 10px; height: 10px;cursor: pointer;
 color: transparent; border: 0; outline: none; background: transparent; 
}
.slick-dots li button:hover,
.slick-dots li button:focus{ outline: none;}

@media (max-width: 801px) {
}
@media (max-width: 481px) {
}



/*		font-style
-------------------------------------------------- */
html { font-size: 16px;}
html.fs-s { font-size: 12px;}
html.fs-l { font-size: 21px;}
body { width: 100%;
	background: #fbf7e3;
	font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
/*	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.fixed { position: fixed !important;}
input, textarea {font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;}
.min {font-family: "游明朝", "Yu Mincho", "YuMincho", serif;}
@media (max-width: 801px) {
	body { font-size: 14px;}
}
@media (max-width: 481px) {
	body { font-size: 12px;}
}

::selection{ background: #feffaf; color: #000;}
::-moz-selection{ background: #feffaf; color: #000;}


a { color:#000; text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px;}
a:link   { color:#000;}
a:visited{ color:#000;}
a:hover  { color:#000; text-decoration: none;}
a:active { color:#002159;}

em{ font-style: normal;}


/*		utility
-------------------------------------------------- */
.cf{ clear: both;}
.cf:after{ content: ''; display: block; clear: both;}



#contact ul li label.error {
	position: absolute; top: -30px; left: -10px;
	padding: 5px 8px;
	background: #d00; border-radius: 5px;
	color: #fff; font-size: 12px;
	opacity: 0;
	animation: .5s showError linear forwards .2s;
}
#contact ul li label.error:before{ content: ''; display: block; width: 8px; height: 8px; background: #d00;
	transform: rotate(45deg);
	position: absolute; bottom: -4px; left: 20px;
}
@keyframes showError{
	100%{ opacity: 1;}
}


#hd { position: relative; width: 100%; border-top: solid 4px #50a63a; background: #fff; z-index: 200;}
#hd .inner-hd { width: 94%; margin: 0 auto; padding-top: 16px;}
#hd .hd-ctn { display: flex; justify-content: space-between; align-items: center;}
#hd .logo { width: 30%;}
#hd .subNav{ width: 68%;}
#hd .logo a { display: block; width: 94%; max-width: 350px;}
#hd .logo a img { width: 100%;}
#hd .hd-ctn .nav-flex { display: flex; justify-content: space-around; align-items: center; width: 100%; max-width: 720px; margin: 0 0 0 auto;}
#hd .hd-ctn .asidelink { width: 44%; max-width: 320px;}
#hd .hd-ctn .fontSize{ width: 30%; border-left: solid 1px #d4d4d4; border-right: solid 1px #d4d4d4;}
#hd .hd-ctn .lang { width: 26%; max-width: 160px; padding-left: 20px;}

#hd .hd-ctn .asidelink ul { font-size: 0; text-align: right;}
#hd .hd-ctn .asidelink ul li { display: inline-block; padding: 0 14px; font-size: 1.0rem; border-left: solid 1px #d4d4d4;}
#hd .hd-ctn .asidelink ul li:before { content: ''; position: relative; display: inline-block; width: 8px; height: 8px; vertical-align: middle;
 border-top: solid 2px #50a63a; border-right: solid 2px #50a63a; transform: rotate(45deg);
}
#hd .hd-ctn .asidelink ul li a { display: inline-block; margin-left: 6px; color: #000; text-decoration: none; vertical-align: middle;}
#hd .hd-ctn .asidelink ul li a:hover { text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px;}

#hd .hd-ctn .fontSize dl { display: table; width: 100%; padding: 0 12px;}
#hd .hd-ctn .fontSize dl dt,
#hd .hd-ctn .fontSize dl dd { display: table-cell; vertical-align: middle;}
#hd .hd-ctn .fontSize dl dt { font-size: 16px; font-weight: 700; text-align: center;}
#hd .hd-ctn .fontSize dl dd { font-size: 15px;}
#hd .hd-ctn .fontSize dl dd span { display: block; width: 26px; height: 26px; background: #dbdbdb; border-radius: 50%; overflow: hidden;
 text-align: center; line-height: 26px; cursor: pointer;
}
#hd .hd-ctn .fontSize dl dd span.on { background: #50a63a; color: #fff; font-weight: 700;}
#hd .hd-ctn .fontSize dl dd span:hover { color: #50a63a; font-weight: 700;}
#hd .hd-ctn .fontSize dl dd span.on:hover { color: #fff;}
/*
#hd .hd-ctn .lang .goog-te-gadget { position: relative; display: block !important; font-size: 0px;}
#hd .hd-ctn .lang .goog-te-gadget:after { content: ''; display: block; width: 8px; height: 8px;
 border-bottom: solid 1px #333; border-right: solid 1px #333;
 position: absolute; right: 10px; top: 50%; transform: translateY(-50%) rotate(45deg);
}
#hd .hd-ctn .lang select { width: 100%; font-size: 15px; padding: 2px 8px;}
#hd .hd-ctn .lang span { display: none;}
*/
@media (max-width: 1201px) {
	#hd .logo { width: 25%;}
	#hd .subNav{ width: 72%;}
	#hd .hd-ctn .asidelink ul li { padding: 0 12px; font-size: 0.88rem;}
	#hd .hd-ctn .fontSize dl dt { font-size: 0.88rem;}
	#hd .hd-ctn .fontSize dl dd { font-size: 0.8rem;}
}
@media (max-width: 801px) {
	#hd { position: fixed; top: 0; left: 0; height: 60px; border-top: solid 3px #50a63a; border-bottom: solid 1px #50a63a;}
	#hd.linked { border-bottom: solid 1px #50a63a;}
	#hd .inner-hd { width: 94%;padding: 9px 0 10px;}
	#hd .logo { width: 50%;}
	#hd .logo a { width: 100%; max-width: 180px;}
	#hd .hd-ctn .asidelink,
	#hd .hd-ctn .fontSize,
	#hd .hd-ctn .lang { display: none;}
}
@media (max-width: 481px) {
	#hd { height: 50px;}
	#hd .logo a { max-width: 140px;}
}



#gNav { position: relative; width: 100%; background: #fff; border-bottom: solid 1px #d6cdb6; z-index: 199;}
#gNav .inner-nav { margin: 0 auto;}
#gNav ul { padding: 15px 0; font-size: 0; text-align: center;}
#gNav ul li { display: inline-block; padding: 0 20px; border-left: solid 1px #6b9d57; font-size: 1.3rem; line-height: 1;}
#gNav ul li:last-child { border-right: solid 1px #6b9d57;}
#gNav ul li a { display: block; padding: 0 20px; color: #000; font-weight: 700; text-decoration: none;}
#gNav ul li a:hover { color: #50a63a;}
@media (max-width: 1601px) {
	#gNav ul { padding: 8px 0;}
	#gNav ul li { margin: 6px 0;}
}
@media (max-width: 1201px) {
	#gNav ul li { font-size: 1.0rem;}
	#gNav ul li a { padding: 0 	15px;}
}
@media (max-width: 1001px) {
	#gNav ul li { padding: 0 30px; font-size: 0.88rem;}
	#gNav ul li a { padding: 0 8px;}
}
@media (max-width: 801px) {
	#gNav { display: none;}
}


#sp-menu { display: none; position: fixed; right: 0; top: -1px; width: 60px; height: 60px; background: #50a63a; z-index: 201;}
#sp-menu div { position: relative; width: 100%; height: 100%;}
#sp-menu div span { display: block; width: 50%; height: 2px; background: #fff; position: absolute; }
#sp-menu div span:nth-of-type(1) { top: 20px; left: 50%; transform: translate(-50%,0);}
#sp-menu div span:nth-of-type(2) { top: 28px; left: 50%; transform: translate(-50%,0);}
#sp-menu div span:nth-of-type(3) { top: 36px; left: 50%; transform: translate(-50%,0);}
#sp-menu.active div span:nth-of-type(1) { transform: translate(-50%,8px) rotate(45deg);}
#sp-menu.active div span:nth-of-type(2) { opacity: 0;}
#sp-menu.active div span:nth-of-type(3) { transform: translate(-50%,-8px) rotate(-45deg);}
@media (max-width: 801px) {
	#sp-menu { display: block;}
}
@media (max-width: 481px) {
	#sp-menu { width: 50px; height: 50px;}
	#sp-menu div span:nth-of-type(1) { top: 16px;}
	#sp-menu div span:nth-of-type(2) { top: 24px;}
	#sp-menu div span:nth-of-type(3) { top: 32px;}
}


#sp-nav { display: block; width: 160px; position: absolute; right: 20px; top: 38px; z-index: 201;}
#sp-nav.open { top: 0;}
#sp-nav p { position: relative; display: none; padding: 0 10px; border-top: solid 1px #d6cdb6; font-size: 1.0rem;}
#sp-nav p.topLv { padding-right: 60px;}
#sp-nav p.topLv:after { content: ''; display: block; width: 10px; height: 10px; border-top: solid 2px #50a63a; border-right: solid 2px #50a63a;
	position: absolute; right: 20px; top: 50%; transform: translateY(-60%) rotate(135deg); opacity: 1;
}
#sp-nav p.topLv.open:after { transform: translateY(-40%) rotate(-45deg);}
#sp-nav p a { display: block; padding: 6px 10px; color: #000; text-decoration: none;}
#sp-nav ul { display: none; padding: 0 15px; background: #fff;}
#sp-nav ul li { border-bottom: solid 1px #d6cdb6; font-size: 1.0rem;}
#sp-nav ul li:last-child { border-bottom: none;}
#sp-nav ul li a { display: block; padding: 5px; color: #000; text-decoration: none;}
#sp-nav p a:active,
#sp-nav p a:hover,
#sp-nav ul li a:active,
#sp-nav ul li a:hover { color: #50a63a;}
#sp-nav .lang .goog-te-gadget { position: relative; display: block !important; width: 100%; margin: 0 auto; font-size: 0px;}
#sp-nav .lang .goog-te-gadget:after { content: ''; display: block; width: 8px; height: 8px;
 border-bottom: solid 1px #333; border-right: solid 1px #333;
 position: absolute; right: 10px; top: 50%; transform: translateY(-50%) rotate(45deg);
}
#sp-nav .lang select { width: 100%; font-size: 14px; padding: 2px 8px; border: solid 1px #ccc; appearance: none; -webkit-appearance: none; }
#sp-nav .lang span { display: none;}
@media (max-width: 1201px) {
	#sp-nav { top: 2.5vw;}
}
@media (max-width: 1001px) {
	#sp-nav { width: 140px;}

}
@media (max-width: 801px) {
	#sp-nav { width: 100%; height: 100vh; position: fixed; left: 0; top: -150vh; transition: 0.4s linear; z-index: 99;}
	#sp-nav .inner { width: 100%; height: 100%; padding: 60px 0 20px; background: #fbf7e3;}
	#sp-nav .inner .scroll { width: 100%; height: 100%; overflow-y: scroll;}
	#sp-nav p { display: block;}
	#sp-nav .lang { display: block !important; padding: 10px; border-top: solid 1px #d6cdb6;}
	#sp-nav .lang .goog-te-gadget { max-width: 200px;}
}
@media (max-width: 481px) {
	#sp-nav .inner { padding: 50px 0 20px;}
	#sp-nav p { padding: 0 10px;font-size: 0.88rem;}
	#sp-nav ul li { font-size: 0.8rem;}
}


.pagetop { position: fixed; right: 4%; bottom: 30px; width: 60px; z-index: 99;}
.pagetop a { position: relative; display: block; width: 100%; padding-top: 100%; background: #6b9d57; border-radius: 50%;}
.pagetop a:before { content: ''; display: block; width: 12px; height: 12px; border-top: solid 1px #fff; border-left: solid 1px #fff;
 position: absolute; top: 50%; left: 50%; transform: translate(-50%,-25%) rotate(45deg);
}
.pagetop a:hover { opacity: 0.85;}

#ft { position: relative; border-top: solid 1px #d6cdb6;}
#ft .inner-ft { width: 94%; max-width: 1200px; margin: 0 auto; padding: 50px 0;}
#ft .ft-flex { display: flex; justify-content: space-between; flex-direction: row-reverse;}
#ft .ft-flex .ft-logo { width: 25%;}
#ft .ft-flex .ft-ctn { width: 74%;}
#ft .ft-logo h3 a { display: block; width: 92%; max-width: 320px;}
#ft .ft-logo h3 a img { width: 100%;}
#ft .ft-ctn { display: flex; justify-content: space-between;}
#ft .ft-ctn .bloc { width: 33%;}
#ft .ft-ctn .bloc p { position: relative; margin-bottom: 20px; padding-left: 35px; font-size: 1.12rem; font-weight: 700; line-height: 1.4;}
#ft .ft-ctn .bloc p.topLv { margin-bottom: 10px;}
#ft .ft-ctn .bloc p:before,
#ft .ft-ctn .bloc p:after { content: ''; display: block; position: absolute; top: 50%;}
#ft .ft-ctn .bloc p:before{ width: 23px; height: 23px; background: #6b9d57; border-radius: 50%; left: 0; transform: translateY(-50%);}
#ft .ft-ctn .bloc p:after { width: 8px; height: 8px; border-top: solid 1px #fff; border-right: solid 1px #fff;
 left: 6px; transform: translateY(-50%) rotate(45deg);
}
#ft .ft-ctn .bloc p a { color: #000; text-decoration: none;}
#ft .ft-ctn .bloc ul { margin-bottom: 20px; padding-left: 35px;}
#ft .ft-ctn .bloc ul li { position: relative; margin-bottom: 4px; padding-left: 20px; font-size: 1.0rem; line-height: 1.4;}
#ft .ft-ctn .bloc ul li:after { content: ''; display: block; width: 8px; height: 8px; border-top: solid 1px #6b9d57; border-right: solid 1px #6b9d57;
 position: absolute; top: 50%; left: 0px; transform: translateY(-50%) rotate(45deg);
}

#ft .ft-ctn .bloc ul li a { color: #000; text-decoration: none;}
#ft .ft-ctn .bloc p a:hover,
#ft .ft-ctn .bloc ul li a:hover { color: #6b9d57;}
#ft .copyright { padding: 20px 0;}
#ft .copyright p { font-size: 13px; text-align: center;}

@media (max-width: 1201px) {
	#ft .ft-ctn .bloc p { font-size: 1.0rem;}
	#ft .ft-ctn .bloc ul li { font-size: 0.88rem;}
}

@media (max-width: 801px) {
	#ft .inner-ft { width: 100%; padding: 0px;}
	#ft .ft-flex { display: block;}
	#ft .ft-flex .ft-logo { width: 100%; padding: 30px 0;}
	#ft .ft-flex .ft-ctn { width: 100%;}

	#ft .ft-logo h3 a { margin: 0 auto;}

	#ft .ft-ctn { display: block; border-bottom: solid 1px #d6cdb6;}
	#ft .ft-ctn .bloc { width: 100%;}
	#ft .ft-ctn .bloc p { display: block; width: 100%; margin-bottom: 0px; padding: 6px; padding-right: 60px; font-size: 1.0rem;}
	#ft .ft-ctn .bloc p.topLv { margin-bottom: 0px;}
	#ft .ft-ctn .bloc p:before{ content: ''; display: block; width: 100%; height: 1px; background: #d6cdb6;
	 position: absolute; left: 0; top: 0;
	}
	#ft .ft-ctn .bloc p:after { opacity: 0;}
	#ft .ft-ctn .bloc p.topLv:after { width: 10px; height: 10px; background: none; border-top: solid 2px #6b9d57; border-right: solid 2px #6b9d57;
	 left: auto; right: 20px; top: 50%; transform: translateY(-60%) rotate(135deg); opacity: 1;
	}
	#ft .ft-ctn .bloc p.topLv.open:after { transform: translateY(-40%) rotate(-45deg);}
	#ft .ft-ctn .bloc p a { display: block; padding: 6px 16px;}
	#ft .ft-ctn .bloc ul { display: none; margin-bottom: 0px; padding: 0 10px;}
	#ft .ft-ctn .bloc ul li { margin-bottom: 0px; padding: 6px; border-top: solid 1px #d6cdb6; font-size: 0.88rem;}
	#ft .ft-ctn .bloc ul li:first-child { border-top: none}
	#ft .ft-ctn .bloc ul li a { display: block; padding: 6px;}
	#ft .ft-ctn .bloc ul li:after { left: auto; right: 10px;}

	#ft .copyright p { font-size: 12px;}
}
@media (max-width: 481px) {
	#ft .ft-logo h3 a { width: 50%;}
	#ft .ft-ctn .bloc p { font-size: 0.88rem;}
	#ft .ft-ctn .bloc p a { padding: 4px 12px;}
	#ft .ft-ctn .bloc ul li { font-size: 0.8rem;}
	#ft .ft-ctn .bloc ul li a { padding: 4px;}
	#ft .copyright p { font-size: 8px;}
}


@media (max-width: 801px) {
	.wrap { padding-top: 60px;}
}
@media (max-width: 481px) {
	.wrap { padding-top: 50px;}
}


.red { color: #d00;}

span.all { border: solid 1px #e89a3d; background: #fff; color: #e89a3d;}
span.cate-info { border: solid 1px #ec549c; background: #ec549c; color: #fff;}
span.cate-event{ border: solid 1px #58ab85; background: #58ab85; color: #fff;}
span.cate-job { border: solid 1px #367bd9; background: #367bd9; color: #fff;}

.skiptranslate { display: none !important;}