@charset "UTF-8";
/* =======================================

	CommonElements

======================================= */
html {
	height: 100%;
	font-size: 62.5%;
}
body {
	min-width: 980px;
	height: 100%;
	color: #222;
	letter-spacing: 0.1em;
	font-size: 1.48rem;
	font-weight: 500;
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'verdana', sans-serif;
	line-height: 1.5;
	word-break: break-word;
	word-wrap : break-word;
	overflow-wrap : break-word;
	position: relative;
	background: #fff;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #37B2E0;
	text-decoration: none;
}
#container {
	overflow: hidden;
}

ruby > rt {
	font-size: 0.8rem;
}

@media only screen and (max-width: 767px) {
	body {
		min-width: auto;
		min-width: initial;
	}
	#container {
		padding-bottom: 48px;
		overflow: hidden;
	}
}

@font-face {
  font-family: 'tit';
  src:
    url('/css/fonts/tit.ttf?gen7mh') format('truetype'),
    url('/css/fonts/tit.woff?gen7mh') format('woff'),
    url('/css/fonts/tit.svg?gen7mh#tit') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.icon-pdf:before {
  content: "\e944";
}
.icon-blank:before {
  content: "\e941";
}
.icon-beginner:before {
  content: "\e93f";
}
.icon-search2:before {
  content: "\e93d";
}
.icon-arrow-circle:before {
  content: "\e93e";
}
.icon-star:before {
  content: "\e940";
}
.icon-new:before {
  content: "\e940";
}
.icon-like:before {
  content: "\e942";
}
.icon-reserve:before {
  content: "\e943";
}
.icon-goal:before {
  content: "\e93c";
}
.icon-airplane:before {
  content: "\e93a";
}
.icon-pin-solid:before {
  content: "\e93b";
}
.icon-info:before {
  content: "\e939";
}
.icon-arrow:before {
  content: "\e94e";
}
.icon-document:before {
  content: "\e951";
}
.icon-pin:before {
  content: "\e952";
}
.icon-filter:before {
  content: "\e94d";
}
.icon-alert-octagon:before {
  content: "\e900";
}
.icon-arrow-down:before {
  content: "\e901";
}
.icon-arrow-left:before {
  content: "\e902";
}
.icon-arrow-right:before {
  content: "\e903";
}
.icon-arrow-up:before {
  content: "\e904";
}
.icon-award:before {
  content: "\e905";
}
.icon-book-open:before {
  content: "\e906";
}
.icon-bookmark:before {
  content: "\e907";
}
.icon-check-circle:before {
  content: "\e908";
}
.icon-chevron-down:before {
  content: "\e909";
}
.icon-chevron-left:before {
  content: "\e90a";
}
.icon-chevron-right:before {
  content: "\e90b";
}
.icon-chevron-up:before {
  content: "\e90c";
}
.icon-chevrons-down:before {
  content: "\e90d";
}
.icon-chevrons-left:before {
  content: "\e90e";
}
.icon-chevrons-right:before {
  content: "\e90f";
}
.icon-chevrons-up:before {
  content: "\e910";
}
.icon-clipboard:before {
  content: "\e911";
}
.icon-compass:before {
  content: "\e912";
}
.icon-download:before {
  content: "\e913";
}
.icon-edit:before {
  content: "\e914";
}
.icon-flag:before {
  content: "\e915";
}
.icon-folder:before {
  content: "\e916";
}
.icon-globe:before {
  content: "\e917";
}
.icon-home:before {
  content: "\e918";
}
.icon-key:before {
  content: "\e919";
}
.icon-link:before {
  content: "\e91a";
}
.icon-loader:before {
  content: "\e91b";
}
.icon-lock:before {
  content: "\e91c";
}
.icon-log-in:before {
  content: "\e91d";
}
.icon-log-out:before {
  content: "\e91e";
}
.icon-mail:before {
  content: "\e91f";
}
.icon-map:before {
  content: "\e920";
}
.icon-map-pin:before {
  content: "\e921";
}
.icon-menu:before {
  content: "\e922";
}
.icon-message-square:before {
  content: "\e923";
}
.icon-minus:before {
  content: "\e924";
}
.icon-minus-circle:before {
  content: "\e925";
}
.icon-more-horizontal:before {
  content: "\e926";
}
.icon-more-vertical:before {
  content: "\e927";
}
.icon-paperclip:before {
  content: "\e928";
}
.icon-phone-call:before {
  content: "\e929";
}
.icon-plus:before {
  content: "\e92a";
}
.icon-plus-circle:before {
  content: "\e92b";
}
.icon-search:before {
  content: "\e92c";
}
.icon-send:before {
  content: "\e92d";
}
.icon-share:before {
  content: "\e92e";
}
.icon-share-2:before {
  content: "\e92f";
}
.icon-shuffle:before {
  content: "\e930";
}
.icon-tag:before {
  content: "\e931";
}
.icon-unlock:before {
  content: "\e932";
}
.icon-upload-cloud:before {
  content: "\e933";
}
.icon-user:before {
  content: "\e934";
}
.icon-x:before {
  content: "\e935";
}
.icon-x-circle:before {
  content: "\e938";
}
.icon-zoom-in:before {
  content: "\e936";
}
.icon-zoom-out:before {
  content: "\e937";
}


/* ------------------------------------
	layout
------------------------------------ */
.cont_outer {
	max-width: 1446px;
	margin: 0 auto;
	padding-right: 40px;
	padding-left: 40px;
	position: relative;
	z-index: 1;
}

/* ------------------------------------
	common parts
------------------------------------ */
.br_pc {display: block; font-size: 0 !important;}
.br_sp {display: none !important;}
.display_pc {display: block !important;}
.display_sp {display: none !important;}
.align_r {text-align: right !important;}
.align_c {text-align: center !important;}
.align_l {text-align: left !important;}
.v_align_t {vertical-align: top !important;}
.v_align_m {vertical-align: middle !important;}
.v_align_b {vertical-align: bottom !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;}

@media only screen and (max-width: 767px) {
	.br_pc {display: none !important;}
	.br_sp {display: block !important; font-size: 0 !important;}
	.display_pc {display: none !important;}
	.display_sp {display: block !important;}
}

/*	column	*/
.clm_2,
.clm_3,
.clm_4 {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
.clm_2 > * {
	width: 48.4%;
	margin-right: 3.2%;
	margin-bottom: 30px;
}
.clm_3 > * {
	width: 31.2%;
	margin-right: 3.2%;
	margin-bottom: 30px;
}
.clm_4 > * {
	width: 22.6%;
	margin-right: 3.2%;
	margin-bottom: 30px;
}
.clm_2 > *:nth-of-type(2n),
.clm_3 > *:nth-of-type(3n),
.clm_4 > *:nth-of-type(4n) {
	margin-right: 0;
}

.airline_clm {
	display: flex;
}

.airline_clm > div {
	width: calc(100% - 250px);
	margin-right: 3.2%;
}

.airline_clm > figure {
	width: 250px;
	margin-bottom: 3vw;
}
.airline_clm > figure img {
	max-width: none;
	max-width: auto;
	max-width: initial;
	width: 100%;
}


@media only screen and (max-width: 767px) {
	.clm_2,
	.clm_3,
	.clm_4 {
		display: block;
	}
	.clm_2 > *,
	.clm_3 > *,
	.clm_4 > * {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.sp_clm_2 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.sp_clm_2 > * {
		width: 48%;
		margin-right: 4%;
	}
	.sp_clm_2 > *:nth-of-type(2n) {
		margin-right: 0;
	}
	.clm_3.sp_clm_2 > *:nth-of-type(3n) {
		width: 48%;
		margin-right: 4%;
	}
	.clm_3.sp_clm_2 > *:nth-of-type(2n) {
		width: 48%;
		margin-right: 0;
	}

	.airline_clm {
		display: block;
	}

	.airline_clm > div {
		width: 100%;
	}
	.airline_clm > figure {
		width: 100%;
	}
}

/*	btn	*/
.btn {
	width: 100%;
	padding: 7px 0;
	color: #55ADEA;
	font-weight: 700;
	font-size: 1.3rem;
	font-family: 'Lato', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'verdana', sans-serif;
	text-align: center;
	letter-spacing: 0;
	display: inline-block;
	position: relative;
	border: 1px solid #55ADEA;
	border-radius: 50px;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
.btn:before {
	content: '';
	width: 16px;
	height: 1px;
	display: block;
	background: #55ADEA;
	position: absolute;
	top: 50%;
	right: -8px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	z-index: 1;
}
.oc_area .btn:before {
    background: #ffd859;
}
.btn:after {
	content: '';
	width: 8px;
	height: 1px;
	display: block;
	background: #FFF;
	position: absolute;
	top: 50%;
	right: 0px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	z-index: 0;
}
.oc_area .btn:after{
	background: #ffffff;
	z-index: 1;
}
.oc_area .btn:hover::after{
	background: #ffd859;
	z-index: inherit;
}
.btn.size_s {
	width: 116px;
}
.btn.size_l {
	width: 280px;
}
.btn.btn_back {
}
.btn.btn_back:before {
	right: auto;
	left: -8px;
}
.btn.btn_back:after {
	right: auto;
	left: 0;
}

/* Hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) .btn:hover {
		color: #FFF;
		background: #55ADEA;
	}
	body:not(.tab_view) .oc_area .btn:hover {
		background: #ffffff;
		color: #ffd859;
    }
	body:not(.tab_view) .btn:hover:before {
		width: 8px;
	}
}

/* ------------------------------------
	header
------------------------------------ */
header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	background: rgba(0,0,0,0.7);
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
header .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
}
header h1,
header .logo {
	margin: 10px auto 0 23px;/*24px auto 0 23px*/
	white-space: nowrap;
	position: relative;
	z-index: 1;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
header h1 a,
header .logo a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
}
header h1 img,
header .logo img {
	width: 337px;
	display: block;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
header #mddNav > ul {
	font-size: 0;
}
header #mddNav > ul > li {
	font-size: 1.4rem;
}
header #mddNav > ul > li.target_list,
header #mddNav > ul > li.sp_oc,
header #mddNav > ul > li.sp_doc_req {
	display: none !important;
}
header #mddNav > ul > li {
	height: 80px;
	margin: 0 20px;
	line-height: 80px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
header #mddNav > ul > li > a {
	height: 80px;
	display: block;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0;
	position: relative;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
header #mddNav > ul > li:not(.type_btn) > a:before,
header #mddNav > ul > li:not(.type_btn).active > a:before {
	content: '';
	width: 65px;
	width: 0;
	height: 2px;
	display: block;
	background: #55ADEA;
	position: absolute;
	bottom: 0;
	left: 50%;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
			transform: translateX(-50%);
	-webkit-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
header #mddNav > ul > li:not(.type_btn):hover > a,
header #mddNav > ul > li:not(.type_btn).active > a {
	color: #55ADEA;
}

header #mddNav > ul > li:not(.type_btn):hover > a:before,
header #mddNav > ul > li:not(.type_btn).active > a:before {
	width: 100%;
}
header #mddNav > ul > li.type_btn {
	width: 80px;
	height: 80px;
	background: #FFF;
}
header #mddNav > ul > li.type_btn a {
	line-height: 115px;
	font-size: 1.2rem;
	font-weight: 700;
	position: relative;
}
header #mddNav > ul > li.type_btn a:before {
	font-family: 'tit';
	display: block;
	color: #FFF;
	line-height: normal;
	font-weight: 400;
	font-size: 2.2rem;
	position: absolute;
	top: 15px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
header #mddNav > ul > li.access {
	margin: 0 0 0 40px;
}
header #mddNav > ul > li.access a {
	letter-spacing: -1px;
	background: #3896D6;
}
header #mddNav > ul > li.access a:before {
	content: "\e952";
}
header #mddNav > ul > li.doc_req {
	margin: 0 0 0 -1px;
}
header #mddNav > ul > li.doc_req a {
	/*background: #55ADEA;*/
  background:-moz-linear-gradient(top, #01bc65, #fcff29); /* Firefox */
  background:-webkit-linear-gradient(top, #01bc65, #fcff29);/* safari Chrome */
  background:linear-gradient(to top, #01bc65, #fcff29); /* IE */
  background:linear-gradient(25deg, #01bc65, #fcff29);
}
header #mddNav > ul > li.doc_req a:before {
	content: "\e951";
}

.sp_menu_wrap {
	display: none;
}

header #mddNav {
	width: 100%;
}
header #mddNav > ul {
	text-align: right;
}
header #mddNav .mddWrap {
	width: 100%;
	display: none;
	overflow: hidden;
	text-align: center;
	line-height: normal;
	color: #ffffff;
	background: #55ADEA;
	position: absolute;
	top: 80px;
	left: 0;
	z-index: -1;
	-webkit-transition: all 0.1s ease-out;
	transition: all 0.1s ease-out;
}
header #mddNav .mddWrap .mddInner {
	width: 84%;
	margin: 0 auto;
	padding: 40px 0;
	text-align: left;
	-webkit-transition: all 0.1s ease-out;
	transition: all 0.1s ease-out;
}
header #mddNav .mddWrap a {color: #ffffff;}
header #mddNav .mddWrap nav ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
header #mddNav .mddWrap li {
	width: 22%;
	margin: 0 3% 2% 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
header #mddNav .mddWrap li a {
	width: 100%;
	padding: 15px 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
	border: 1px solid #FFF;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}
header #mddNav .mddWrap li a:before {
	content: '';
	width: 16px;
	height: 1px;
	display: block;
	background: #FFF;
	position: absolute;
	top: 50%;
	right: -8px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	z-index: 1;
}

/* PC HOVER */
@media only screen and (min-width: 768px) {
	header #mddNav .mddWrap li a:hover {
		background: rgba(0,0,0,0.2);
	}
}

@media only screen and (max-width: 1240px) {
	header #mddNav > ul > li {
		margin: 0 10px;
	}
	header #mddNav > ul > li a {
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 1180px) {
	header #mddNav .mddWrap .mddInner {
		width: 90%;
	}
}

@media only screen and (max-width: 1100px) {
	header nav > ul > li > a {
		font-size: 1.3rem;
	}
	header #mddNav > ul > li.access {
		margin: 0 0 0 30px;
	}
}

@media only screen and (max-width: 979px) {
	header {
		width: 980px;
	}
}

@media only screen and (max-width: 979px) {
	header {
		width: 100%;
		height: 56px;
		display: block;
		z-index: 21;
		background: rgba(0,0,0,0.8);
	}
	.menu_open header {
		position: fixed;
	}
	header .inner {
		height: 100%;
		display: block;
	}
	/* h1ロゴ画像の位置調整----------------------------------------------------------------------------- */
	header h1,
	header .logo {
		margin: 0 0 0 2px;
		display: inline-block;
	}
	header h1 img,
	header .logo img {
		width: 225px;
	}
	header #mddNav {
		display: none;
	}
}

/*-----------------------------------------
	sp menu btn
-----------------------------------------*/
@media only screen and (max-width: 979px) {
	.sp_menu_wrap {
		display: block;
		position: absolute;
		top: 0px;
		right: 10px;
	}
	/* メニュー追加 yang20221101 */
	.sp_menu_wrap .sp_menu_btn div {
		width: 48px;
    color: #fff;
    font-family: 'Teko', sans-serif;
    position: absolute;
    top: 40px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
    font-size: 1rem;
    line-height: 1;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
	}/* //メニュー追加 yang20221101 */
	.sp_menu_wrap .sp_menu_btn #btn_menu {
		width: 35px;
		height: 56px;
		display: block;
	}
	.sp_menu_wrap .sp_menu_btn #btn_menu span {
		width: 11px;
		height: 1.5px;
		display: inline-block;
		background-color: #FFFFFF;
		position: absolute;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;
	}
	.sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(1) {
		top: 20px;
		-webkit-transform: translateX(-50%) rotate(0);
		transform: translateX(-50%) rotate(0);
	}
	.sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(2) {
		top: 26px;
		-webkit-transform: translateX(-50%) scale(1);
		transform: translateX(-50%) scale(1);
	}
	.sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(3) {
		top: 32px;
		-webkit-transform: translateX(-50%) rotate(0);
		transform: translateX(-50%) rotate(0);
	}
	.sp_menu_wrap .sp_access_btn {
		/* width: 35px; */
		width: 46px;
		height: 56px;
		text-align: center;
		position: absolute;
		top: 0;
		/*right: 35px;*/
		right: 48px;
	}
	.sp_menu_wrap .sp_access_btn a {
		height: 100%;
		display: block;
		text-align: center;
		color: #FFF;
		position: relative;
		/* アクセス追加 yang20221101 */
		font-size: 1rem;
		font-family: 'Teko', sans-serif;
		padding: 38px 0 0 0;
	}
	.sp_menu_wrap .sp_access_btn a:before {
		content: "\e93b";
		font-family: 'tit';
		color: #FFF;
		font-size: 1.6rem;
		line-height: 1;
		position: absolute;
		top: 19px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
/*-----LINEアイコン追加----------------------------------------------------------------------20240216----------------------------*/
	.sp_menu_wrap .sp_line_btn {
		width: 46px;
		height: 56px;
		text-align: center;
		position: absolute;
		top: 0;
		right: 94px;
	}
	.sp_menu_wrap .sp_line_btn a {
		height: 100%;
		display: block;
		text-align: center;
		color: #FFF;
		position: relative;
		font-size: 1rem;
        /*font-family: 'Teko', sans-serif;*/
		padding: 38px 0 0 0;
	}
	.sp_menu_wrap .sp_line_btn a:before {
        content: '';
        display: inline-block;
        width: 20px;
        height: 20px;
        background-image: url(/files/sp_line_btn.svg);
        background-size: contain;
        vertical-align: middle;
        background-repeat: no-repeat;
		position: absolute;
		top: 17px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	.layer_bg {
		display: none;
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 21;
		background: rgba(255,255,255,0.8);
	}
}

@media only screen and (min-width: 980px) {
	.sp_menu_wrap,
	.layer_bg {
		display: none;
	}
}

/*-----------------------------------------
	sp menu
-----------------------------------------*/
@media only screen and (max-width: 979px) {
	#sp_menu {
		width: 75%;
		position: fixed;
		top: 0;
		right: -75%;
		z-index: 22;
		background: #55adea;
		background: -webkit-gradient(linear,  left top, left bottom,  from(#55adea),to(#1687c0));
		background: linear-gradient(to bottom,  #55adea 0%,#1687c0 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#55adea', endColorstr='#1687c0',GradientType=0 );
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	#sp_menu a {
		color: #FFF;
	}
	#sp_menu .sp_menu_header {
		height: 56px;
		position: relative;
	}
	#sp_menu .sp_menu_header .logo_mark {
		position: absolute;
		top: 15px;
		left: 5%;
	}
	#sp_menu .sp_menu_wrap .sp_menu_btn #btn_menu span {
		width: 15px;
	}
	#sp_menu .sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(1) {
		top: 26px;
		-webkit-transform: translateX(-50%) rotate(45deg);
		transform: translateX(-50%) rotate(45deg);
	}
	#sp_menu .sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(2) {
		display: none;
	}
	#sp_menu .sp_menu_wrap .sp_menu_btn #btn_menu span:nth-of-type(3) {
		top: 26px;
		-webkit-transform: translateX(-50%) rotate(-45deg);
		transform: translateX(-50%) rotate(-45deg);
	}
	#sp_menu .inner {
		height: 100vh;
		overflow-y: auto;
	}
	#sp_menu .inner::-webkit-scrollbar {
		width: 5px;
	}
	#sp_menu .inner::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	#sp_menu .inner::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
	#sp_menu .inner > ul {
		padding: 0 4% 26px;
	}
	#sp_menu .inner > ul > li {
		border-bottom: 1px solid rgba(255,255,255,0.25);
	}
	#sp_menu .inner > ul > li > a {
		display: block;
		padding: 14px 20px 14px 0;
		position: relative;
		font-weight: 700;
	}
	#sp_menu .inner > ul > li > a:before {
		content: "\e90b";
		font-family: 'tit';
		color: #FFF;
		font-size: 1.6rem;
		line-height: 1;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	#sp_menu .inner > ul > li.type_btn {
		display: none;
	}
	#sp_menu .inner > ul > li.target_list {
		margin: 20px 0 26px;
		border: none;
	}
	#sp_menu .inner > ul > li.target_list ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		border-top: 1px solid #FFF;
		border-left: 1px solid #FFF;
	}
	#sp_menu .inner > ul > li.target_list li {
		width: 50%;
	}
	#sp_menu .inner > ul > li.target_list li a {
		width: 100%;
		min-height: 42px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		font-weight: 700;
		font-size: 1.2rem;
		letter-spacing: 0;
		border-right: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
	}
	#sp_menu .inner > ul > .sp_oc a,
	#sp_menu .inner > ul > .sp_doc_req a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		position: relative;
		font-weight: 700;
		font-family: 'Lato', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'verdana', sans-serif;
	}
	#sp_menu .inner > ul > li.sp_oc {
		margin: 0 0 8px;
		background: url(/files/common/oc_banner_bg.png) no-repeat center center;
		background-size: 100% 100%;
		border: 1px solid #FFF;
	}
	#sp_menu .inner > ul > li.sp_oc a {
		color: #FFF;
	}
	#sp_menu .inner > ul > li.sp_oc a:before {
		content: none;
	}
	#sp_menu .inner > ul > li.sp_doc_req a {
		padding: 14px 0;
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		color: #55ADEA;
		background: #FFF;
		position: relative;
	}
	#sp_menu .inner > ul > li.sp_doc_req a:before {
		content: "\e93a";
		font-family: 'tit';
		margin: 0 5px 0 0;
		color: #55ADEA;
		font-size: 2rem;
		vertical-align: middle;
		position: static;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	#sp_menu .mddWrap {
		width: 73%;
		position: fixed;
		top: 56px;
		right: -73%;
		bottom: 0;
		z-index: 23;
		background: #E8E8E8;
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	#sp_menu .mddWrap ul {
		height: 70vh;
		padding: 0 4%;
		overflow-y: auto;
	}
	#sp_menu .mddWrap ul::-webkit-scrollbar {
		width: 5px;
	}
	#sp_menu .mddWrap ul::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	#sp_menu .mddWrap ul::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
	#sp_menu .mddWrap li {
		border-bottom: 1px solid #CCC;
	}
	#sp_menu .mddWrap a {
		display: block;
		padding: 13px 0;
		position: relative;
		color: #222;
		font-weight: 700;
	}
	#sp_menu .mddWrap .menu_back {
		padding: 13px 4%;
		color: #55ADEA;
	}
	#sp_menu .mddWrap .menu_back:before {
		content: "\e90b";
		margin: 0 5px 0 -5px;
		font-family: 'tit';
		font-size: 1.6rem;
		line-height: 1;
		display: inline-block;
		vertical-align: middle;
		-webkit-transform: rotate(180deg);
		        transform: rotate(180deg);
	}
	.menu_open #sp_menu {
		right: 0;
	}
	.menu_open #sp_menu .active .mddWrap {
		right: 0;
	}
}

@media only screen and (min-width: 980px) {
	#sp_menu {
		display: none;
	}
}

/*-----------------------------------------
	sp_fixed_nav
-----------------------------------------*/
.sp_fixed_nav {
	display: none;
}

@media only screen and (max-width: 767px) {
	.sp_fixed_nav {
		width: 100%;
		height: 48px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 20;
		background: #FFF;
	}
	.sp_fixed_nav li {
		width: 50%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.sp_fixed_nav li a {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		position: relative;
		font-weight: 700;
		font-family: 'Lato', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'verdana', sans-serif;
	}
	/*
	.sp_fixed_nav li.sp_oc {
		background: url(/files/common/oc_banner_bg.png) no-repeat center center;
		background-size: 100% 100%;
	}
	.sp_fixed_nav li.sp_oc a {
		color: #FFF;
	}
	.sp_fixed_nav li.sp_doc_req a {
		position: relative;
	}
	.sp_fixed_nav li.sp_doc_req a:before {
		content: "\e93a";
		font-family: 'tit';
		margin: 0 10px 0 0;
		color: #55ADEA;
		font-size: 2rem;
		vertical-align: middle;
	}*/
	/* floating banner yang20220316*/
	.sp_fixed_nav li.sp_oc {
		/* background: url(/files/floating_a.png) no-repeat center center; */
		background: url(/files/floating3_a.png) no-repeat center center;
		background-size: 100% 100%;
	}
	.sp_fixed_nav li.sp_oc a {
		color: #FFF;
	}
	.sp_fixed_nav li.sp_doc_req a {
		position: relative;
		/* background: url(/files/floating_b.png) no-repeat center center; */
		background: url(/files/floating3_b.png) no-repeat center center;
		background-size: 100% 100%;
	}
	.sp_fixed_nav li.sp_doc_req a:before {
		/*
		content: "\e93a";
		font-family: 'tit';
		margin: 0 10px 0 0;
		color: #55ADEA;
		font-size: 2rem;
		vertical-align: middle;
		*/
	}
}

/*-----------------------------------------
	news_area
-----------------------------------------*/
.news_area {
	margin: 0 0 40px;
}
.news_area figure img {
	width: 100%;
	display: block;
	border-radius: 5px;
}
.news_area a {
	color: #222;
	display: block;
}
.news_area .label {
	font-size: 1.3rem;
	font-weight: 700;
}
.news_area .date {
	font-family: 'Lato', sans-serif;
	font-size: 1.2rem;
	color: #888;
	position: absolute;
	top: 0;
	right: 0;
}
.news_area p {
	font-weight: 700;
}
.news_area .feature,
.news_area ul {
	border-radius: 10px;
	border: 1px solid #E6E6E6;
	background: #FFF;
	-webkit-box-shadow: 0 3px 6px rgba(0,0,0, 0.16);
	        box-shadow: 0 3px 6px rgba(0,0,0, 0.16);
}
.news_area .feature a {
	padding: 24px 16px;
}
.news_area .feature .news_info {
	margin: 20px 0 12px;
	padding: 0 100px 0 0;
	position: relative;
}
.news_area .feature p {
	font-size: 1.7rem;
}
.news_area .feature .tag_list {
	margin: 12px 0 0;
	font-size: 1.2rem;
	color: #9D9D9D;
}
.news_area .feature .tag_list span {
	margin: 0 16px 0 0;
}
.news_area li a {
	padding: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	position: relative;
}
.news_area li a:before {
	content: '';
	width: calc(100% - 32px);
	height: 1px;
	display: block;
	position: absolute;
	right: 50%;
	bottom: 0;
	-webkit-transform: translateX(50%);
	transform: translateX(50%);
	background: #D2D2D2;
}
.news_area li:last-of-type a:before {
	content: none;
}
.news_area li figure {
	width: 33%;
	margin: 0 3% 0 0;
}
.news_area li .txt_info {
	width: 64%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.news_area li .news_info {
	padding: 0 100px 0 0;
	position: relative;
}
.news_area li .tag_list {
	font-size: 1.2rem;
	color: #9D9D9D;
}
.news_area li .tag_list span {
	margin: 0 16px 0 0;
}

.news_area li p {
	font-size: 1.5rem;
}
.news_field .btn_area {
	text-align: right;
}

@media only screen and (max-width: 767px) {
	.news_field {
		padding: 0 0 60px;
		background: none;
	}
	.news_area .label {
		font-size: 1.1rem;
	}
	.news_area .date {
		font-size: 1rem;
	}
	.news_area p {
		margin: 5px 0 0;
		font-size: 1.3rem;
	}
	.news_area .feature,
	.news_area ul {
		border-radius: 0;
	}
	.news_area .feature a {
		padding: 4%;
	}
	.news_area .feature .txt_info {
		margin: 10px 0 5px;
	}
	.news_area .feature .date {
		top: 5px;
	}
	.news_area .feature p {
		font-size: 1.4rem;
	}
	.news_area .feature .tag_list span {
		margin: 0 5px 0 0;
	}
	.news_area ul {
		height: auto !important;
		overflow: visible;
	}
	.news_area li:nth-child(n+5) {
		display: none;
	}
	.news_area li a {
		padding: 20px 4%;
	}
	.news_area li a:before {
		width: 100%;
	}
	.news_area li:last-of-type a:before {
		content: none;
	}
	.news_area li figure {
		width: 34%;
	}
	.news_area li .txt_info {
		width: 63%;
	}
	.news_area li .tag_list {
		margin: 5px 0 0 0;
	}
	.news_area li .tag_list span {
		margin: 0 5px 0 0;
	}
	.news_area li .date {
		position: absolute;
		top: 4px;
		right: 0;
	}
	.news_area li p {
		font-size: 1.3rem;
	}
	.news_field .btn_area {
		text-align: center;
	}
	.news_field .btn_area a {
		width: 182px;
		padding: 13px;
		background: #FFF;
	}
}

/*-----------------------------------------
	course_field
-----------------------------------------*/
.course_field {
	padding: 100px 0 85px;
	background: #F7F7F7;
}
.course_field li {
	width: 24%;
	margin: 0 1% 1% 0;
	float: left;
	background: #FFF;
	-webkit-box-shadow: 0 3px 6px rgba(0,0,0, 0.16);
	        box-shadow: 0 3px 6px rgba(0,0,0, 0.16);
	border-radius: 5px;
}
.course_field li:nth-child(4n) {
	margin: 0 0 1% 0;
}
.course_field li:last-of-type {
	margin-right: auto;
}
.course_field li a {
	display: block;
}
.course_field li figure {
	background-image: url(/files/top/course_bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border-radius: 5px;
}
.course_field li figure img {
	width: 100%;
	display: block;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}
.course_field li figcaption {
	padding: 14px 0;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 700;
	background: #FFF;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}

@media only screen and (max-width: 1280px) {
	.course_field li figcaption span {
		font-size: 1.3rem;
	}
}
@media only screen and (max-width: 1100px) {
	.course_field li figcaption {
		font-size: 1.3rem;
	}
	.course_field li figcaption span {
		font-size: 1.1rem;
	}
}
@media only screen and (max-width: 767px) {
	.course_field {
		padding: 60px 4%;
	}
	.course_field li,
	.course_field li:nth-child(4n) {
		width: 49%;
		margin: 0 2% 2% 0;
	}
	.course_field li:nth-child(2n) {
		margin: 0 0 2% 0;
	}
	.course_field li figcaption {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.course_field li figcaption {
		min-height: 50px;
		padding: 0;
		font-size: 1.4rem;
	}
}

/*-----------------------------------------
	sns_field
-----------------------------------------*/
.sns_field {
	margin: 40px auto 0;
}
.sns_field .sns_cont {
	padding: 20px 0 0;
	text-align: center;
	background: #FFF;
}
.sns_field .sns_cont .inner {
	width: 100%;
	margin: 0 auto;
}
.sns_field .sns_cont h2 {
	margin: 0 0 15px;
	font-family: 'Nova Round', sans-serif;
	font-size: 2.4rem;
	line-height: 1.1;
	letter-spacing: 0.144em;
}
.sns_field .sns_cont p {
	color: #55ADEA;
	font-weight: 700;
}
.sns_field .sns_cont .embed_wrap {
	margin: 35px auto 0;
	padding: 0 32px 32px 32px;
	-webkit-box-shadow: 0 0 6px rgba(0,0,0, 0.16);
	        box-shadow: 0 0 6px rgba(0,0,0, 0.16);
	border-radius: 5px;
 overflow: scroll;
}
.sns_field .sns_cont.type_twitter .embed_wrap {
	padding: 0 32px;
}
.sns_field .sns_cont.type_instagram .btn_area{
	padding: 20px 0;
}
.sns_field .sns_cont.type_instagram .btn_follow{
	width: 250px;
	background: linear-gradient(to right,
        rgba(247, 207, 0, 0.7),
        rgba(246, 37, 2, 0.7) 45%,
        rgba(182, 47, 82, 0.7) 75%,
        rgba(113, 58, 166, 0.7));
		border-radius: 40px;
	margin: 0 auto;
	padding: 15px 40px;
	font-size: 1.8rem;
	color: #ffffff;
	line-height: 2rem;
	text-align: center;
	display: block;
}
.sns_field .sns_cont.type_instagram .btn_follow:hover{
	opacity: 0.75;
}
.sns_field .sns_cont.type_instagram .embed_wrap {
	width: 33%;
	height: 600px;
	border: 1px solid #E6E6E6;
	padding: 20px;
	margin: 0 10px;
	/* overflow: hidden; */
}
.sns_field .sns_cont .youtube_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.sns_field .sns_cont .youtube_list li {
	-ms-flex-preferred-size: 48%; 
	    flex-basis: 48%;
	margin: 32px 0 0;
}
.sns_field .sns_cont .youtube_list a {
	display: block;
	color: #000;
}
.sns_field .sns_cont .youtube_list img {
	width: 100%;
	display: block;
}
.sns_field .sns_cont .youtube_list .ttl {
	margin: 16px 0 0;
	font-size: 1.5rem;
	line-height: 1.5;
	text-align: left;
	font-weight: 700;
}
.sns_field .sns_cont .insta_slick{
	display: none;
	margin-bottom: 60px;
  }
  .sns_field .sns_cont .insta_slick.slick-initialized{
	display: block; /*slick-initializedが付与されたら表示*/
  }

.sns_field .sns_cont .insta_slick figure{
	max-height: 285px;
	overflow: hidden;
    margin-bottom: 32px;
}
.sns_field .sns_cont .insta_slick img{
    width: 100%;
}
.sns_field .sns_cont .insta_slick p{
	font-size: 1.3rem;
    text-align: left;
    margin-bottom: 32px;
    color: #000;
	white-space: pre-line;
}
.sns_field .sns_cont .insta_slick .count_list{
	display: flex;
	flex-wrap: nowrap;
	column-gap: 10px;
}
.sns_field .sns_cont .insta_slick .count_list li{
    font-size: 1.6rem;
    text-align: left;
}
.sns_field .sns_cont .insta_slick .count_list li.like_num{
	color: #F43B78;
}
.sns_field .sns_cont .insta_slick .count_list li.like_num::before{
	content: "";
	width: 16px;
	height: 16px;
	background: url("/files/insta_like.svg") no-repeat left top;
	display: block;
	margin-top: 5px;
	margin-right: 5px;
	float: left;
}
.sns_field .sns_cont .insta_slick .count_list li.comments_num::before{
	content: "";
	width: 16px;
	height: 16px;
	background: url("/files/insta_comments.svg") no-repeat left top;
	display: block;
	margin-top: 5px;
	margin-right: 5px;
	float: left;
}	
.sns_field .sns_cont .insta_slick p.timestamp{
	font-size: 1rem;
}
/* sns_title */
.sns-tit-chi {
	text-align: center;
	margin-top: 20px;
}
@media only screen and (max-width: 767px) {
	.sns_field {
		padding: 0;
	}
	.sns_field .sns_cont.type_youtube,
    .sns_field .sns_cont.type_instagram {
		padding: 60px 0 0;
	}
	.sns_field .sns_cont .embed_wrap {
		margin: 50px auto 0;
		border-radius: 0;
	}
	.sns_field .sns_cont.type_twitter .embed_wrap {
		height: 380px;
		margin: 50px auto 10px;
		padding: 16px 32px 32px;

 overflow: scroll;
	}
	.sns_field .sns_cont.type_youtube .embed_wrap {
		margin: 30px auto 0;
		padding: 0 4%;
	}
	.sns_field .sns_cont.type_instagram .embed_wrap {
		width: 100%;
		height: 300px;
		padding: 10px;
	}
	.sns_field .sns_cont .youtube_list {
		padding: 8px 0;
		display: block;
	}
	.sns_field .sns_cont .youtube_list li {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		margin: 24px 0;
	}
	.sns_field .sns_cont .youtube_list a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.sns_field .sns_cont .youtube_list figure {
		width: 37%;
		margin: 0 3% 0 0;
	}
	.sns_field .sns_cont .youtube_list .ttl {
		width: 60%;
		margin: 0;
		font-size: 1.3rem;
		line-height: 1.8;
	}

	.sns_field .sns_cont .insta_slick figure{
		max-height: 180px;
		margin-bottom: 10px;
	}
}

/*-----------------------------------------
	sns_icon
-----------------------------------------*/
.sns_icon {
	/* margin: 60px auto 80px; */
	margin: 20px auto 80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	background: #FFF;
}
.sns_icon li {
	margin: 0 15px;
}
.sns_icon li a {
	display: block;
	text-align: center;
	color: #000;
}
.sns_icon img {
	width: 52px;
	margin: 0 auto;
	display: block;
}

@media only screen and (max-width: 767px) {
	.sns_icon {
		/* margin: 60px 0; */
		margin: 20px 0 60px 0;
	}
	.sns_icon li {
		margin: 0 8px;
	}
	.sns_icon img {
		width: 40px;
	}
}

/*-----------------------------------------
	oc_field
-----------------------------------------*/
.oc_field {
	padding: 60px 0 107px;
	position: relative;
	z-index: 0;
	background: url(/files/common/ft_deco.png) no-repeat right bottom;
}
.oc_field:before {
	content: '';
	width: calc(100% - 160px);
	height: 412px;
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: -1;
	background: url(/files/common/oc_bg.jpg) no-repeat top center;
	background-size: cover;
}
.oc_field:after {
	content: '';
	width: 92px;
	height: 80px;
	display: block;
	position: absolute;
	bottom: 150px;
	right: 80px;
	z-index: -1;
	background: url(/files/common/oc_tri.png) no-repeat top center;
}
.oc_area {
	width: 500px;
	margin: 0 auto;
	/* padding: 50px 60px 28px; */
	padding: 10px 60px 28px;
	text-align: center;
	background: #FFF;
	-webkit-box-shadow: 0 0 6px rgba(0,0,0, 0.16);
	        box-shadow: 0 0 6px rgba(0,0,0, 0.16);
	border-radius: 10px;
}
.oc_area .sub_ttl {
	display: block;
	/* margin: 28px 0 0; */
	margin: 28px 0 28px;
	font-weight: 700;
}
.oc_area .choice {
	margin: 45px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
}
.oc_area .choice .how {
	font-size: 1.8rem;
	color: #55ADEA;
	font-weight: 700;
	position: relative;
	z-index: 1;
}
.oc_area .choice .how:before {
	content: '';
	width: 80px;
	height: 80px;
	display: block;
	background: #E5F3FC;
	border-radius: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.oc_area .choice .how span {
	display: block;
	font-size: 1.2rem;
	color: #979FA5;
	font-weight: 400;
	font-family: 'Nova Round', sans-serif;
}
.oc_area .choice .or {
	margin: 0 20px;
	font-size: 1.6rem;
	color: #55ADEA;
	font-weight: 700;
	font-family: 'Lato', sans-serif;
	letter-spacing: 0;
}
.oc_area p {
	margin: 0 0 25px;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0;
}
.oc_area p span.maker{
    display: inline;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, rgba(255, 255, 89, .5)));
	background: linear-gradient(transparent 60%, rgba(255, 255, 89, .5) 0%);
}
.oc_area .btn {
	width: 346px;
	padding: 14px 0;
    color: #ffffff;
    border: #ffd859 solid 1px;
	background: #ffd859;
}

@media only screen and (max-width: 1260px) {
	.oc_field:before {
		width: calc(100% - 80px);
	}
	.oc_field:after {
		right: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.oc_field {
		padding: 45px 0;
		background: none;
	}
	.oc_field:before {
		content: '';
		width: 100%;
		height: 100%;
	}
	.oc_field:after {
		content: none;
	}
	.oc_area {
		width: 100%;
		margin: 0 auto;
		/* padding: 40px 5%; */
		padding: 20px 5% 40px;
	}
	.oc_area  h2 img {
		width: 280px;
		margin: 0 auto;
		display: block;
	}
	.oc_area .sub_ttl {
		margin: 24px 0 0;
		letter-spacing: 0;
	}
    .oc_area .choice{
        margin: 20px 0 45px;
    }
	.oc_area .choice .how span {
		white-space: nowrap;
		letter-spacing: 0;
	}
	.oc_area .btn {
		width: 100%;
	}
}

/*-----------------------------------------
	footer
-----------------------------------------*/
footer {
	margin: 0 auto;
	background: #F2F2F2;
}

/* target */
.target {
	background: #55ADEA;
}
.target ul {
	padding: 30px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.target li {
	margin: 0 19px;
}
.target a {
	font-weight: 700;
	color: #FFF;
}

footer .inner {
	margin: 0 auto;
	padding: 45px 80px 30px;
}

/* sitemap */
footer .ft_sitemap {
	margin: 0 0 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
footer .ft_sitemap .row {
	width: 20%;
	margin: 0 2% 0 0;
	border-left: 1px solid #B3B3B3;
}
footer .ft_sitemap .row:first-of-type {
	border-left: none;
}
footer .ft_sitemap .row:last-of-type {
	margin: 0;
}
footer .ft_sitemap dt {
	margin: 0 0 15px;
	padding: 0 0 0 20px;
	font-size: 1.6rem;
	font-weight: 700;
	position: relative;
}
footer .ft_sitemap dl a {
	display: block;
	color: #222;
	position: relative;
}
footer .ft_sitemap ul {
	padding: 0 0 0 20px;
}
footer .ft_sitemap li {
	margin: 0 0 8px;
}
footer .ft_sitemap li a {
	letter-spacing: 0;
	font-size: 1.4rem;
	font-weight: 500;
	color: #222;
}
footer .ft_sitemap .other li {
	margin: 0 0 24px;
}
footer .ft_sitemap .other li a {
	font-size: 1.6rem;
	font-weight: 700;
}

/* btm_field */
footer .btm_field {
	color: #FFF;
	background: #3D3D3D;
}
footer .btm_field .info_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
footer .btm_field .about img {
	margin: 0 0 15px;
	display: block;
}
footer .btm_field .about li {
	display: inline-block;
}
footer .btm_field .about .address {
	padding: 0 0 0 25px;
	position: relative;
	background: url(/files/common/icon_zip.svg) no-repeat center left;
}
footer .btm_field .about .freedial {
	margin: 0 0 0 20px;
	padding: 0 0 0 25px;
	position: relative;
	background: url(/files/common/icon_freecall.svg) no-repeat center left;
}
footer .btm_field .certification {
	padding: 8px;
	font-size: 1.3rem;
	border: 1px solid #FFF;
}
footer .btm_field .certification span {
	font-size: 1.9rem;
	font-weight: 700;
}

/* copy_area */
.copy_area {
	margin: 25px 0 0;
	color: #CCC;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.copy_area li {
	margin: 0 30px 0 0;
	display: inline-block;
}
.copy_area a {
	padding: 0 20px 0 0;
	position: relative;
	color: #CCC;
}
.copy_area a:before {
	content: "\e94e";
	font-family: 'tit';
	display: block;
	font-size: 1.4rem;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}


@media only screen and (max-width: 1260px) {
	footer .inner {
		width: calc(100% - 80px);
	}
	footer .inner {
		padding: 45px 0 30px;
	}
}

@media only screen and (max-width: 1100px) {
	.target li {
		margin: 0px 12px;
	}
	.copy_area li {
		margin: 0 20px 0 0;
	}
	.copyright {
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 767px) {
	footer {
		background: #FAFAFA;
	}
	.target ul {
		padding: 0;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
	.target li {
		width: 50%;
		margin: 0;
	}
	.target li a {
		width: 100%;
		min-height: 64px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		border-right: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
	}
	.target li li:nth-child(2n) a {
		border-right: none;
	}

	footer .inner {
		width: 100%;
		padding: 0;
	}
	footer .ft_sitemap {
		margin: 0;
		display: block;
	}
	footer .ft_sitemap .row,
	footer .ft_sitemap .row:last-of-type {
		width: 100%;
		height: auto !important;
		margin: 0;
		border: none;
		border-bottom: 1px solid #B9B9B9;
	}
	footer .ft_sitemap dl {
		margin: 0;
	}
	footer .ft_sitemap dt {
		margin: 0;
		padding: 0;
		font-size: 1.5rem;
		border-bottom: 1px solid rgba(255,255,255,.2);
	}
	footer .ft_sitemap dt:after {
		content: none;
	}
	footer .ft_sitemap dt a {
		padding: 29px 55px 29px 5%;
		display: block;
		position: relative;
	}
	footer .ft_sitemap dt > span {
		width: 55px;
		height: 100%;
		display: block;
		float: right;
		position: absolute;
		top: 0;
		right: 0;
		cursor: pointer;
		text-align: center;
	}
	footer .ft_sitemap dt > span:before {
		content: "\e94e";
		font-family: 'tit';
		color: #55ADEA;
		font-size: 1.5rem;
		font-weight: 400;
		position: absolute;
		top: 50%;
		right: 17px;
		-webkit-transform: translateY(-50%) rotate(90deg);
		transform: translateY(-50%) rotate(90deg);
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	footer .ft_sitemap dt.switch > span:before {
		-webkit-transform: translateY(-50%) rotate(90deg) rotateY(180deg);
		transform: translateY(-50%) rotate(90deg) rotateY(180deg);
	}
	footer .ft_sitemap dd {
		display: none;
		border-left: 0;
	}
	footer .ft_sitemap dd ul {
		padding: 0 0 15px 5%;
	}
	footer .ft_sitemap li {
		margin: 0px 0 18px;
	}
	footer .ft_sitemap .row:last-of-type {
		border: none;
	}
	footer .ft_sitemap .other {
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	footer .ft_sitemap .other li {
		width: 50%;
		margin: 0;
		text-align: center;
	}
	footer .ft_sitemap .other li a {
		width: 100%;
		min-height: 80px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-size: 1.5rem;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		border-right: 1px solid #B9B9B9;
		border-bottom: 1px solid #B9B9B9;
	}
	footer .ft_sitemap .other li:nth-child(2n) a {
		border-right: none;
	}
	footer .btm_field .info_area {
		width: 92%;
		margin: 0 auto;
		padding: 50px 0 0;
		display: block;
	}
	footer .btm_field .info_area .about {
		margin: 0 auto;
	}
	footer .btm_field .info_area .about li {
		display: block;
	}
	footer .btm_field .about .freedial {
		margin: 5px 0 0 0;
	}
	footer .btm_field .about .address a,
	footer .btm_field .about .freedial a {
		color: #FFF;
	}
	footer .btm_field .certification {
		margin: 30px 0 0;
	}
	.copy_area {
		width: 92%;
		margin: 40px auto 0;
		display: block;
	}
	.copy_area li {
		margin: 0 0 20px;
		display: block;
	}
	.copyright {
		margin: 60px 0 0 0;
		padding: 0 0 30px;
		display: block;
		font-size: 1.1rem;
		letter-spacing: -0.3px;
		text-align: center;
	}
}

@media only screen and (min-width: 768px) {
	footer .ft_sitemap dd {
		display: block !important;
	}
}

/*-----------------------------------------
	fixed top
-----------------------------------------*/
#fixed_top {
	vertical-align: middle;
	text-align: center;
	position: fixed;
	right: -12px;
	bottom: 240px;
	z-index: 9;
	-webkit-transform: rotate(90deg);
	        transform: rotate(90deg);
}
#fixed_top a {
	padding: 0 0 0 30px;
	display: block;
	text-align: center;
	color: #55ADEA;
	font-size: 1.5rem;
	line-height: 1;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
}
#fixed_top a:after {
	content: "\e904";
	line-height: 1;
	font-family: 'tit';
	font-size: 2rem;
	font-weight: 400;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%) rotate(-90deg);
	transform: translateY(-50%) rotate(-90deg);
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

/* PC Hover */
@media only screen and (min-width: 768px) {
	body:not(.tab_view) #fixed_top a:hover:after {
	left: -10px;
	}
}

@media only screen and (max-width: 767px) {
	/*
	#fixed_top {
		right: -30px;
		bottom: 110px;
	}
	#fixed_top a {
		padding: 0 0 0 25px;
		font-size: 1.3rem;
	}
	#fixed_top a:after {
		font-size: 1.6rem;
	}
	*/

  /* pagetop 追加 yang20221108 */
	#fixed_top {
		right: -30px;
		bottom: 110px;
		width: 70px;
		height: 50px;
		right: 6px;
		bottom: 15vw;
		z-index: 15;
		background: rgba(85,173,234,0.7);
		border-radius: 8px;
		transform: rotate(0deg);
	}
	#fixed_top a {
		font-size: 1rem;
		padding: 30px 0 0;
		display: block;
		color: #FFF;
		font-family: 'Teko', sans-serif;
		font-weight: 400;
	}
	#fixed_top a:after {
		top: 10px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}
}

/*-----------------------------------------
	fixed_oc
-----------------------------------------*/
#fixed_oc {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 9;
}
#fixed_oc a {
	display: block;
}
#fixed_oc img {
	display: block;
}

@media only screen and (max-width: 767px) {
	#fixed_oc {
		display: none !important;
	}
}

/*-----------------------------------------
	Hover
-----------------------------------------*/
.news_area a,
header #mddNav > ul > li.type_btn a,
.course_field li a,
.sns_field .sns_cont .youtube_list a,
.sns_icon li a,
#fixed_top a,
#fixed_oc a,
footer a {
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

@media only screen and (min-width: 768px) {
	body:not(.tab_view) header #mddNav > ul > li.type_btn a:hover,
	body:not(.tab_view) .course_field li a:hover,
	body:not(.tab_view) .sns_field .sns_cont .youtube_list a:hover,
	body:not(.tab_view) .sns_icon li a:hover,
	body:not(.tab_view) #fixed_top a:hover,
	body:not(.tab_view) #fixed_oc a:hover,
	body:not(.tab_view) footer a:hover {
		opacity: 0.7;
	}
	body:not(.tab_view) .news_area a:hover {
		opacity: 1 !important;
		background: #F0F9FF;
	}
}

/*-----------------------------------------
    twitter-timeline style
-----------------------------------------*/
.twitter-timeline {
    color: #55ADEA;
    padding: 10px 0;
    display: inline-block;
}
.twitter-timeline:hover {
    text-decoration: underline;
}
.refuge_tw{
    width: calc(100% - 20px);
    background-color: #1DA1F2;
    display: block;
    border-radius: 10px;
    display: flex;
    padding: 0px 20px;
    align-items: center;
    column-gap: 10px;
    color: #ffffff;
    font-size: 2.1rem;
    margin: 35px 10px 0;
    position: relative;
}
.refuge_tw::after{
    background-color: #ffffff;
    font-size: 1.8rem;
    font-weight: 700;
    color: #1DA1F2;
    content: "Follow";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    /* border: 10px solid transparent;
    border-left: 17px solid #ffffff; */
    border-radius: 3px;
    padding: 3px 5px;
}
.refuge_tw:hover{
    cursor: pointer;
}
.refuge_tw img{
    width: 60px;
}
/*-----------------------------------------
	ClearFix
-----------------------------------------*/
.clear:before,
.sns_field:before,
.clear:after,
.sns_field:after {
	content: '';
	display: table;
}
.clear:after,
.sns_field:after {
	clear: both;
}
.clear,
.sns_field {
	*zoom: 1;
}
