@charset "utf-8";
/* ===================================================================
     BASE CSS
=================================================================== */
html {
	font-size: 62.5%;
}
body {
	/*-webkit-text-size-adjust: 100%;*/
}
body {
	color: #222;
	font-size: 150%;
	font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans',Meiryo,sans-serif;
	/*font-family: 'ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;*/
	line-height: 1.6;
	position: relative;
	/*padding: 108px 0 0;*/
	/*background: url("../img/bg.jpg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: left top;
	background-color: #000613;*/
}
a {
	color: #007DC5;
	text-decoration: none;
	transition: opacity .1s ease-in-out;
}
a:hover {
	/*text-decoration: underline;*/
	/*transition: opacity .1s ease-in-out;*/
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
body {
	/*padding-top: 98px;*/
}
}
@media screen and (max-width: 767px) {
body {
	/*padding-top: 54px;*/
	/*background: none;*/
	background-size: 40px;
}
}


/* -----------------------------------------------------------
	変数
----------------------------------------------------------- */
:root {
  --side_nav_text_color: #132c7f;
}
:root {
  --side_nav_text_color_sub: rgba(19, 44, 127, 0.88);
}
:root {
  --key_color: #132c7f;
}
:root {
  --key_color_thin: rgba(19, 44, 127, 0.15);
}


/* = Selected Text
----------------------------------------------- */
::selection {
	background:#F4B17F; /* Safari */
}
::-moz-selection {
	background:#F4B17F; /* Firefox */
}

/* -----------------------------------------------------------
	汎用
----------------------------------------------------------- */
.icon_pdf {
	width: 14px;
	vertical-align: text-bottom;
	margin-left: 6px;
}
.icon_blank {
	width: 12px;
	vertical-align: initial;
	margin-left: 4px;
}
.icon_pagelink {
	width: 12px;
}
.fadein {
	opacity: 0;
}
.opfadein {
	opacity: 0;
}
.spacing {
	letter-spacing: -0.03em;
}
.text_keisen {
	letter-spacing: 0!important;
    transform: scale(4, 0.2);
    transform-origin: left;
    display: inline-block;
    margin-right: 4em;
}
.line_through {
	color: red;
	text-decoration: line-through;
}
.line_through span {
	color: #000;
}
.caution {
	border: 2px solid red;
	padding: 10px;
	color: red;
	font-weight: bold;
}
.content_box .btn_document {
	display: flex;
}
.content_box .btn_document a {
	display: flex;
	background: rgba(18, 49, 121, 0.2);
	border: 1px solid #666;
	padding: 5px 10px;
	color: #333;
	text-decoration: none;
	line-height: 1.4;
}
.content_box .btn_document a:hover {
	opacity: .7;
}
.gene_color {
	color: var(--key_color);
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.spacing {
	letter-spacing: 0;
}
}
@media screen and (max-width: 767px) {
.spacing {
	letter-spacing: 0;
}
}

/* -----------------------------------------------------------
	header
----------------------------------------------------------- */
header {
	width: 100%;
	height: 108px;
	/*position: fixed;
	top: 0;
	right: 0;
	z-index: 200;*/
	/*background: #aed6ef;*/
	border-top: 4px solid var(--key_color);
	/*border-bottom: 1px solid #ccc;*/
}
.header_inner {
	width: 94%;
	height: 108px;
	max-width: 1200px;
	margin:  0 auto;
	position: relative;
}
.logo {
	max-width: 620px;
	position: absolute;
	top: 20px;
	/*transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;*/
}
.logo_mark {
	display:block;
	max-width: 87px;
	float: left;
	/*transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;*/
}
.logo_text {
	display: block;
	max-width: 544px;
	float: left;
	/*transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;*/
}

/*--- ハンバーガー ---*/
.btn_smp {
	width: 36px;
	float: right;
	position: absolute;
    right: 0;
    top: 14px;
	z-index: 2;
	display:  none;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 36px;
	height: 22px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: var(--key_color);
	/*border-radius: 4px;*/
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 9px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.menu-trigger.menu_active span:nth-of-type(1) {
	-webkit-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}
.menu-trigger.menu_active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.menu_active span:nth-of-type(3) {
	-webkit-transform: translateY(-9px) rotate(45deg);
	transform: translateY(-9px) rotate(45deg);
}

/* スクロール後 */
header, .header_nav {
	/*transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;*/
}
header.sml {
	height: 80px;
}
.sml .logo {
	max-width: 460px;
	top: 6px;
}
.sml .logo_mark {
	max-width: 64px;
}
.sml .logo_text {
	max-width: 396px;
}

header .member_btn {
	width: 530px;
	max-width: 380px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	display: none;
}
header .member_btn a {
	display: block;
	background: #E62D2D;
	color: #fff;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	padding: 10px 0;
	padding: 18px 0;
	border: 2px solid #fff;
}
header .member_btn a:hover {
	opacity: .7;
}
header .member_btn a span {
	font-size: 80%;
	display: inline-block;
	display: none;
	letter-spacing: -0.03em;
}

@media screen and (min-width: 1201px) and (max-width: 1300px) {
header .member_btn {
	width: 42%;
}
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
header {
	height: 98px;
}
.header_inner {
	height: 98px;
}
.header_inner .logo {
	width: 55%;
    top: 50%;
    transform: translateY(-50%);
}
.header_inner .logo_mark {
	/*width: 48px;*/
	width: 12%;
}
.header_inner .logo_text {
	/*width: 300px;*/
	width: 86%;
}
header.sml {
	height: 70px;
}
.sml .logo {
	top: 10px;
	width: 350px;
}
.sml .logo_mark {
	width: 48px;
}
.sml .logo_text {
	width: 300px;
}
header .member_btn {
	width: 38%;
}
header .member_btn a {
	font-size: 16px;
	padding: 8px 0;
	padding: 12px 0;
}
}
@media screen and (max-width: 767px) {
header {
	height: 54px;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 200;
	background: #fff;
}
.header_active {
	display: block;
	z-index: 10;
}
.header_inner {
	height: 54px;
}
.header_inner .logo {
	max-width: 270px;
	width: calc(100% - 50px);
	top: 10px;
	z-index: 9999;
	position: relative;
}
.header_inner .logo_mark {
	width: 13%;
}
.header_inner .logo_text {
	width: 87%;
}
header.sml {
	height: 54px;
}
header .member_btn {
	display: none;
}
}

@keyframes header_on {
	100% { top:0; left: 0; opacity:1; }
}
@keyframes header_nav_on {
	100% { top:0; opacity:1; }
}
/* -----------------------------------------------------------
	
----------------------------------------------------------- */




@media screen and (min-width: 768px) and (max-width: 1200px) {

}
@media screen and (max-width: 767px) {
.btn_smp {
	display: block;
}

}




/* -----------------------------------------------------------
	mian
----------------------------------------------------------- */
main {
	/*padding-top: 108px;*/
	/*background: linear-gradient(to bottom, rgba(229,238,246,1), rgba(229,238,246,0));*/
	/*background: linear-gradient(to bottom, #fff 0px, #f2f8fc 200px, #aed6ef);*/
	background: linear-gradient(to bottom, #fff 0px, rgba(89, 117, 180, 0.12) 200px, rgba(89, 117, 180, 0.12));
}
.content_wrap {
	max-width: 1200px;
	width: 94%;
	margin: 0 auto;
	padding: 20px 0 70px;
}
.side_nav {
	display: block;
	max-width: 230px;
	width: 19%;
	float: left;
}
.side_nav .language {
	display: flex;
	margin-bottom: 10px;
	display: none;
}
.side_nav .language a {
	width: 50%;
	height: 40px;
	display: flex;
	justify-content: center;
    align-items: center;
	color: #fff;
}
.side_nav .language a:hover {
	opacity: .7;
}
.side_nav .language a.jp {
	background: #a70505;
}
.side_nav .language a.en {
	background: #765d3d;
}
.gnavi {
	margin-bottom: 30px;
}
.gnavi li {
	width: 100%;
	margin-bottom: 2px;
}
.gnavi li a,
.gnavi li .fict_name {
	display: block;
	background: var(--side_nav_text_color);
	border: 1px solid var(--side_nav_text_color);
	color: #fff;
	padding: 8px;
	position: relative;
	font-size: 15px;
}
.gnavi li.authorizationclass a,
.gnavi li.nokap a {
	background: #00a68d;
	border: 1px solid #00a68d;
}
.gnavi li a:hover{
	opacity: 0.8;
}
.gnavi li.fict {
	position: relative;
}
.gnavi li.fict .fict_name {
	/*cursor: pointer;*/
	pointer-events: none;
}
.gnavi li.fict:hover .fict_name {
	/*opacity: 0.8;*/
}
.gnavi li.fict:hover .gnavi_sub {
	/*display: block;*/
}
.gnavi li .gnavi_sub {
	position: absolute;
    width: 25rem;
    top: 0;
	left: 100%;
    box-shadow: 6px 0px 6px 0px rgba(0, 0, 0, 0.2);
	background: #fff;
	display: none;
}
.gnavi li .gnavi_sub li:last-child {
	margin-bottom: 0;
}
.gnavi li .gnavi_sub li a {
	background: var(--side_nav_text_color_sub);
	border: 1px solid var(--side_nav_text_color_sub);
}
/*#greeting .gnavi li.greeting a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#outline .gnavi li.outline a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#program .gnavi li.program a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#overview .gnavi li.overview a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#entry .gnavi li.entry a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#subject .gnavi li.subject a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#selected .gnavi li.selected a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#information .gnavi li.information a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#presenter .gnavi li.presenter a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#credit .gnavi li.credit a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#access .gnavi li.access a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#prevention .gnavi li.prevention a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#zoom .gnavi li.zoom a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#kenkoujyoutai .gnavi li.kenkoujyoutai a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#announce .gnavi li.announce a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#earnable .gnavi li.earnable a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#presenter .gnavi li.presenter a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#sponsor .gnavi li.sponsor a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#epifix .gnavi li.epifix a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#sscc .gnavi li.sscc a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#poster .gnavi li.poster a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#stay .gnavi li.stay a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#lecture .gnavi li.lecture a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#mask .gnavi li.mask a {
	color: var(--side_nav_text_color);
	background: #fff;
}
#announce .gnavi li.announce a {
	color: var(--side_nav_text_color);
	background: #fff;
}*/





/*.gnavi li.greeting a,*/
/*.gnavi li.program a,*/
/*.gnavi li.outline a,*/
/*.gnavi li.entry a,*/
/*.gnavi li.authorizationclass a,*/
/*.gnavi li.nokap a,*/
/*.gnavi li.abstract a,*/
/*.gnavi li.selected a,*/
/*.gnavi li.poster a,*/
/*.gnavi li.access a,*/
/*.gnavi li.announce a,*/
/*.gnavi li.participant a,*/
/*.gnavi li.information a,*/
/*.gnavi li.credit a,*/
/*.gnavi li.lecture a,*/
/*.gnavi li.mask a,*/
/*.gnavi li.earnable a,*/
/*.gnavi li.subject a,*/
.gnavi li.hoge a {
	padding-top: 18px;
}
/*.gnavi li.greeting a::before,*/
/*.gnavi li.program a::before,*/
/*.gnavi li.outline a::before,*/
/*.gnavi li.entry a::before,*/
/*.gnavi li.authorizationclass a::before,*/
/*.gnavi li.nokap a::before,*/
/*.gnavi li.abstract a::before,*/
/*.gnavi li.selected a::before,*/
/*.gnavi li.poster a::before,*/
/*.gnavi li.access a::before,*/
/*.gnavi li.announce a::before,*/
/*.gnavi li.participant a::before,*/
/*.gnavi li.information a::before,*/
/*.gnavi li.credit a::before,*/
/*.gnavi li.lecture a::before,*/
/*.gnavi li.mask a::before,*/
/*.gnavi li.earnable a::before,*/
/*.gnavi li.subject a::before,*/
.gnavi li.hoge a::before {
	position: absolute;
    top: -1px;
    left: -1px;
    display: block;
    content: 'NEW';
    font-size: 10px;
	letter-spacing: 0.1em;
    color: #fff;
    width: 42px;
	text-align: center;
	background: #d30000;
}

/* クリック無効 */
.gnavi li.outline a,
.gnavi li.greeting a,
.gnavi li.credit a,
.gnavi li.program a,
.gnavi li.entry a,
.gnavi li.subject a,
.gnavi li.abstract a,
.gnavi li.selected a,
.gnavi li.presenter a ,
.gnavi li.information a,
.gnavi li.earnable a,
.gnavi li.sponsor a,
.gnavi li.coi a,
.gnavi li.participant a,
.gnavi li.authorizationclass a,
.gnavi li.nokap a,
.gnavi li.access a,
.gnavi li.announce a,
.gnavi li.overseas a,
.gnavi li.seminar a,
.gnavi li.jast a,
.gnavi li.coi a,
.gnavi li.intern a,
.gnavi li.speakers a,
.gnavi li.training a,
.gnavi li.re_seminar a,
.gnavi li.edu_seminar a,
.gnavi li.accommodation a,
.gnavi li.print a,
.gnavi li.nursery a,
.gnavi li.sponsorship a,
.gnavi li.poster a,

/*.gnavi li.fict_program,*/
.gnavi li.hoge a {
	pointer-events: none;
}

.gnavi li.member a {
	background: #E62D2D;
	border: 2px solid #fff;
	padding: 24px 8px;
	display: none;
}
.gnavi li.member a span {
	display: none;
}
.gnavi li.access {
	display: none;
}



.oterlink_ttl {
	background: var(--key_color);
	color: #fff;
	font-size: 14px;
	line-height: 1;
	padding: 6px 10px;
	margin-bottom: 3px;
}

.oterlink_list li {
	border: 1px solid rgba(255, 255, 255, 0.3);
	margin-bottom: 3px;
}
.oterlink_list li a {
	display: block;
	background: #fff;
	color: #222;
	font-size: 14px;
	padding: 5px 25px 5px 10px;
	line-height: 1.4;
	background: url("../img/icon_blank.png") #fff no-repeat;
	background-size: 14px;
	background-position: right 6px center;
}
.oterlink_list li a:hover {
	opacity: 0.7;
}


.main_content {
	max-width: 950px;
	min-height: 700px;
	width: 80%;
	float: right;
	background: #fff;
	padding-bottom: 40px;
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
main {
	/*padding-top: 98px;*/
}
.content_wrap {
	padding: 20px 0 50px;
}
.side_nav {
	display: block;
	max-width: 100%;
	width: 24%;
}
.gnavi li a {
	font-size: 14px;
}
.oterlink_list li a {
	font-size: 12px;
}
.main_content {
	max-width: 100%;
	width: 74%;
}
}
@media screen and (max-width: 767px) {
main {
	padding-top: 38px;
	padding-bottom: 10px;
	/*background: none;*/
}
.content_wrap {
	padding: 0;
	width: 100%;
}
.main_content {
	width: 94%;
	max-width: 100%;
	min-height: auto;
	float: none;
	margin: 20px auto 0;
}
.side_nav {
	display: none;
	float: none;
}
.side_nav_active {
	display: block;
	position: fixed;
    top: 54px;
	bottom: 0;
    right: 0;
    z-index: 10;
	overflow:auto;
	max-width: 100%;
	width: 100%;
	height: auto;
	padding: 20px 20px 20px;
	background: rgba(255, 255, 255, 0.9);
}
.side_nav_inner {
	overflow: auto;
}
.gnavi li a {
	font-size: 13px;
}
.gnavi li a:hover {
	opacity: 1;
}
.gnavi li .gnavi_sub {
	position: static;
	width: 100%;
	box-shadow: none;
}
.gnavi li.fict:hover .fict_name {
	opacity: 1;
}
.gnavi li.fict:hover .gnavi_sub {
	display: none;
}
.gnavi li.fict .gnavi_sub {
	display: none;
	visibility: hidden;
	opacity: 0;
	height: 0;
	transition: .5s;
}
.gnavi li.fict .gnavi_sub.sub_active {
	display: block;
	visibility: visible;
	opacity: 1;
	height: auto;
}
.gnavi li.fict .fict_name::after {
	/*position: absolute;
    top: 50%;
    right: 12px;
    left: auto;
    display: block;
    content: '＋';
	color: #fff;
	line-height: 1;
	margin-top: -8px;*/
}
.gnavi li.fict.fict_active .fict_name::after {
	content: 'ー';
}
.gnavi li a::after {
	position: absolute;
    top: 50%;
    right: 15px;
    left: auto;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* クリック無効。スマホ版のsoon */
.gnavi li.fict::after,


.gnavi li.outline a::after,
.gnavi li.greeting a::after,
.gnavi li.credit a::after,
.gnavi li.program a::after,
.gnavi li.entry a::after,
.gnavi li.subject a::after,
.gnavi li.abstract a::after,
.gnavi li.selected a::after,
.gnavi li.presenter a::after,
.gnavi li.information a::after,
.gnavi li.earnable a::after,
.gnavi li.sponsor a::after,
.gnavi li.coi a::after,
.gnavi li.participant a::after,
.gnavi li.authorizationclass a::after,
.gnavi li.nokap a::after,
.gnavi li.access a::after,
.gnavi li.announce a::after,
.gnavi li.overseas a::after,
.gnavi li.seminar a::after,
.gnavi li.jast a::after,
.gnavi li.coi a::after,
.gnavi li.intern a::after,
.gnavi li.speakers a::after,
.gnavi li.training a::after,
.gnavi li.re_seminar a::after,
.gnavi li.edu_seminar a::after,
.gnavi li.accommodation a::after,
.gnavi li.print a::after,
.gnavi li.nursery a::after,
.gnavi li.sponsorship a::after,
.gnavi li.poster a::after,
.gnavi li.hoge a::after {
	position: absolute;
    top: 50%;
    right: 10px;
    left: auto;
    display: block;
    content: 'coming soon';
	font-size: 11px;
	color: rgba(255, 255, 255, 0.3);
	width: 100%;
	text-align: right;
    margin-top: -9px;
	-webkit-transform: rotate(0);
	transform: rotate(0);
	border: none;
}
.gnavi li.member a {
	padding: 8px 8px;
	/*display: block;*/
}
.oterlink_list li a {
	background: url(../img/icon_blank.png) #ddd no-repeat;
	background-size: 14px;
	background-position: right 6px center;
}
}




/* -----------------------------------------------------------
	page title content
----------------------------------------------------------- */
.page_ttlbox {
background-color: var(--side_nav_text_color);
	/*background: url("../img/page_ttlbox.jpg");*/
	/*background-position: right center;
	background-size: cover;
	background-repeat: no-repeat;*/
	padding: 14px 35px;
	font-size: 26px;
	color: #fff;
	letter-spacing: 0.1em;
	font-weight: normal;
	margin-bottom: 30px;
	/*text-shadow: 1px 1px 3px #040000, -1px -1px 3px #040000;*/
}
.content_box {
	max-width: 890px;
	width: 94%;
	margin: 0 auto;
	letter-spacing: 0.05em;
	font-size: 14px;
	line-height: 1.8;
}
.content_box a {
	color: #005AAB;
	text-decoration: underline;
}
.content_box a:hover {
	text-decoration: none;
}
.cont_sec {
	margin-bottom: 50px;
}
.cont_sec:last-child {
	margin-bottom: 0;
}
.mida_1 {
	font-size: 20px;
    font-weight: normal;
    /* color: #005AAB; */
    background: var(--key_color_thin);
    padding: 8px 16px;
    /* border-radius: 5px; */
    border-left: 3px solid var(--key_color);
    /* border-bottom: 1px solid #005AAB; */
    margin-bottom: 16px;
}
.mida_2 {
	font-size: 17px;
	font-weight: bold;
	color: var(--key_color);
	border-bottom: 2px solid var(--key_color);
	margin-bottom: 16px;
}
.mida_4 {
	background: #F4F4F4;
    margin: 25px 0 10px;
    padding: 10px 0 10px 10px;
    position: relative;
    font-size: 15px;
	color: var(--key_color);
    line-height: 1;
	font-weight: bold;
    border-top: 1px solid var(--key_color);
    border-radius: 0 0 2px 2px;
}

.contact_waku_1 {
	max-width: 60%;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid var(--key_color);
	background: rgba(0,3,64,0.08);
	padding: 16px;
}
.contact_waku_1_ttl {
	font-weight:bold;
	color: var(--key_color);
	margin-bottom: 10px;
}
.contact_waku_1_ttl_2 {
	font-weight:bold;
	color: #fff;
	text-align: center;
	line-height: 2;
	background: var(--key_color);
	margin-bottom: 16px;
}
.gene_waku_1 {
	background: #f4f4f4;
	padding: 24px;
}
.gene_waku_2{
	background: #f4f4f4;
	padding: 8px 16px;
	font-size: 90%;
}
.btn_link {
    width: 60%;
	margin-left: auto;
	margin-right: auto;
}
.btn_link a {
    display: block;
    position: relative;
    color: #fff;
	font-size: 18px;
	text-decoration: none;
    background: var(--key_color);
    text-align: center;
    padding: 16px 0;
	border-radius: 100px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.btn_link a::after{
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    left: auto;
    width: 12px;
    height: 12px;
    margin-top: -8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.btn_link a:hover {
    opacity: 0.7;
}
.text_red {
	color: red;
}
.line_through {
	color: red;
  text-decoration: line-through;
}
.line_through span {
	color: #000;
}
.end_text_1 {
	display: inline-block;
	background-color: #dcdcdc;
    border: solid 1px #999999;
	padding: 0.5em 2em;
}
.btn_typ_01 {
	width: 50%;
	margin: 0 auto;
}
.btn_typ_02 {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
.btn_typ_02 li {
	width: 48%;
	float: left;
	margin-left: 4%;
}
.btn_typ_02 li:first-child {
	margin-left: 0;
}
.btn_typ_01 a,
.btn_typ_02 a {
	display: block;
	background: var(--key_color);
	color: #fff;
	padding: 16px 0;
	text-align: center;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-decoration: none;
	display: block;
    position: relative;
	border-radius: 50px;
}
.btn_typ_01 a::after,
.btn_typ_02 a::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    left: auto;
    width: 12px;
    height: 12px;
    margin-top: -8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.btn_typ_01 a:hover,
.btn_typ_02 a:hover {
	opacity: 0.7;
}

.membership {
	margin-top: 40px;
}
.membership .ofice_name {
	font-size: 14px;
}
.membership a {
	text-decoration: underline;
}
.membership a:hover {
	text-decoration: none;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.content_box {
	font-size: 14px;
}
.contact_waku_1 {
	max-width: 100%;
}
.btn_typ_02 {
	width: 80%;
}
.btn_typ_02 li {
	width: 100%;
	float: none;
	margin-left: 0;
}
.btn_typ_02 li:first-child {
	margin-bottom: 20px;
}
.btn_link {
    width: 90%;
}
}
@media screen and (max-width: 767px) {
.page_ttlbox {
	padding: 12px 4%;
	font-size: 18px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
	background: var(--key_color);
}
.content_box {
	font-size: 14px;
	width: 92%;
	padding-bottom: 40px;
}
.cont_sec {
	margin-bottom: 30px;
}
.gene_waku_1 {
	padding: 8px;
}
.contact_waku_1 {
	max-width: 100%;
}
.mida_1 {
	font-size: 16px;
}
.mida_2 {
	font-size: 16px;
}
.btn_link {
    width: 100%;
	max-width: 400px;
}
.btn_link a {
	font-size: 15px;
}
.btn_typ_02 {
	width: 80%;
}
.btn_typ_02 li {
	width: 100%;
	float: none;
	margin-left: 0;
}
.btn_typ_02 li:first-child {
	margin-bottom: 20px;
}
.btn_typ_01 a,
.btn_typ_02 a {
	font-size: 15px;
}
}





/* -----------------------------------------------------------
	footer
----------------------------------------------------------- */
footer {
	/*background: #1c1458;*/
	background: linear-gradient(to bottom, #0b3c8e, #1c1666);
	color: #fff;
	padding: 30px 0 10px;
}
.footer_inner {
	max-width: 1200px;
	width: 94%;
	margin: 0 auto;
}
.footer_ttl {
	font-size: 18px;
	margin-bottom: 10px;
	letter-spacing: 0.1em;
}
.footer_con {
	margin-bottom: 20px;
	letter-spacing: 0.02em;
}
.footer_left {
	width: 48%;
	float: left;
}
.footer_right {
	width: 48%;
	float: right;
}
.ofice_ttl {
	padding-bottom: 0;
	margin-bottom: 12px;
	border-bottom: 1px solid #fff;
}
.ofice_name {
	font-size: 17px;
	margin-bottom: 12px;
}
.ofice_info {
	font-size: 13px;
	line-height: 1.8;
	margin-bottom: 10px;
}
.ofice_repre {
	font-size: 13px;
	line-height: 1.8;
}
footer a {
	color: #fff;
}
footer a:hover {
	text-decoration: underline;
}

.copy {
	font-family: Arial, sans-serif;
	color: #fff;
	font-size: 10px;
	letter-spacing: 0.1em;
	text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
footer {
	padding: 30px 0 10px;
}
.footer_con {
	letter-spacing: 0;
}
.ofice_ttl {
	font-size: 14px;
}
.ofice_name {
	font-size: 16px;
}
}
@media screen and (max-width: 767px) {
footer {
	padding: 30px 0 10px;
}
.footer_inner {
}
.footer_ttl {
	font-size: 15px;
	margin-bottom: 20px;
	letter-spacing: 0;
}
.footer_con {
	letter-spacing: 0;
}
.footer_left,
.footer_right {
	width: 100%;
	float: none;
	margin-bottom: 30px;
}
.ofice_ttl {
	font-size: 13px;
}
.ofice_name {
	font-size: 15px;
	margin-bottom: 6px;
}
.ofice_info,
.ofice_repre {
	line-height: 1.6;
	font-size: 12px;
}

.copy {
	font-size: 10px;
	letter-spacing: 0;
}
}

/* -----------------------------------------------------------
	efect
----------------------------------------------------------- */
.ef_sl {
	position: relative;
	/*overflow-x: hidden;*/
	overflow: hidden;
}
.ef_sl:before {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   right: 0;
   top: 0;
   z-index: 1;
   background-color: #111;
   -webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   -moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   -o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   -webkit-transition-delay: .2s;
   -moz-transition-delay: .2s;
   -ms-transition-delay: .2s;
   -o-transition-delay: .2s;
   transition-delay: .2s;
}
.ef_sl:after {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   right: 0;
   top: 0;
   background-color: #fff;
   z-index: 2;
   -webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
   -webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   -moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   -o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
   transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
.ef_sl.sc_active::before,
.ef_sl.sc_active::after  {
	right: -100%;
}

.ef_su {
	opacity: 0;
	transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
	transform: translateY(80px);
}
.ef_su.sc_active {
	opacity: 1;
	transform: translateY(0px);
	transform: translate3d(0,0,0);
}

.ef_sr {
	opacity: 0;
	transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
	transform: translateX(-80px);
}
.ef_sr.sc_active {
	opacity: 1;
	transform: translateX(0px);
	transform: translate3d(0,0,0);
}

.open_fadein {
	animation: open_fadein 0.5s ease 1s 1 forwards;
	transform: translate3d(0,0,0);
	transform: translateX(-80px);
	opacity: 0;
}
@keyframes open_fadein {
100% {
    opacity: 1;
    transform: translateX(0);
}
}

/* -----------------------------------------------------------
	404
----------------------------------------------------------- */
.error_box {
	width: 1000px;
	margin: 160px auto;
	text-align: center;
}
.error_box h1 {
	font-size: 24px;
	color: #555;
	margin-bottom: 40px;
}
.error_text {
	margin-bottom: 40px;
}
.error_box a {
	color: #2c2c2c;
	text-decoration: underline;
}
.error_box a:hover {
	text-decoration: none;
}
#error404 .page_ttlbox {
	background-image: url("../sitemap/img/bg_page_ttl.jpg");
}
@media screen and (min-width: 768px) and (max-width: 1200px) {

}
@media screen and (max-width: 767px) {

}

/* -----------------------------------------------------------
	video
----------------------------------------------------------- */
.mv_box {
	width: 100%;
	/*margin: 50px auto 60px;*/
	/*border: 1px solid #ccc;*/
}
#player {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
.mv_box {
	width: 100%;
	/*margin: 0 auto 40px;*/
}
}
@media screen and (max-width: 767px) {
.mv_box {
	width: 100%;
	max-width: 450px;
	/*margin: 0 auto 40px;*/
}
}


/* -----------------------------------------------------------
	bana_list_side
----------------------------------------------------------- */
.bana_list_side {
	margin-top: 20px;
	/*display: none !important;*/
}
.bana_list_side li {
	margin-bottom: 8px;
	border: 1px solid rgba(6,121,194,0.3);
}
.bana_list_side li a {
	display: block;
	background: #fff;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {

}
@media screen and (max-width: 767px) {
.bana_list_side li {
	width: 49%;
	float: left;
	margin-left: 2%;
	margin-bottom: 2%;
}
.bana_list_side li:nth-child(2n + 1) {
	margin-left: 0;
}
}


/* -----------------------------------------------------------
	bana_list
----------------------------------------------------------- */
.bana_list {
	margin: 20px 0 0;
	/*display: none !important;*/
}
.bana_list li {
	margin: 0 16px 0 0;
	max-width: 222px;
    border: 1px solid rgba(6,121,194,0.3);
}
.bana_list li a {
	display: block;
	background: #fff;
}
.bana_list li a:hover {
	opacity: 0.7;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.bana_list li {
	max-width: 160px;
}
}
@media screen and (max-width: 767px) {
.bana_list {
	width: 94%;
    margin-left: auto;
    margin-right: auto;
}
.bana_list li {
	max-width: 190px;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 10px;
}
}

