@charset "UTF-8";
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline
}
html {
	line-height: 1
}
ol,
ul {
	list-style: none
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
caption,
td,
th {
	text-align: left;
	font-weight: 400;
	vertical-align: middle
}
blockquote,
q {
	quotes: none
}
blockquote:after,
blockquote:before,
q:after,
q:before {
	content: "";
	content: none
}
a img {
	border: none
}
elements-of-type(html5-block) {
display:block
}
article,
footer,
header,
main,
secton {
	display: block
}
body,
html {
	margin: 0;
	padding: 0
}
body {
	overflow-y: scroll;
	font-size: 1rem;
	color: #333;
	background: #1a2b56
}
@media print, screen and (min-width:768px) {
body {
	min-width: 1100px
}
}
img {
	vertical-align: bottom
}
a {
	text-decoration: none
}
dd,
dt,
h2,
h3,
h4,
p {
	font-family: "メイリオ", 'Noto Sans JP', sans-serif;
	line-height: 1.4
}
header {
	background: #1a2b56;
	position: fixed;
	z-index: 1000;
	width: 100%
}
#SiteHead {
	box-sizing: border-box;
	position: relative
}
@media print, screen and (min-width:768px) {
#SiteHead {
	width: 1100px;
	height: 190px;
	padding: 0 1rem;
	margin: 0 auto;
	transition: .3s
}
}
@media only screen and (max-width:767px) {
#SiteHead {
	height: 50px;
	border-bottom: 1px #4f5968 solid
}
}
.hd_siteTitle {
	position: absolute
}
@media print, screen and (min-width:768px) {
.hd_siteTitle {
	top: 60px;
	transition: .3s
}
.hd_siteTitle img {
	width: 513px;
	height: auto
}
}
@media only screen and (max-width:767px) {
.hd_siteTitle {
	top: 14px;
	left: 14px;
	z-index: 2000
}
.hd_siteTitle img {
	width: 250px;
	height: auto
}
}
.hd_languageArea {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	justify-content: flex-start;
	width: 247px
}
@media only screen and (max-width:767px) {
.hd_languageArea {
	display: none
}
}
.hd_languageArea span {
	display: block;
	width: 123px
}
.hd_languageArea span:last-of-type {
	margin-left: auto
}
.hd_languageArea span a,
.hd_languageArea span i {
	color: #fff;
	background: #607cb9;
	display: block;
	width: 100%;
	padding: 8px 0;
	font-size: 85%;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif
}
.hd_languageArea span i {
	background: #607cb9
}
.hd_languageArea span a {
	background: #0d1c42
}
.hd_languageArea span a.noPost {
	pointer-events: none;
	background: #ddd;
	color: #555
}
.hd_languageArea span a:hover {
	background: #607cb9
}
.hd_held {
	position: absolute;
	top: 40px;
	right: 15px
}
@media only screen and (max-width:767px) {
.hd_held {
	display: none
}
}
.hd_held.en {
	text-align: left;
	top: 50px;
	right: 15px
}
.hd_held .short {
	display: none
}
.hd_live {
	position: absolute;
	top: 105px;
	right: 0;
	width: 247px;
	text-align: center;
	padding: 8px 0;
	transition: .3s;
	border-top: 1px #ecce58 solid;
	border-bottom: 1px #ecce58 solid
}
@media only screen and (max-width:767px) {
.hd_live {
	display: none
}
}
.hd_menu {
	width: 970px;
	background: #fff;
	display: flex;
	position: absolute;
	top: 160px;
	margin: auto;
	left: 0;
	right: 0;
	box-shadow: rgba(50,50,93,.25) 0 13px 27px -5px, rgba(0,0,0,.3) 0 8px 16px -8px;
	border-radius: 3px;
	transition: .3s
}
@media only screen and (max-width:767px) {
.hd_menu {
	display: none
}
}
.hd_menu li {
	box-sizing: border-box;
	width: 33.3333333334%
}
.hd_menu li a {
	color: #1a2b56;
	display: block;
	text-align: center;
	font-size: 120%;
	width: 100%;
	padding: 18px 0;
	transition: .3s
}
.hd_menu li a:hover {
	background: #657cb7;
	color: #fff
}
@media print, screen and (min-width:768px) {
header.shortHd #SiteHead {
	height: 100px
}
header.shortHd .hd_siteTitle {
	top: 15px
}
header.shortHd .hd_siteTitle img {
	width: 480px
}
header.shortHd .hd_languageArea {
	width: 300px
}
header.shortHd .hd_languageArea span {
	width: 149px
}
header.shortHd .hd_held {
	top: 38px;
	right: 0
}
header.shortHd .hd_held .long {
	display: none
}
header.shortHd .hd_held .short {
	display: block
}
header.shortHd .hd_held.en {
	text-align: left;
	top: 32px;
	right: 28px
}
header.shortHd .hd_live {
	position: absolute;
	top: auto;
	bottom: 10px;
	right: 0;
	width: 300px;
	padding: 7px 0 0 0;
	border-bottom: none
}
header.shortHd .hd_menu {
	width: 730px;
	display: flex;
	position: absolute;
	top: auto;
	bottom: 0;
	margin: auto;
	left: 0;
	right: auto;
	box-shadow: none;
	border-radius: 3px 3px 0 0
}
header.shortHd .hd_menu li:nth-child(1) a {
	border-radius: 3px 0 0 0
}
header.shortHd .hd_menu li:nth-child(4) a {
	border-radius: 0 3px 0 0
}
header.shortHd .hd_menu li a {
	padding: 10px 0;
	font-size: 95%
}
}
@media print, screen and (min-width:768px) {
#nav-toggle {
	display: none
}
}
@media only screen and (max-width:767px) {
#nav-toggle {
	display: block
}
}
@media only screen and (max-width:767px) {
.open #spMenu {
	background: rgba(29,43,85,.9);
	color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 990;
	visibility: hidden;
	opacity: 0;
	transition: opacity .6s ease, visibility .6s ease;
	box-sizing: border-box;
	padding: 80px 0 0 1rem;
	width: 100%
}
.open #spMenu a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 10px 0;
	font-size: 120%;
	font-family: 'Noto Sans JP', sans-serif
}
.open #spMenu ul {
	list-style: none
}
.open #spMenu ul li {
	opacity: 0;
	transform: translateX(30px);
	transition: transform .6s ease, opacity .2s ease
}
.open #spMenu ul li.langBtn {
	border-top: 1px #fff solid;
	padding-top: 1rem;
	margin-top: 1rem
}
.open #spMenu ul li:not(:last-child) {
	margin-bottom: 1rem;
	opacity: 1
}
.open #spMenu ul li:nth-child(2) {
	transition-delay: .15s;
	opacity: 1
}
.open #spMenu ul li:nth-child(3) {
	transition-delay: .3s;
	opacity: 1
}
.open #spMenu ul li:nth-child(4) {
	transition-delay: .45s;
	opacity: 1
}
.open #spMenu ul li:nth-child(5) {
	transition-delay: .6s;
	opacity: 1
}
.open #spMenu ul li:nth-child(6) {
	transition-delay: .75s
}
.open #spMenu ul li:nth-child(7) {
	transition-delay: .9s
}
}
@media only screen and (max-width:767px) {
#nav-toggle {
	position: fixed;
	top: 0;
	right: 0;
	background: #fff;
	z-index: 2000
}
#nav-toggle .spmenuLog {
	position: absolute;
	left: 40px
}
#nav-toggle .spmenuLog .normal {
	display: block
}
#nav-toggle .spmenuLog .active {
	display: none
}
#nav-toggle>div {
	position: absolute;
	width: 30px;
	right: 14px;
	top: 14px
}
#nav-toggle span {
	width: 100%;
	height: 2px;
	left: 0;
	display: block;
	background: #fff;
	position: absolute;
	transition: transform .6s ease-in-out, top .5s ease
}
#nav-toggle span:nth-child(1) {
	top: 0
}
#nav-toggle span:nth-child(2) {
	top: 9px;
	opacity: 1
}
#nav-toggle span:nth-child(3) {
	top: 18px
}
.open #nav-toggle {
	background: #fff
}
.open #nav-toggle span {
	background: #fff
}
.open #nav-toggle span:nth-child(1) {
	top: 9px;
	transform: rotate(45deg)
}
.open #nav-toggle span:nth-child(2) {
	top: 9px;
	width: 0;
	transform: scale(.1, .1);
	opacity: 0
}
.open #nav-toggle span:nth-child(3) {
	top: 9px;
	transform: rotate(-45deg)
}
.open #nav-toggle .spmenuLog .normal {
	display: none
}
.open #nav-toggle .spmenuLog .active {
	display: block
}
}
#spMenu {
	visibility: hidden
}
.open {
	overflow: hidden
}
.open #spMenu {
	visibility: visible;
	opacity: 1
}
.open #spMenu li {
	opacity: 1;
	transform: translateX(0);
	transition: transform 1s ease, opacity .9s ease
}
@media print, screen and (min-width:768px) {
main {
	padding-top: 190px
}
}
@media only screen and (max-width:767px) {
main {
	padding-top: 50px
}
}
#mainImg {
	background: url(../img/main_img_back.jpg) top center no-repeat;
	background-size: cover;
	text-align: center;
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
#mainImg {
	height: 647px;
	padding-top: 32px
}
}
@media only screen and (max-width:767px) {
#mainImg {
	height: auto;
	padding: 1rem
}
}
.main_imgContents {
	background: rgba(16,8,74,.85);
	position: relative;
	border-radius: 8px;
	box-sizing: border-box;
	padding-left: 60px;
	padding-right: 60px;
	text-align: center
}
@media print, screen and (min-width:768px) {
.main_imgContents {
	height: 489px;
	width: 1100px;
	padding: 60px 60px 0 60px;
	margin: 32px auto 0 auto
}
.main_imgContents.en {
	height: 540px
}
.main_imgContents.en ul li {
	width: auto;
	padding: 0 1.75rem;
	box-sizing: border-box
}
}
@media only screen and (max-width:767px) {
.main_imgContents {
	padding: 1.5rem 1rem 0 1rem
}
}
.main_imgContents img {
	margin-bottom: 32px
}
@media only screen and (max-width:767px) {
.main_imgContents img {
	width: 100%
}
.main_imgContents img.enMainDay {
	width: 180px
}
}
@media print, screen and (min-width:768px) {
.main_imgContents ul {
	display: flex;
	justify-content: space-between
}
}
@media only screen and (max-width:767px) {
.main_imgContents ul {
	border-top: 1px #c1b483 dashed;
	padding-top: 1rem
}
}
@media print, screen and (min-width:768px) {
.main_imgContents ul li {
	background: rgba(25,19,64,.35);
	border-top: 1px #ecce58 solid;
	border-bottom: 3px #ecce58 double;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30%;
	height: 64px
}
}
@media only screen and (max-width:767px) {
.main_imgContents ul li {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 7px 0;
	margin-bottom: 1.7rem;
	position: relative
}
.main_imgContents ul li::after {
	position: absolute;
bottom:-.5rem;
	left: 0;
	right: 0;
	content: " ";
	height: 1px;
	width: 20%;
	background: #ecce58;
	margin: auto
}
.main_imgContents ul li img {
	width: auto;
	height: 20px
}
}
.main_imgContents ul li img {
	margin-bottom: 0
}
.main_imgContents hr {
	border: none;
	border-top: 1px #4d5969 solid;
	margin: 32px 0
}
.mainContents {
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
.mainContents {
	width: 1100px;
	padding: 60px 30px 30px 30px;
	margin: 0 auto
}
}
@media only screen and (max-width:767px) {
.mainContents {
	box-sizing: border-box;
	padding: 2rem 1rem 1rem 1rem
}
}
.mainContents h2 {
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: .1;
	text-align: center
}
@media print, screen and (min-width:768px) {
.mainContents h2 {
	font-size: 180%;
	margin-bottom: 62px
}
}
@media only screen and (max-width:767px) {
.mainContents h2 {
	font-size: 160%;
	margin-bottom: 40px
}
}
@media print, screen and (min-width:768px) {
.leadTxt {
	margin-bottom: 8.5rem;
	position: relative
}
.leadTxt::after {
	position: absolute;
	bottom: -4rem;
	left: 0;
	right: 0;
	content: " ";
	height: 1px;
	width: 20%;
	background: #8491b1;
	margin: auto
}
}
@media only screen and (max-width:767px) {
.leadTxt {
	line-height: 1.4
}
}
.leadTxt p {
	font-size: 120%;
	line-height: 1.8;
	margin-bottom: 1.5rem;
}
.leadTxt p:first-of-type {
}
.leadTxt p a {
	color: #c78c1b;
	border-bottom: dashed 1px #d4b650;
	background: #fffae3;
padding:0 .15rem
}
.pointCell {
	margin-top: 2.5rem
}
@media print, screen and (min-width:768px) {
.pointCell.en dt {
	font-size: 130%;
	width: 470px
}
}
@media print, screen and (min-width:768px) {
.pointCell {
	display: flex
}
}
.pointCell dt {
	background: #1d2b55;
	color: #fff;
padding:.75rem 0;
	box-sizing: border-box;
	text-align: center
}
@media print, screen and (min-width:768px) {
.pointCell dt {
	font-size: 130%;
	width: 170px
}
}
@media only screen and (max-width:767px) {
.pointCell dt {
	font-size: 120%;
	width: 100%
}
}
.pointCell dd {
	font-size: 130%;
padding:.75rem 1rem;
	background: #e8f2ff;
	display: block;
	width: 100%;
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
.pointCell dd {
	font-size: 130%
}
}
@media only screen and (max-width:767px) {
.pointCell dd {
	font-size: 120%
}
}
#Outline {
	background: #fff
}
#Program {
	background: #f5f5f5
}
#Registration {
	background: #fff
}
@media only screen and (max-width:767px) {
#Registration {
	display: none
}
}
.coomginSoon {
	width: 1100px;
	height: 550px;
	margin: 3rem auto;
	box-sizing: border-box;
	border: 1px #d9d9d9 solid;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 500%;
	color: #5a5a5a
}
.now {
	text-align: right;
	font-size: 90%
}
@media print, screen and (min-width:768px) {
.now {
	padding-right: 1rem;
	margin-bottom: 1rem
}
}
@media only screen and (max-width:767px) {
.now {
margin-bottom:.75rem
}
}
.programContents {
	background: url(../img/program_day_back.png) top left no-repeat;
	overflow: hidden
}
@media print, screen and (min-width:768px) {
.programContents {
	margin-bottom: 6rem
}
}
@media only screen and (max-width:767px) {
.programContents {
	margin-bottom: 3rem
}
}
.programContents.lastContents {
	margin-bottom: 2rem
}
.dayLinks {
	display: flex;
	justify-content: space-between
}
@media print, screen and (min-width:768px) {
.dayLinks {
	width: 700px;
	margin: 0 auto 4rem auto
}
}
@media only screen and (max-width:767px) {
.dayLinks {
	padding: 0 1rem;
	margin: 0 auto 2rem auto
}
}
.dayLinks li {
	width: 30%
}
.dayLinks li a {
	display: block;
	background: #657cb7;
	text-align: center;
	padding: 1rem 0;
	border-radius: 5px;
	box-shadow: 0 3px 5px rgba(0,0,0,.3)
}
@media print, screen and (min-width:768px) {
.dayLinks li a img {
	width: 50%
}
}
@media only screen and (max-width:767px) {
.dayLinks li a img {
	width: 65%
}
}
@media print, screen and (min-width:768px) {
.dlFileArea {
	padding: 1.25rem 2rem;
	background: #ebf0ff;
	display: flex;
	justify-content: flex-start;
	margin-bottom: 2rem;
	box-shadow: 3px 3px 18px -5px rgba(83,114,164,.46) inset;
	border-radius: 12px
}
}
@media only screen and (max-width:767px) {
.dlFileArea {
	padding: 1rem;
	background: #ebf0ff;
	margin-bottom: 2rem;
	box-shadow: 3px 3px 18px -5px rgba(83,114,164,.46) inset;
	border-radius: 8px
}
}
@media print, screen and (min-width:768px) {
.dlFileArea li {
	width: 48%
}
.dlFileArea li:last-of-type {
	margin-left: auto
}
}
@media only screen and (max-width:767px) {
.dlFileArea li {
	width: 100%
}
.dlFileArea li:not(:last-of-type) {
	margin-bottom: 1.25rem
}
}
.dlFileArea li a,.dlFileArea li span {
	display: block;
	background: #657cb7;
	text-align: center;
	border-radius: 5px;
	box-shadow: 0 3px 5px rgba(0,0,0,.3);
	color: #fff;
	font-size: 120%;
	font-family: 'Noto Sans JP', sans-serif
}
@media print, screen and (min-width:768px) {
.dlFileArea li a,.dlFileArea li span {
	padding: 1.5rem 0
}
}
@media only screen and (max-width:767px) {
.dlFileArea li a,.dlFileArea li span {
	padding: 1rem 0
}
}
.dlFileArea li a small,.dlFileArea li span small {
	font-size: 85%
}
.programDay {
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
.programDay {
	padding: 30px
}
}
@media only screen and (max-width:767px) {
.programDay {
	padding: 15px 30px 15px 1rem
}
.programDay img {
	width: 100px;
	height: auto
}
}
.programArea {
	background: #fff;
	box-shadow: rgba(0,0,0,.1) 0 10px 15px -3px, rgba(0,0,0,.05) 0 4px 6px -2px;
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
.programArea {
	width: 765px;
	float: right;
	margin: -60px 1rem 1rem 0;
	padding: 30px
}
}
@media only screen and (max-width:767px) {
.programArea {
	padding-bottom: 1rem
}
}
.timeTable {
	width: 100%;
	margin-bottom: 1rem
}
@media print, screen and (min-width:768px) {
.timeTable {
	border-bottom: 1px #cfd0d2 solid
}
}
.timeTable.noBorder {
	border: none
}
.timeTable.last {
	border: none;
	margin-bottom: 0
}
.timeTable:not(:last-of-type) tr td {
	padding-bottom: 1rem
}
@media only screen and (max-width:767px) {
.timeTable tr {
	display: block
}
}
.timeTable tr th {
	font-size: 95%;
	vertical-align: top;
	line-height: 1.6;
}
@media only screen and (max-width:767px) {
.timeTable tr th.noCell {
	padding: 0;
	height: 2px
}
}
@media print, screen and (min-width:768px) {
.timeTable tr th {
	width: 120px;
	/*padding-top: 8px*/
}
}
@media only screen and (max-width:767px) {
.timeTable tr th {
	display: block;
	width: 100%;
	padding: 10px;
margin-bottom:.5rem;
	background: #e5e5e5
}
}
@media only screen and (max-width:767px) {
.timeTable tr td {
	display: block
}
}
.timeTable tr td h3 {
	font-size: 120%;
	font-weight: 700;
	color: #1a2b56
}
@media print, screen and (min-width:768px) {
.timeTable tr td h3 {
	margin-bottom: 1rem
}
}
@media only screen and (max-width:767px) {
.timeTable tr td h3 {
padding:.5rem 1rem 1rem 1rem;
	width: 100%;
	box-sizing: border-box
}
}
.timeTable tr td h3.bunka {
	color: #607cb9
}
.timeTable tr td .sessionTxt {
margin:.5rem 0 1.25rem 0;
	padding: 1rem;
	border-top: 1px #1d2b55 solid;
	border-bottom: 3px #1d2b55 double;
	background: #f0f1ff;
	line-height: 1.6
}
.timeTable tr td .etc {
margin-bottom:.5rem;
	font-weight: 700
}
@media only screen and (max-width:767px) {
.timeTable tr td .etc {
	padding-left: 1rem
}
}
.timeTable tr td .etc::before {
	content: "●";
	color: #b99f60;
padding-right:.15rem
}
.timeTable tr td .model {
	font-weight: 700;
	display: block
}
@media print, screen and (min-width:768px) {
.timeTable tr td .model {
margin:2rem 0 .5rem 0
}
}
@media only screen and (max-width:767px) {
.timeTable tr td .model {
	margin: 1rem 0;
	padding-left: 1rem;
padding-top:.7rem
}
}
.timeTable tr td .speaker {
	font-weight: 700;
	display: block
}
@media print, screen and (min-width:768px) {
.timeTable tr td .speaker {
margin:2rem 0 .75rem 0
}
}
@media only screen and (max-width:767px) {
.timeTable tr td .speaker {
margin:.75rem 0;
	padding-left: 1rem;
padding-top:.7rem
}
}
.timeTable tr td .break {
	padding-top: 2px
}
@media only screen and (max-width:767px) {
.timeTable tr td .break {
	padding-left: 1rem
}
}
.timeTable tr ul.block {
margin-top:.7rem
}
@media print, screen and (min-width:768px) {
.timeTable tr ul.modelblock {
	margin-bottom: 1.25rem;
	border-bottom: 3px #a5aeca double
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul.modelblock {
	border-bottom: 1px #bebebe dotted
}
}
@media print, screen and (min-width:768px) {
.timeTable tr ul.padBlock {
	margin-bottom: 2rem
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul.padBlock {
	position: relative;
	margin-bottom: 3rem;
	margin-top: 1rem;
}
.timeTable tr ul.padBlock::after {
	content: " ";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -25px;
	margin: auto;
	width: 40%;
	height: 2px;
	background: 0 0;
	border-bottom: 3px #a4c5e7 double
}
.timeTable tr ul.padBlock small {
	display: inline-block !important;
}
.timeTable .description,.timeTable .role {
	padding: 0 1rem;
}
}
.timeTable tr ul li {
margin-bottom:.75rem;
	line-height: 1.4
}
@media print, screen and (min-width:768px) {
.timeTable tr ul li {
	display: grid;
	grid-template-columns: 75px 1fr;
	-moz-column-gap: 1rem;
	column-gap: 1rem
}
.timeTable tr ul li:not(:last-of-type) {
	border-bottom: 1px #d3d3d3 dashed;
padding-bottom:.75rem
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul li {
	padding: 0 1rem
}
.timeTable tr ul li:not(:last-of-type) {
	position: relative;
	margin-bottom: 3rem
}
.timeTable tr ul li:not(:last-of-type)::after {
	content: " ";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -25px;
	margin: auto;
	width: 40%;
	height: 2px;
	background: 0 0;
	border-bottom: 3px #a4c5e7 double
}
}
@media print, screen and (min-width:768px) {
.timeTable tr ul li .ph {
	width: 75px;
	height: 75px;
	overflow: hidden;
	border-radius: 3px;
	box-shadow: rgba(0,0,0,.1) 0 4px 6px -1px, rgba(0,0,0,.06) 0 2px 4px -1px
}
.timeTable tr ul li .ph img {
	width: 100%
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul li .ph {
	width: 175px;
	height: 175px;
	overflow: hidden;
	border-radius: 3px;
	margin: 0 auto 1rem auto;
	box-shadow: rgba(60,64,67,.3) 0 1px 2px 0, rgba(60,64,67,.15) 0 2px 6px 2px
}
.timeTable tr ul li .ph img {
	width: 100%;
	-webkit-backface-visibility: hidden
}
}
.timeTable tr ul li b {
margin-bottom:.25rem
}
@media print, screen and (min-width:768px) {
.timeTable tr ul li b {
	display: block;
	/*text-indent: -1rem;
	padding-left: 1rem*/
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul li b {
	display: block
}
}
.timeTable tr ul li small {
	color: #3b599c;
	font-size: 80%
}
@media print, screen and (min-width:768px) {
.timeTable tr ul li small {
	display: block
}
}
@media only screen and (max-width:767px) {
.timeTable tr ul li small {
	display: block;
	background: #e8f2fc;
	padding: 5px
}
}
.cornerTitle {
	color: #fff;
	background: #607cb9;
	font-weight: 700;
	font-size: 120%;
	display:none !important;
}
@media print, screen and (min-width:768px) {
.cornerTitle {
	margin-bottom: 1rem;
	padding: 8px 0 8px 1rem
}
}
@media only screen and (max-width:767px) {
.cornerTitle {
	padding: 8px 1rem
}
}
.borderStyleA {
	border: none;
	border-top: 3px #1d2b65 solid;
	margin: 1.25rem 0
}
.designBlockA {
	border: 1px #d8d8d8 solid;
	box-sizing: border-box;
	padding: 1.5rem
}
@media print, screen and (min-width:768px) {
.designBlockA:last-of-type {
	margin-bottom: 3rem
}
}
@media only screen and (max-width:767px) {
.designBlockA:last-of-type {
	margin-bottom: 2rem
}
}
.designBlockA p {
	text-indent: -1rem;
	padding-left: 1rem;
	margin-bottom: 1.25rem
}
.designBlockA p::before {
	content: "・"
}
.designBlockA p:last-of-type {
	margin-bottom: 0
}
.designBlockA p a {
	color: #c78c1b;
	border-bottom: dashed 1px #d4b650;
	background: #fffae3;
padding:0 .15rem
}
.cornerMidashi {
	font-size: 120%;
	font-weight: 700;
	text-align: center;
	margin-bottom: 1.25rem
}
.footerContents {
	box-sizing: border-box;
	margin: 0 auto
}
@media print, screen and (min-width:768px) {
.footerContents {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1100px;
	padding: 30px
}
}
@media only screen and (max-width:767px) {
.footerContents {
	padding: 2rem 1rem 1.5rem 1rem
}
}
.footerInfo {
	width: 100%;
	flex-grow: 1;
	border-bottom: 1px #7a8cb9 solid;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
	color: #fff
}
.footerInfo a {
	color: #fff
}
.footerInfo dl dt {
margin-bottom:.5rem
}
.footerInfo dl dd {
	font-size: 90%;
	line-height: 1.4
}
@media print, screen and (min-width:768px) {
.footerInfo dl dd .infotitle {
	padding-left: 9px;
	display: inline-block
}
}
@media only screen and (max-width:767px) {
.footerInfo dl dd .infotitle {
	display: block;
	font-weight: 700;
margin-bottom:.75rem;
	padding-left: 5px
}
}
@media print, screen and (min-width:768px) {
.footerInfo dl dd .infomail {
	padding-left: 1.5rem;
	display: inline-block
}
}
@media only screen and (max-width:767px) {
.footerInfo dl dd .infomail {
	display: block;
margin-bottom:.75rem
}
}
.footerInfo dl dd .infomail::before {
	content: "●";
	color: #b99f60;
padding-right:.15rem
}
@media print, screen and (min-width:768px) {
.footerInfo dl dd .infotime {
	padding-left: 1.5rem;
	display: inline-block
}
}
@media only screen and (max-width:767px) {
.footerInfo dl dd .infotime {
	display: block
}
}
.footerInfo dl dd .infotime::before {
	content: "●";
	color: #b99f60;
padding-right:.15rem
}
.footerBox.widthA {
	text-align: left
}
@media print, screen and (min-width:768px) {
.footerBox.widthB {
	width: 500px
}
}
@media only screen and (max-width:767px) {
.footerBox.widthB {
	margin-bottom: 3rem
}
}
.footerBox dl dt {
	color: #fff;
margin-bottom:.75rem;
	font-size: 125%
}
.footerBox dl dd {
	color: #fff;
	line-height: 1.4;
	font-size: 90%
}
.footerLinks {
	margin: 1rem 0
}
@media print, screen and (min-width:768px) {
.footerLinks {
	display: flex
}
}
@media only screen and (max-width:767px) {
.footerLinks li {
	margin-bottom: 1rem
}
.footerLinks li::before {
	content: "・";
	color: #fff;
padding-right:.15rem
}
}
.footerLinks li:not(:last-of-type) {
	margin-right: 1rem
}
.footerLinks li a {
	color: #fff;
	font-size: 90%
}
.copyright {
	color: #fff;
	font-size: 80%
}
@media only screen and (max-width:767px) {
.copyright {
margin-top:.5rem;
	border-top: 1px #7a8cb9 solid;
	padding-top: 1rem
}
}
.fadeIn_up {
	opacity: 0;
	transform: translate(0, 50%);
	transition: 1s
}
.fadeIn_up.is-show {
	transform: translate(0, 0);
	opacity: 1
}
.fadeIn {
	opacity: 0;
	transition: 2s
}
.fadeIn.is-show {
	opacity: 1
}
@media print, screen and (min-width:768px) {
.pcNone {
	display: none
}
}
@media only screen and (max-width:767px) {
.spNone {
	display: none
}
}
.l_alertPolicy.is_AlertPolicy {
	display: block
}
.l_alertPolicy {
	background-color: #fff;
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 99;
	border-top: 1px solid #e8e8e8;
	box-sizing: border-box
}
@media print, screen and (min-width:768px) {
.l_alertPolicy {
	width: 100%;
	min-width: 1000px;
	height: 93px;
	padding: 20px 0 0 0
}
}
@media only screen and (max-width:767px) {
.l_alertPolicy {
	width: 100%;
	-webkit-hyphens: 70vh;
	-ms-hyphens: 70vh;
	hyphens: 70vh;
	padding: 1rem
}
}
.l_alertPolicy_wrap {
	margin: 0 auto
}
@media print, screen and (min-width:768px) {
.l_alertPolicy_wrap {
	display: table;
	width: 1000px
}
}
.alertPolicy_txt {
	font-size: 13px
}
@media print, screen and (min-width:768px) {
.alertPolicy_txt {
	display: table-cell;
	vertical-align: middle;
	padding-right: 40px
}
}
@media only screen and (max-width:767px) {
.alertPolicy_txt {
	margin-bottom: 1rem
}
}
@media print, screen and (min-width:768px) {
.alertPolicy_btn_frame {
	width: 131px;
	display: table-cell;
	vertical-align: middle
}
}
@media print, screen and (min-width:768px) {
.alertPolicy_btn_frame {
	width: 100%;
	display: block
}
}
.alertPolicy_btn {
	background-color: #01123d;
	border-radius: 3px;
	border: 1px solid #01123d;
	color: #fff;
	line-height: 1.45;
	text-align: center;
	margin: 0;
	transition: background-color .6s, border-color .6s;
	padding: 20px 0 0;
	font-size: 14px;
	text-decoration: none
}
@media print, screen and (min-width:768px) {
.alertPolicy_btn {
	display: table-cell;
	width: 131px;
	height: 40px
}
}
@media only screen and (max-width:767px) {
.alertPolicy_btn {
	width: 100%;
	padding:.5rem 0;
	display: block
}
}
.apply {
	text-align: center;
	padding-top: 60px;
}
.apply a {
	color: #FFF;
	padding: 1.5rem 3rem;
	background-color: #2E8FFF;
	font-size: 150%;
	font-weight: bold;
	display: inline-block;
	text-align: center;
	border-radius: 5px;
	box-shadow: 0 3px 5px rgba(0,0,0,.3)
}
.timeTable tr .description {
	display: block !important;
	line-height: 1.4;
	margin-bottom: 1.5rem;
	/*text-align: justify;*/
}
.timeTable tr .profile {
	display: none !important;
}
/*.timeTable:not(:last-of-type) tr td {
	padding-bottom: 0 !important;
}*/
.timeTable tr td {
	padding-bottom: 1em !important;
}
.timeTable .role {
	font-weight: bold;
	margin-bottom: 0.75rem;
	margin-top: 1.5rem;
}
.subsession {
	padding-bottom: 1em;
}
.subsession:last-child {
	padding-bottom: 0;
}
.padBlock li {
	overflow: hidden;
}
@media print, screen and (min-width:768px) {
.padBlock .ph {
	float: left;
	margin-right: 1rem;
}
.padBlock b {
	display: block !important;
	margin-bottom: 0.25rem;
	text-indent: 0 !important;
}
}