
@charset "utf-8";
/*=============================================================
 Common Layout
=============================================================*/
/* reset style
-------------------------------------------------------------*/
/* .wf-loading .fontMgothic, .wf-loading .h1, .wf-loading ul li, .wf-loading p {
visibility: hidden;
}
*/ 
.wf-active .fontMgothic, .wf-inactive .h1, .wf-inactive ul li, .wf-inactive p {
visibility: visible;
}



* {
	padding: 0;
	margin: 0;
}
section,
article,
aside,
hgroup,
header,
footer,
nav,
figure,
figcaption,
summary {
	display: block;
	padding: 0;
	margin: 0;
}
ol,
ul,
dl,
li,
dt,
dd {
	list-style: none;
}
img {
	vertical-align: top;
}
html {
	-webkit-text-size-adjust: 100%;
}

body {
	color: #333333;
/*	font: normal normal 14px/1 "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	font: normal normal 14px/1 dnp-shuei-mgothic-std, sans-serif;	
	letter-spacing: 0.05em;
	background: #fff;
	text-align: left;
}
body .fontMgothic {
	font-family:dnp-shuei-mgothic-std, sans-serif;
}

a,
img {
	border: none;
}
a {
	outline: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
}
sup,
sub {
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	margin: 0 1px;
	position: relative;
}
sup {
	bottom: 0.7ex;
}
sub {
	top: 0.1ex;
}
strong{
	font-weight:600;
}


/* JS element
-------------------------------------------------------------*/
.noSc,
.telLink,/* for mobile */
.setAutoHeight,
.setAutoHeightTgr,
.ah-tgr {
}
/* text Layout
-------------------------------------------------------------*/
.textBold {
	font-weight: 600 !important;
}
.textNormal {
	font-weight: normal !important;
}
.textItalic {
	font-style: italic;
}
/*---.nowrap   --- SmartPhone : nowrap */
/*---.nowrap-pc --- SmartPhone/tablet P : normal */
.nowrap,
.nowrap-pc {
	white-space: nowrap;
}
.noNowrap {
	white-space: normal !important;
}
.textBreak {
	word-break: break-all;
}
small {
	font-size: 100%;
}
.textSS {
	font-size: 75%;
}  /* 12px */
.textS {
	font-size: 87.5%;
} /* 14px */
.textL {
	font-size: 112.5%;
}/* 18px */
.textLL {
	font-size: 125%;
} /* 20px */
.sp-textS {
}
/* Color */
/*.textRed{color:#ff003c !important;}
.textRed{color:#D0104C !important;}
.key{color:#ffdc0a !important;}*/

.textRed{color:#BE053F !important;}
.textWh{color:#ffffff !important;}
.key{color:#E98B2A !important;}


/* indent */
.textIdt-numDot {/* 1. text */
	text-indent: -1.32em;
	padding-left: 1.32em;
}
/* a Element
-------------------------------------------------------------*/
a {
/*	color: #333333; */
color: #183CB2; 
	text-decoration:none;
}
a:visited {
/*	color: #333333; */
	color: #70649A;
}
a:hover {
/*	color: #333333; */
	color: #0079D6;
	text-decoration:underline;
}
a.line:hover {
	text-decoration:underline !important;
}
a,
button,
input[type="submit"] {
	transition-property: color, background, opacity, border, box-shadow, transform;
	transition-duration: .3s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
/* overOpc */
.overOpc {
	transition: opacity .3s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
html:not(.mobile) .overOpc:hover,
html:not(.mobile) a:hover .overOpc {
	opacity: 0.7;
}
/* overImgMv */
a.overImgMv,
a.overImgMv>.frame {
	display: block;
	overflow: hidden;
}
html:not(.mobile) a.overImgMv>img,
html:not(.mobile) a.overImgMv>.frame>img {
	transition: .5s;
}
html:not(.mobile) a.overImgMv:hover>img,
html:not(.mobile) a.overImgMv:hover>.frame>img {
	opacity: 0.7;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: scale(1.06);
	transform: scale(1.06);
	transition: .8s;
}
/* imgIcon */
img.imgIconPdf {
	background-position: 0 0;
}
img.imgIconBlank {
	background-position: -37px 0;
	vertical-align: 0;
	width: 12px;
	height: 12px;
	margin: 0 0 0 5px;
}
/* block Layout
-------------------------------------------------------------*/
img {
	box-sizing: border-box;
	max-width: 100%;
	height: auto;
}
.forReader,
.dsp-none,
.sp-dsp-block,
.spP-dsp-block,
.spS-dsp-block {
	display: none;
}
.sp-dsp-none,
.spP-dsp-none,
.spS-dsp-none,
.sp-dsp-inline {
}
.dsp-block {
	display: block;
}
.dsp-inlineBlock {
	display: inline-block;
}

.dsp-inline {
	display: inline;
}
.dsp-table {
	display: table;
}
.dsp-table>* {
	display: table-cell;
	vertical-align: top;
}
/* Float Element */
.cClear {
	clear: both !important;
}
.fLeft {
	float: left !important;
}
.fRight {
	float: right !important;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
	width: 0;
	height: 0;
}
/* width */
.wAuto {
	width: auto !important;
	max-width: none !important;
}
.w5 {
	width: 5% !important;
}
.w10 {
	width: 10% !important;
}
.w15 {
	width: 15% !important;
}
.w20 {
	width: 20% !important;
}
.w25 {
	width: 25% !important;
}
.w30 {
	width: 30% !important;
}
.w35 {
	width: 35% !important;
}
.w40 {
	width: 40% !important;
}
.w45 {
	width: 45% !important;
}
.w50 {
	width: 50% !important;
}
.w55 {
	width: 55% !important;
}
.w60 {
	width: 60% !important;
}
.w65 {
	width: 65% !important;
}
.w70 {
	width: 70% !important;
}
.w75 {
	width: 75% !important;
}
.w80 {
	width: 80% !important;
}
.w85 {
	width: 85% !important;
}
.w90 {
	width: 90% !important;
}
.w95 {
	width: 95% !important;
}
.w100 {
	width: 100% !important;
}
.sp-w5,
.sp-w10,
.sp-w15,
.sp-w20,
.sp-w25,
.sp-w30,
.sp-w35,
.sp-w40,
.sp-w45,
.sp-w50,
.sp-w55,
.sp-w60,
.sp-w65,
.sp-w70,
.sp-w75,
.sp-w80,
.sp-w85,
.sp-w90,
.sp-w95,
.sp-w100 {
}
.wMin0 {
	min-width: 0 !important;
}
.sp-wAuto {
}/*---SmartPhone : auto */
@media print, screen and (min-width:768px) {
.pc-wAuto {
	width: auto !important;
}
}
/* height */
.hAuto {
	height: auto !important;
}
.hMin0 {
	min-height: 0 !important;
}
.sp-hMin0 {
}
/* aligh */
.alignL {
	text-align: left !important;
}
.alignC {
	text-align: center !important;
}
.alignR {
	text-align: right !important;
}
.valignT {
	vertical-align: top !important;
}
.valignM {
	vertical-align: middle !important;
}
.valignB {
	vertical-align: bottom !important;
}
.sp-alignL,
.sp-alignC,
.sp-alignR {
}
/* margin padding */
.m10 {
	margin: 10px !important;
}
.m20 {
	margin: 20px !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;
}
.mT50 {
	margin-top: 50px !important;
}
.mT60 {
	margin-top: 60px !important;
}
.mT70 {
	margin-top: 70px !important;
}
.mT80 {
	margin-top: 80px !important;
}
.mT90 {
	margin-top: 90px !important;
}
.mR0 {
	margin-right: 0 !important;
}
.mR5 {
	margin-right: 5px !important;
}
.mR10 {
	margin-right: 10px !important;
}
.mR20 {
	margin-right: 20px !important;
}
.mR40 {
	margin-right: 40px !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;
}
.mB50 {
	margin-bottom: 50px !important;
}
.mB60 {
	margin-bottom: 60px !important;
}
.mL0 {
	margin-left: 0 !important;
}
.mL5 {
	margin-left: 5px !important;
}
.mL10 {
	margin-left: 10px !important;
}
.mL20 {
	margin-left: 20px !important;
}
.mL40 {
	margin-left: 40px !important;
}
.p10 {
	padding: 10px !important;
}
.p20 {
	padding: 20px !important;
}
.p30 {
	padding: 30px !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;
}
.pT50 {
	padding-top: 50px !important;
}
.pT80 {
	padding-top: 80px !important;
}
.pT100 {
	padding-top: 100px !important;
}
.pR0 {
	padding-right: 0 !important;
}
.pR10 {
	padding-right: 10px !important;
}
.pR20 {
	padding-right: 20px !important;
}
.pR40 {
	padding-right: 40px !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;
}
.pB50 {
	padding-bottom: 50px !important;
}
.pL0 {
	padding-left: 0 !important;
}
.pL10 {
	padding-left: 10px !important;
}
.pL20 {
	padding-left: 20px !important;
}
.pL40 {
	padding-left: 40px !important;
}
.sp-mT0,
.sp-mT10,
.sp-mT15,
.sp-mT20,
.sp-mT30,
.sp-mT40,
.sp-mT50,
.sp-mT60,
.sp-mR0,
.sp-mL0,
.sp-pR0,
.sp-pL0 {
}
/* border */
.noBdr {
	border: none !important;
}
.noBdrT {
	border-top: none !important;
}
.noBdrR {
	border-right: none !important;
}
.noBdrB {
	border-bottom: none !important;
}
.noBdrL {
	border-left: none !important;
}
.imgBdr {
	border: 1px solid #ccc;
}
/* background */
.noBg {
	background: none !important;
}
.bgSakura{ background:#FEDFE1 url(/img/share/bg_gridB.png) center !important;}
.bgByakuroku{ background:#CAE7D4 url(/img/share/bg_gridB.png) center !important;}
.bgSharegaki{ background:#FFDDC4 url(/img/share/bg_gridB.png) center !important;}

/* list */
.ol >li {
	list-style-type: decimal;
}
.ul >li {
  list-style-type: disc;
}

.blockC{
margin: 10px auto;
max-width:600px;
}
/* container
-------------------------------------------------------------*/
#container {
	min-width: 1000px;
	padding-top: 100px;
	overflow: hidden;
}
/* delete JS Style */
@media print, screen and (min-width:768px) {
#container {
	margin-top: 0 !important;
}
}
/*=============================================================
 header
=============================================================*/
#header {
	background-color: #fff;
	width: 100%;
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	box-shadow:0px 0px 8px -1px rgba(0,0,0,0.5);
	font-family:dnp-shuei-mgothic-std, sans-serif;
}
#headerInner {
	width: 100%;
	height: 100px;
	position:relative;
	min-width: 1000px;
}
#header img {
	width: 100%;
	height: auto;
}
#header #hdr-logo {
	width: 220px;
	height: 50px;
	position: absolute;
	top: 50%;
	left:30px;
	transform: translateY(-50%);
}
@media screen and (max-width: 1179px) {
#header #hdr-logo {
	width: 170px;
	top: 35%;
	left:15px;
}
}
/* globalNavSet
-------------------------------------------------------------*/
#globalNavSet>dt {
	display: none;
}
/* globalNav
-------------------------------------------------------------*/
#globalNav {
	font-size: 16px;
	line-height: 1.0;
	font-weight: 600;
	display: flex;
	margin: -3px 0 0;
	position: absolute;
	top: 60px;
	right: 30px;
	z-index:1;
}
@media all and (-ms-high-contrast: none){
#globalNav {
	top: 70px;
}
}
#globalNav li {
	padding-left:30px;
}
#globalNav li a {
	text-decoration: none;
	color:#666666;
	font-size:17px;
	font-weight:600;
	line-height:1.0;
}
#globalNav li#gb-program a:hover,
#program #globalNav li#gb-program a {
	color:#003F7E;
}
#globalNav li#gb-workshop a:hover,
#workshop #globalNav li#gb-workshop a {
	color:#77428D;
}
#globalNav li#gb-contest a:hover,
#contest #globalNav li#gb-contest a {
	color:#D66B00;
}
#globalNav li#gb-spring a:hover,
#spring #globalNav li#gb-spring a {
	color:#227D51;
}
#globalNav li#gb-monodukuri a:hover,
#monodukuri #globalNav li#gb-monodukuri a {
	color:#AB5F55;
}
#globalNav li#gb-hoikuhint a:hover,
#hoikuhint #globalNav li#gb-hoikuhint a {
	color:#83A62F;
}

@media screen and (max-width: 1179px) {
#globalNav li {
	padding-left:20px;
}
#globalNav li a {
	font-size:16px;
}
}
@media print, screen and (min-width:768px) {
#globalNav dd {
	display: block !important;
}
}

/* #subMenu
-------------------------------------------------------------*/
#subMenu {
	position:absolute;
	right:210px;
	top:15px;
	z-index:1;
	display: flex;
}
@media all and (-ms-high-contrast: none){
#subMenu {
	top:20px;
}
}
#subMenu li {
	padding-left:20px;
}
#subMenu li a{
	display:inline-block;
	padding-left:12px;
	line-height:26px;
	height:26px;
	font-size:12px;
	color:#666666;
	position:relative;
	text-decoration:none;
}
#subMenu li a::before{
	content:"";
	width:5px;
	height:5px;
	border-bottom:1px solid #666;
	border-right:1px solid #666;
	position:absolute;
	left:0;
	top:50%;
	transform:translateY(-2px) rotate(-45deg);
}
@media all and (-ms-high-contrast: none){
#subMenu li a::before{
	transform:translateY(-6px) rotate(-45deg);
}
}
/* #searchArea
-------------------------------------------------------------*/
#searchArea {
	position:absolute;
	right:30px;
	top:15px;
	background-color:#e9e3de;
	z-index:2;
}
#searchArea form{
	display:block;
	position:relative;
	padding:0 30px 0 0;
}
#searchArea #textfield {
	width:115px;
	box-sizing:border-box;
	margin:0;
	padding: 0px 5px;
	border:none;
	line-height:26px;
	height:26px;
	background-color:#e9e3de;
	transition:all 0.3s ease 0.2s;
}
#searchArea #textfield:focus {
	width:400px;
}
input::-webkit-input-placeholder {
	font-size: 0.7rem;
	font-weight: normal;
}
input::-ms-input-placeholder {
	font-size: 0.7rem;
	font-weight: normal;
}
input::-moz-placeholder {
	font-size: 0.7rem;
	font-weight: normal;
}
input::placeholder {
	font-size: 0.7rem;
	font-weight: normal;
}
#searchArea #button {
	position:absolute;
	top:0;
	right:0;
	width:30px;
	height:26px;
	margin:0;
	padding: 0;
	vertical-align:top;
	background:#e9e3de url(/shared/img/icn_search.png) no-repeat center center;
	background-size:13px 14px;
	border-style: none;
	color:#e9e3de;
	cursor:pointer;
}
/*=============================================================
 footer
=============================================================*/
#footer {
	padding:20px 30px;
	background-color:#f5f5f5;
	position:relative;
	color:#666;
	font-family:dnp-shuei-mgothic-std, sans-serif;
	border-top:3px solid #fff;
}
@media all and (-ms-high-contrast: none){
#footer {
	padding:25px 30px 15px;
}
}
#footerInner {
	width:100%;
	display:flex;
	flex-wrap:nowrap;
	justify-content: space-between;
}
/* ftr-pagetop
-------------------------------------------------------------*/
#ftr-pagetop {
	position:fixed;
	bottom:40px;
	right:30px;
	opacity: 0;
	transition: opacity .4s, visibility .4s;
}
#ftr-pagetop.show {
	visibility: visible;
	opacity: 1;
}
#ftr-pagetop a{
	display:block;
	width:71px;
	height:71px;
	border-radius:100px;
	overflow:hidden;
	box-shadow:2px 3px 4px -1px rgba(0,0,0,0.3);
}
/* ftr-contents
-------------------------------------------------------------*/
#ftrContents ul{
	display:inline-block;
	font-size:0;
}
#ftrContents ul li{
	display:inline-block;
	font-size:13px;
	position:relative;
}
#ftrContents a {
	color:#666;
	display:inline;
	line-height:1.0;
	text-decoration:none;
	position:relative;
	padding:0;
}
#ftrContents a:hover {
	text-decoration:underline;
}

#ftrContents ul li::before{
	content:"｜";
}
#ftrContents ul li:first-child::before{
	display:none;
}
#ftrContents img {
width:26px;
	position:relative;
top:-8px;
left:10px;
}




/* ftr-copyrightArea
-------------------------------------------------------------*/
#ftr-copyrightArea {
	text-align:right;
	font-size:12px;
	white-space:nowrap;
	line-height:1.0;
}
@media only screen and (max-width:1179px), only screen and (max-device-width:1179px) {
#footerInner {
	width:100%;
	display:block;
	text-align:center;
}
#ftr-copyrightArea {
	margin-top:10px;
	text-align:center;
}
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px), only screen and (max-device-width:767px) {
/*=============================================================
 Common Layout
=============================================================*/
body,p {
	font-size: 14px;
}
/* text Layout
-------------------------------------------------------------*/
.nowrap-pc {
	white-space: normal;
}
.sp-textS {
	font-size: 87.5%;
} /* 14px */
/* block Layout
-------------------------------------------------------------*/
.sp-dsp-none {
	display: none !important;
}
.sp-dsp-block,
.dsp-table.sp-dsp-block,
.dsp-table.sp-dsp-block>* {
	display: block;
}
img.sp-dsp-block,
.sp-dsp-inline {
	display: inline;
}
/* width */
.sp-w5 {
	width: 5% !important;
}
.sp-w10 {
	width: 10% !important;
}
.sp-w15 {
	width: 15% !important;
}
.sp-w20 {
	width: 20% !important;
}
.sp-w25 {
	width: 25% !important;
}
.sp-w30 {
	width: 30% !important;
}
.sp-w35 {
	width: 35% !important;
}
.sp-w40 {
	width: 40% !important;
}
.sp-w45 {
	width: 45% !important;
}
.sp-w50 {
	width: 50% !important;
}
.sp-w55 {
	width: 55% !important;
}
.sp-w60 {
	width: 60% !important;
}
.sp-w65 {
	width: 65% !important;
}
.sp-w70 {
	width: 70% !important;
}
.sp-w75 {
	width: 75% !important;
}
.sp-w80 {
	width: 80% !important;
}
.sp-w85 {
	width: 85% !important;
}
.sp-w90 {
	width: 90% !important;
}
.sp-w95 {
	width: 95% !important;
}
.sp-w100 {
	width: 100% !important;
}
.sp-wAuto {
	width: auto !important;
	max-width: none !important;
}
/* height */
.sp-hMin0,
.setAutoHeight.sp-hMin0>*,
.setAutoHeightTgr.sp-hMin0 .ah-tgr {
	height: auto !important;
	min-height: 0 !important;
}
/* aligh */
.sp-alignL {
	text-align: left !important;
}
.sp-alignC {
	text-align: center !important;
}
.sp-alignR {
	text-align: right !important;
}
/* margin padding */
.sp-mT0 {
	margin-top: 0 !important;
}
.sp-mT10 {
	margin-top: 10px !important;
}
.sp-mT15 {
	margin-top: 15px !important;
}
.sp-mT20 {
	margin-top: 20px !important;
}
.sp-mT30 {
	margin-top: 30px !important;
}
.sp-mT40 {
	margin-top: 40px !important;
}
.sp-mT50 {
	margin-top: 50px !important;
}
.sp-mT60 {
	margin-top: 60px !important;
}
.sp-mB0 {
	margin-bottom: 0 !important;
}
.sp-mB10 {
	margin-bottom: 10px !important;
}
.sp-mR0 {
	margin-right: 0 !important;
}
.sp-mL0 {
	margin-left: 0 !important;
}
.sp-pR0 {
	padding-right: 0 !important;
}
.sp-pL0 {
	padding-left: 0 !important;
}
/* container
-------------------------------------------------------------*/
#container {
	min-width: 320px;
	padding-top: 50px;
}
/*=============================================================
 header
=============================================================*/
#header {
	height: 50px;
}
#headerInner {
min-width: 320px;
	height: 50px;
}
#header #hdr-logo {
	width: 132px;
	height: 30px;
	top: 50%;
}
/* globalNavSet
-------------------------------------------------------------*/
#globalNavSet>dt {
	display: block;
	width: 60px;
	height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	color: #fff;
	background-color: #fff;
}
#globalNavSet>dt>div{
	width:28px;
	margin:11px auto 0;
	position: relative;
}
#globalNavSet>dt>div span {
	display: block;
	height: 2px;
	background: #666;
	position: absolute;
	width: 100%;
	left: 0;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#globalNavSet>dt>div span:nth-child(1) {
	top: 0;
}
#globalNavSet>dt>div span:nth-child(2) {
	top: 8px;
}
#globalNavSet>dt>div span:nth-child(3) {
	top: 16px;
}
#globalNavSet>dt>div span.txt {
	font-size: 10px;
	letter-spacing: 0.04em;
	color: #666;
	top: 23px;
	right: -4px;
	left: -4px;
	text-align: center;
	width: auto;
	height: 0;
	background: none;
}
#globalNavSet.open>dt>div span:nth-child(1) {
	top: 8px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	transform: rotate(135deg);
}
#globalNavSet.open>dt>div span:nth-child(2) {
	width: 0;
	left: 50%;
}
#globalNavSet.open>dt>div span:nth-child(3) {
	top: 8px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
#globalNavSet>dd {
	color: #666;
	box-sizing: border-box;
	width: 100%;
	padding: 0;
	visibility: hidden;
	overflow: hidden;
	position: fixed;
	top: 50px;
	bottom: 100%;
	left: 0;
	z-index: 10;
	opacity: 0;
	transition: all 0.7s ease;
	background-color: #fff;
}
#globalNavSet.open>dd {
	visibility: visible;
	bottom: 0;
	opacity: 1;
}
#globalNavSet>dd a {
	color:#666666;
}
#globalNavSet>dd a:hover {
	opacity: 0.7;
}
#globalNavSet>dd>* {
	text-align:center;
}
#globalNavSet.open>dd>* {
	visibility: inherit;
}
html.gNavOpen,
html.gNavOpen body {
	height: 100%;
	overflow: hidden;
}
html.gNavOpen #globalNavSet>dd>div {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	overflow: auto;
	overflow-x: hidden;
	position: relative;
	-webkit-overflow-scrolling: touch;
}
/* globalNav
-------------------------------------------------------------*/
#globalNav {
	font-size: 16px;
	line-height: 1.0;
	font-weight: 600;
	display:block;
	margin:0;
	position:static;
	border-top:1px solid #CCC;
}
#globalNav li {
	padding-left:0;
	border-bottom:1px solid #CCC;
}
#globalNav li a {
	display:block;
	padding:15px 20px;
	text-align:left;
}
#globalNav li a span {
	display: block;
	position: relative;
}
#globalNav li a span::after {
	content:"";
	width:8px;
	height:8px;
	border-bottom:1px solid #666;
	border-right:1px solid #666;
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%) rotate(-45deg);
}

/* #subMenu
-------------------------------------------------------------*/
#subMenu {
	position:static;
	display:inline-block;
	margin:30px auto;
	font-size:0;
}
#subMenu li {
	display:inline-block;
	padding:0 10px;
}
/* #searchArea
-------------------------------------------------------------*/
#searchArea {
	display:block;
	position:static;
	width:auto;
	margin:0 20px;
}
#searchArea form{
	display:block;
	position:relative;
	padding:0 36px 0 0;
	width:auto;
	text-align:left;
}
#searchArea #textfield {
	width:100%;
	line-height:36px;
	height:36px;
	transition:all 0s ease 0s;
}
#searchArea #textfield:focus {
	width:100%;
}
#searchArea #button {
	position:absolute;
	top:0;
	right:0;
	width:36px;
	height:36px;
}
/*=============================================================
 footer
=============================================================*/
#footer {
	padding:20px;
}
@media all and (-ms-high-contrast: none){
#footer {
	padding:25px 20px 15px;
}
}
/* ftr-pagetop
-------------------------------------------------------------*/
#ftr-pagetop {
	position:fixed;
	bottom:30px;
	right:10px;
}
#ftr-pagetop a{
	width:46px;
	height:46px;
}
#ftr-pagetop a img{
	width:46px;
	height:46px;
}
/* ftr-contents
-------------------------------------------------------------*/
#ftrContents ul li{
	display:block;
	font-size:12px;
	padding:5px 10px;
}
#ftrContents ul li::before{
	display:none;
}
#ftrContents a {
	padding:0;
}
/* #ftr-copyrightArea
-------------------------------------------------------------*/
#ftr-copyrightArea {
	padding-top:10px;
	font-size:11px;
}
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:440px) {
/* block Layout
-------------------------------------------------------------*/
.spP-dsp-none {
	display: none !important;
}
.spP-dsp-block {
	display: block;
}
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones small (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:374px) {
/* block Layout
-------------------------------------------------------------*/
.spS-dsp-none {
	display: none !important;
}
.spS-dsp-block {
	display: block;
}
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Print
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media print {
#header {
	position: absolute !important;
}
.clearfix {
	overflow: hidden;
}
#ftr-pagetop {
	display: none !important;
}
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Link
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.link li { font-size:16px;}
.link a{
position:relative;
text-indent:1em;
display:inline-block;
}

.link a::before{
content:"";
width:5px;
height:5px;
border-bottom:1px solid #666;
border-right:1px solid #666;
position:absolute;
left:0;
top:50%;
transform:translateY(-2px) rotate(-45deg);
}
@media all and (-ms-high-contrast: none){
.link a::before{
transform:translateY(-6px) rotate(-45deg);
}
}

/*=============================================================

=============================================================*/

.h2{
font-size:34px;
font-weight:700;
text-align:center;
padding:0 0 40px;
}
.h3{
padding:40px 0 30px;
font-size:24px;
font-weight:700;
text-align:center;
}
.h4{
padding:40px 0 30px;
font-size:20px;
font-weight:700;
text-align:center;
}
p{ font-size:16px;}
.p{ margin-top:0.8em;}

/* linkArea
-------------------------------------------------------------*/
.linkArea{
width:100%;

box-sizing:border-box;
text-align:center;
}
.linkArea ul{
font-size:0;
}
.linkArea ul li{
display:inline-block;
padding:0 15px;
}
.linkArea ul li a{
display:block;
padding:0 0 0 15px;
font-size:16px;
position:relative;
text-decoration:none;
}
.linkArea ul li a:hover{
text-decoration:underline;
}
.linkArea ul li a::before{
content:"";
width:6px;
height:6px;
border-bottom:1px solid #666;
border-right:1px solid #666;
position:absolute;
left:0;
top:50%;
transform:translateY(-3px) rotate(-45deg);
}
@media all and (-ms-high-contrast: none){
.linkArea ul li a::before{
transform:translateY(-8px) rotate(-45deg);
}
}

/* btn
-------------------------------------------------------------*/
.btn{
width:100%;
max-width:400px;
margin:20px auto 0;
text-align:center;
}
.btn a{
display:block;
/* background-color:#338daa; */
background-color:#117B9D;
padding:10px;
color:#FFF;
text-decoration:none;
border-radius:100px;
}
.btn a:hover{
background-color:#aa338a;
}
@media all and (-ms-high-contrast: none){
.btn a{
padding:13px 10px 7px;
}
}
.btn a span{
display:inline-block;
position:relative;
}
.btn.pdf a span{
padding:0 0 0 20px;
}
.btn.pdf a span::before{
content:"";
display:block;
width:18px;
height:18px;
background: url(/shared/img/icn_pdf.png) no-repeat center center;
background-size:100% 100%;
position:absolute;
top:3px;
left:0;
}
@media all and (-ms-high-contrast: none){
.btn.pdf a span::before{
top:0px;
}
}

.btn.zip a span{
padding:0 0 0 20px;
}
.btn.zip a span::before{
content:"";
display:block;
width:18px;
height:18px;
background: url(/shared/img/icn_zip.png) no-repeat center center;
background-size:100% 100%;
position:absolute;
top:3px;
left:0;
}
@media all and (-ms-high-contrast: none){
.btn.zip a span::before{
top:0px;
}
}
figcaption{
	font-size:12px;
}

.btn.disabled{
width:100%;
max-width:400px;
margin:20px auto 0;
text-align:center;
display:block;
background-color:#CECECE;
padding:10px;
  color: #1C0D05;
text-decoration:none;
border-radius:100px;
  cursor: default;
}



/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px), only screen and (max-device-width:767px){
/*=============================================================
h2{
font-size:24px;
padding:0 0 30px;
}
h3{
padding:20px 0 16px;
font-size:20px;
}
.h2{
font-size:24px;
padding:0 0 30px;
}
.h3{
padding:20px 0 16px;
font-size:20px;
}
.h4{
padding:20px 0 16px;
font-size:18px;
}
/* linkArea
-------------------------------------------------------------*/
.linkArea{
margin:0;
}
.linkArea ul{
font-size:0;
}
.linkArea ul li{
display:inline-block;
width:49%;
padding:0;
text-align: left;
}
.linkArea ul li a{
display:inline-block;
font-size:14px;
}
.linkArea ul li a::before{
top:12px;
}
}

a:focus {
  outline: 1px solid #e73;}




