@charset "utf-8";


/* --------------------------------------------------
	Resetting default margin and padding
-------------------------------------------------- */

/* !HTML5 elements
---------------------------------------------------------- */
header, footer, nav, section, aside, article
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family: "Noto Sans SC", sans-serif;
	color: #333;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	-webkit-text-size-adjust: none;
	text-align: justify;
	text-justify: inter-ideograph;
}
@media (max-width: 767px) {
body {
	font-size: 14px;
}
}

body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td,input,a,textarea,select,span,nav,section,header
{
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
input,
textarea {
	margin: 0;
	font-size: 100%;
	appearance: none;
	-webkit-appearance: none;
	border: none;
	outline: none;
}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ vertical-align: top; max-width: 100%;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: 500;}
q:after, q:before
{ content:'';}
a, input
{ /* outline: none; */ }
abbr, acronym
{ border: 0;}




/* !Clearfix
---------------------------------------------------------- */
.clearfix {
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* !Layout
---------------------------------------------------------- */
html { overflow-y: scroll;}
body { }
@media print {
	html,
	html body { *zoom: 0.65;}
}



/* link
------------------------------------------------ */
a {
	color: #333;
	text-decoration:none;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
}

a:hover {
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
}


.op,
.op a,
.op img,
.op input {
	-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	-webkit-backface-visibility: hidden;
	-webkit-transform-style: preserve-3d;
}
.op:hover,
.op a:hover,
.op:hover img,
.op:hover input {
	opacity: .5;
	-webkit-opacity: .5;
	-moz-opacity: .5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
	-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	-webkit-backface-visibility: hidden;
	-webkit-transform-style: preserve-3d;
}



/* !fs
------------------------------------------------ */
.visible-pc {
	display: block !important;
}
.visible-tab {
	display: none !important;
}
.visible-ts {
	display: none !important;
}
.visible-pc-only {
	display: block !important;
}


@media (max-width: 1024px) {
.visible-tab {
	display: block !important;
}
.visible-pc-only {
	display: none!important;
}
}
@media (max-width: 767px) {
.visible-pc {
	display: none !important;
}
.visible-ts {
	display: block !important;
}
}


/* !fonts
------------------------------------------------ */
.fwb {
	font-weight: 700;
}
.fwm {
	font-weight: 500;
}

.vat {
	vertical-align: top !important;
}
.vam {
	vertical-align: middle !important;
}
.tal {
	text-align: left !important;
}
.tac {
	text-align: center !important;
}
.tar {
	text-align: right !important;
}


/* !ff
------------------------------------------------ */




/* !fc
------------------------------------------------ */




/* !bg
------------------------------------------------ */



/* html
----------------------------------------------- */
html.html-lock {
	overflow: hidden;
	touch-action: none;
}



/* wrapper
----------------------------------------------- */
#wrapper {
	overflow: hidden;
}

.inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	z-index: 1;
}

article {
	background: #f2f2f2;
	padding: 104px 0 0;
}
.top article {
	padding: 0;
}
@media (max-width: 1024px) {
article {
	padding: 70px 0 0;
}
}



/* header
----------------------------------------------- */
#header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background: rgba(255,255,255,1);
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
	z-index: 99;
}
#header .header_logo {
	width: 303px;
	z-index: 9;
}
#header .header_logo a {
	display: block;
}

#header .header_in {
	height: 104px;
	max-width: 1240px;
	padding: 0 20px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#header .header_mess {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
}
#header .header_lang {
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
	font-size: 14px;
	line-height: 1.2;
	font-weight: 500;
}
#header .header_lang a {
	display: block;
	color: #e60012;
}
#header .header_lang li+li {
	border-left: 1px #e60012 solid;
	padding: 0 0 0 15px;
	margin: 0 0 0 15px;
}
#header .header_navi {
	display: flex;
	align-items: stretch;
	gap: 45px;
}
#header .header_navi .navi_item {
	letter-spacing: 0.05em;
	font-size: 14px;
	font-weight: 500;
	color: #333;
	cursor: pointer;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
	position: relative;
}
#header .header_navi .toggle-trigger.on,
#header .header_navi .toggle-trigger:hover {
	opacity: 0.5;
}
#header .header_navi > li > a:hover {
	opacity: 0.5;
}

.top #header {
	background: rgba(255,255,255,0);
}
.top #header .header_navi .navi_item {
	color: #fff;
}
.top.show #header {
	background: rgba(255,255,255,1);
}
.top.show #header .header_navi .navi_item {
	color: #333;
}


.navbar-toggle {
	display: none;
}
.navbar-collapse {
	display: none;
}

@media (max-width: 1024px) {
.top #header {
	background: rgba(255,255,255,1);
}
#header .header_logo {
	width: 184px;
}

#header .header_mess {
	display: none;
}
#header .header_in {
	height: 70px;
	padding: 0 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.navbar-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 99;
}
.navbar-toggle .toggle_menu {
	width: 25px;
	height: 19px;
	position: relative;
}
.navbar-toggle .toggle_menu span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 0;
	background-color: #333;
	width: 100%;
	height: 1px;
}
.navbar-toggle.on .toggle_menu span {
	background-color: #000;
}
.navbar-toggle .toggle_menu span:nth-of-type(1) {
	top:0;
}
.navbar-toggle .toggle_menu span:nth-of-type(2) {
	top:9px;
}
.navbar-toggle .toggle_menu span:nth-of-type(3) {
	top:18px;
}
.navbar-toggle.on .toggle_menu span:nth-of-type(1) {
	transform: translateY(9px) rotate(45deg);
}
.navbar-toggle.on .toggle_menu span:nth-of-type(2) {
	opacity: 0;
}
.navbar-toggle.on .toggle_menu span:nth-of-type(3) {
	transform: translateY(-9px) rotate(-45deg);
}

.navbar-collapse {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	background: #fff;
	height: calc(100vh - 70px);
	width: 100vw;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 80;
}
.navbar-collapse .navbar_inner {
	padding: 10px 20px 25px;
	height: 100%;
	overflow-y: scroll;
}
.navbar-collapse .navbar_inner {
	-ms-overflow-style: none;
	overflow: -moz-scrollbars-none;
}
.navbar-collapse .navbar_inner::-webkit-scrollbar{
	display: none;
}
.navbar-collapse .navbar_inner {
	scrollbar-width: none;
}
.navbar-collapse .navbar_cont {
	max-width: 670px;
	margin: 0 auto;
}
#header .header_lang {
	font-size: 16px;
	margin: 0 0 20px;
}
#header .header_lang li+li {
	padding: 0 0 0 5px;
	margin: 0 0 0 5px;
}
.navbar-collapse .navbar_list {
}
.navbar-collapse .navbar_list > li {
	border-top: 2px #d3d3d3 dotted;
}
.navbar-collapse .navbar_list > li > a,
.navbar-collapse .navbar_list .navbar_toggle {
	display: block;
	padding: 15px 30px 15px 10px;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.2;
	font-weight: 500;
	position: relative;
}
.navbar-collapse .navbar_list .navbar_toggle:before,
.navbar-collapse .navbar_list .navbar_toggle:after {
	position: absolute;
	content: "";
	background: #333;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
	z-index: 0;
}
.navbar-collapse .navbar_list .navbar_toggle:before {
	width: 16px;
	height: 2px;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
.navbar-collapse .navbar_list .navbar_toggle:after {
	width: 2px;
	height: 16px;
	right: 17px;
	top: 50%;
	transform: translateY(-50%);
}
.navbar-collapse .navbar_list .navbar_toggle.on:after {
	transform: translateY(-50%) rotate(90deg);
}
.navbar-collapse .navbar_list .navbar_hidden {
	display: none;
	padding: 0 20px 15px;
}
.navbar-collapse .navbar_link {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px 0;
}
.navbar-collapse .navbar_link li a {
	display: block;
	font-size: 16px;
	color: #666;
	position: relative;
}
}



/* header toggle
----------------------------------------------- */
#header .header_drop {
	display: none;
	position: absolute;
	background: rgba(28,24,24,0.8);
	left: 0;
	top: 100%;
	width: 100%;
	height: calc(100vh - 100px);
	padding: 40px 20px;
	z-index: 9;
}
#header .header_drop .drop_box {
	max-width: 1200px;
	margin: 0 auto;
	background: #fff;
	padding: 40px 20px 60px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
#header .header_drop .drop_inner {
	max-width: 1100px;
	margin: 0 auto;
}
#header .header_drop .drop_hd {
	display: flex;
	align-items: center;
	gap: 25px;
}
#header .header_drop .drop_hd .hd_jps {
	font-size: 36px;
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: 0.02em;
}
#header .header_drop .drop_link {
	margin: 20px 0 0;
	gap: 15px 25px;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
}
#header .header_drop .drop_link li {
	width: calc((100% - 75px)/4);
	display: flex;
	align-items: center;
	border-bottom: 1px #b0b3bf solid;
}
#header .header_drop .drop_link li a {
	width: 100%;
	display: block;
	font-size: 14px;
	font-weight: 500;
	padding: 15px 10px;
	position: relative;
}
#header .header_drop .drop_link li a:hover {
	color: #e61324;
}

@media (max-width: 1024px) {
#header .header_drop {
	display: none !important;
}
}








/* anchor
----------------------------------------------- */
.anchor {
	position: absolute;
	left: 0;
	top: 0;
	padding-top: 120px;
	margin-top: -120px;
	z-index: 0;
}
@media (max-width: 1024px) {
.anchor {
	padding-top: 100px;
	margin-top: -100px;
}
}



/* footer
----------------------------------------------- */
#footer {
	background: #ececec;
	padding: 55px 20px 20px;
}
#footer .footer_box {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
	gap: 0 min(70px,5.83vw);
}
#footer .footer_mess {
	
}
#footer .footer_logo {
	flex-shrink: 0;
	font-size: 0;
	margin: 0 0 35px;
}
#footer .footer_logo a {
	display: block;
}
#footer .footer_logo a:hover {
	opacity: 0.5;
}
#footer .footer_addr {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
#footer .footer_addr .addr_cont {
	font-size: 14px;
	line-height: 1.43;
}
#footer .footer_navi {
	display: flex;
	align-items: stretch;
	gap: 0 min(70px,5.83vw);
	flex-shrink: 0;
}
#footer .footer_navi .navi_cont {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
#footer .footer_navi .navi_inner {
}
#footer .footer_navi .navi_tit,
#footer .footer_navi .navi_tit_link a {
	display: block;
	font-size: 14px;
	letter-spacing: 0.05em;
	font-weight: 500;
}
#footer .footer_navi .navi_tit_link a:hover {
	opacity: 0.5;
}
#footer .footer_navi .navi_tit_sp {
	display: none;
}
#footer .footer_navi .navi_block {
	padding: 15px 0 0;
}
#footer .footer_navi .navi_link {
	padding: 0 0 0 10px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 15px;
}
#footer .footer_navi .navi_link li a {
	display: block;
	font-size: 12px;
	position: relative;
}
#footer .footer_navi .navi_link li a:before {
	position: absolute;
	content: "";
	background: #333;
	width: 0;
	height: 1px;
	left: 0;
	bottom: 0;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
	z-index: 0;
}
#footer .footer_navi .navi_link li a:hover:before {
	width: 100%;
}
#footer .copyright {
	font-size: 12px;
	text-align: center;
	margin: 60px 0 0;
}
@media (max-width: 1024px) {
#footer .footer_box {
	flex-direction: column;
	align-items: center;
	gap: 50px;
}
}
@media (max-width: 767px) {
#footer .footer_box {
	padding: 0;
	gap: 30px;
}
#footer .footer_inner {
	padding: 60px 20px;
}
#footer .footer_logo a {
	width: 200px;
}
#footer .footer_addr {
	gap: 10px;
}
#footer .footer_addr .addr_cont {
	font-size: 12px;
}

#footer .footer_navi {
	width: 100%;
	flex-direction: column;
	gap: 0;
}
#footer .footer_navi .navi_cont {
	gap: 0;
}
#footer .footer_navi .navi_inner {
	width: 100%;
	border-bottom: 2px #333 solid;
}
#footer .footer_navi .navi_tit,
#footer .footer_navi .navi_tit_link a {
	padding: 15px 25px 15px 10px;
	font-size: 14px;
	font-weight: 500;
}
#footer .footer_navi .navi_tit {
	display: none;
}
#footer .footer_navi .navi_tit_sp {
	display: block;
	padding: 15px 25px 15px 10px;
	font-size: 14px;
	font-weight: 500;
	position: relative;
}
#footer .footer_navi .navi_tit_sp:before,
#footer .footer_navi .navi_tit_sp:after{
	position: absolute;
	content: "";
	background: #000;
	z-index: 0;
}
#footer .footer_navi .navi_tit_sp:before {
	width: 16px;
	height: 2px;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
#footer .footer_navi .navi_tit_sp:after {
	width: 2px;
	height: 16px;
	right: 17px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
}
#footer .footer_navi .navi_tit_sp.on:after {
	transform:  translateY(-50%) rotate(90deg);
}
#footer .footer_navi .navi_block {
	display: none;
	padding: 10px 5px 30px;
}
#footer .footer_navi .navi_link {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 20px 0;
}
#footer .footer_navi .navi_link li {
	width: 50%;
	padding: 0 0 0 14px;
}
#footer .footer_navi .navi_link li a {
	font-size: 12px;
}
#footer .footer_navi .navi_link li a:before {
	display: none;
}
}
@media (min-width: 768px) {
#footer .footer_navi .navi_block {
	display: block !important;
}
}



/* H
----------------------------------------------- */
.section_hdl {
	margin: 0 0 20px;
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
@media (max-width: 767px) {
.section_hdl {
	font-size: 24px;
}
}

.com_img {
	text-align: center;
}
.com_txt+.com_img {
	margin: 30px 0 0;
}

.section_hdl+.com_txt {
	margin: 0 0 50px;
}

.section_hdm {
	font-size: 30px;
	color: #07b4bf;
	font-weight: 700;
	line-height: 1.2;
	padding: 0 0 0 10px;
	border-left: 5px #07b4bf solid;
	margin: 0 0 30px;
}
@media (max-width: 767px) {
.section_hdm {
	font-size: 22px;
	border-left: 3px #07b4bf solid;
	margin: 0 0 20px;
}
}

.section_hds {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 20px;
}
@media (max-width: 767px) {
.section_hds {
	font-size: 18px;
}
}

.com_col {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
	margin: 25px 0 0;
}
.com_col img {
	width: 100%;
}
.com_col.com_col_one li {
	width: 100%;
}
.com_col.com_col_two li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_three li {
	width: calc((100% - 40px)/3);
}
.com_col.com_col_four li {
	width: calc((100% - 60px)/4);
}
.com_col.com_col_five li {
	width: calc((100% - 80px)/5);
}


@media (max-width: 767px) {
.com_col li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_two li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_three li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_four li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_five li {
	width: calc((100% - 20px)/2);
}
.com_col.com_col_full li {
	width: 100%;
}
}

.com_scroll {
	
}
.com_table {
	border-radius: 16px;
	border: 1px solid #FFFFFF;
	overflow: hidden;
	background: #E3E6EB;
}
.com_table .table_item {
	display: flex;
	align-items: center;
	border-bottom: 1px solid #D3D3D5;
}
.com_table .table_item .item_th {
	color: #424345;
	width: 20%;
	text-align: center;
	padding: 10px 20px;
}
.com_table .table_item .item_td {
	background: linear-gradient(90deg, #fff 20%, #ECF0F3 100%);
	color: #424345;
	width: 20%;
	text-align: center;
	padding: 10px 20px;
}
@media (max-width: 767px) {
.com_scroll {
	overflow-x:scroll;
	padding:0 0 15px;
}
.com_scroll::-webkit-scrollbar{
	width: 100%;
	height: 6px;
	background: #ebe7e7;
	border-radius: 2px;
	border:1px #666 solid;
}
.com_scroll::-webkit-scrollbar-thumb{
	background: #666;
	border-radius: 2px;
}
.com_table {
	width: 900px;
}
}

.com_flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 50px;
}
.com_flex .flex_cont {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.com_flex .flex_img {
	flex-shrink: 0;
}
@media (max-width: 767px) {
.com_flex {
	flex-direction: column;
	gap: 30px;
}
.com_flex .flex_img {
	align-self: center;
}
}


.com_list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 30px;
}
@media (max-width: 767px) {
	
}


/* breadcrumb
----------------------------------------------- */
.breadcrumb {
	padding: 25px 20px;
	max-width: 1240px;
	margin: 0 auto;
	text-align: right;
	font-size: 12px;
	color: #999;
}
.breadcrumb a {
	color: #999;
}
.breadcrumb a:hover {
	opacity: 0.5;
}



/* common
----------------------------------------------- */
@keyframes ltor {
	0% { clip-path: inset(0 100% 0 0); }
	100% { clip-path: inset(0 0 0 0); }
}
@keyframes utob {
	0%, 100% {
			transform: translateY(0);
	}
	50% {
			transform: translateY(-20px);
	}
}
@keyframes spin {
	from { transform: rotate(0deg); }
	to   { transform: rotate(360deg); }
}

.scroll_swiper {
	overflow: hidden;
}
.scroll_swiper .scroll_list {
	display: flex;
	align-items: stretch;
	white-space: nowrap;
	width: max-content;
}
.scroll_swiper .scroll_list li {
	flex-shrink: 0;
}

.com_txt {
	line-height: 1.875;
}


.com_cta {
	background: #0f172a;
	margin: 80px 0 0;
	padding: 60px 20px 70px;
	position: relative;
}
.com_cta .cta_hd {
	text-align: center;
	line-height: 1;
	font-size: 60px;
	color: #e1e8ee;
	font-weight: 700;
	margin: 0 0 55px;
}
.com_cta .cta_box {
	max-width: 1200px;
	margin: 0 auto;
	align-items: stretch;
	display: flex;
	gap: 20px;
}
.com_cta .cta_box .cta_item {
	display: flex;
	height: 170px;
	width: calc((100% - 20px)/2);
	padding: 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.com_cta .cta_box a:hover {
	opacity: 0.5;
}
.com_cta .cta_box .cta_mail {
	background: #38bdf8;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.com_cta .cta_box .cta_mail a {
	color: #fff;
	text-decoration: underline;
	font-size: 20px;
}
.com_cta .cta_box .cta_mail .mail_inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
}
.com_cta .cta_box .cta_mail .mail_cont {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	position: relative;
}
.com_cta .cta_box .cta_mail .mail_cont:before {
	content: "";
	background-image: url("../img/common/mail_cta.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	flex-shrink: 0;
	width: 39px;
	height: 28px;
	margin: 2px 0 0;
}
.com_cta .cta_box .cta_mail .mail_txt {
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
.com_cta .cta_box .cta_tel {
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 10px;
	color: #07b4bf;
	background: #f2f2f2;
}
.com_cta .cta_box .cta_tel .tel_txt {
	font-size: 16px;
}
.com_cta .cta_box .cta_tel .tel_num {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #07b4bf;
	font-size: 60px;
	font-weight: 700;
	line-height: 0.9;
}
.com_cta .cta_box .cta_tel .tel_num:before {
	content: "";
	background-image: url("../img/common/tel_cta.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	flex-shrink: 0;
	width: 38px;
	height: 50px;
	margin: 5px 0 0;
}

@media (max-width: 1024px) {
.com_cta .cta_box {
	flex-direction: column;
	align-items: center;
	gap: 20px;
}
.com_cta .cta_box .cta_item {
	width: 80%;
}
}

@media (max-width: 767px) {
.com_cta {
	padding: 40px 20px;
	margin: 40px 0 0;
}
.com_cta .cta_hd {
	font-size: 40px;
	margin: 0 0 30px;
}
.com_cta .cta_box .cta_item {
	width: 90%;
	padding: 20px;
	height: auto;
	min-height: 170px;
}
.com_cta .cta_box .cta_mail .mail_cont {
	font-size: 22px;
}
.com_cta .cta_box .cta_mail .mail_cont:before {
	width: 30px;
	height: 22px;
}
.com_cta .cta_box .cta_tel .tel_txt {
	font-size: 14px;
}
.com_cta .cta_box .cta_tel .tel_num {
	font-size: 30px;
}
.com_cta .cta_box .cta_tel .tel_num:before {
	width: 24px;
	height: 32px;
}
}


.com_block {
	display: flex;
	flex-direction: column;
	gap: 80px;
}
.com_block .com_block_item {
	
}
@media (max-width: 767px) {
.com_block {
	gap: 40px;
}
}

.com_sub {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
.com_sub .com_sub_item {
	
}
@media (max-width: 767px) {
.com_sub {
	gap: 20px;
}
}




/* animate
----------------------------------------------- */
@keyframes fadeInLeftLit {
	from {
		opacity: 0;
		transform: translate3d(-50px, 0, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInLeftLit {
	animation-name: fadeInLeftLit;
}

@keyframes fadeInRightLit {
	from {
		opacity: 0;
		transform: translate3d(50px, 0, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInRightLit {
	animation-name: fadeInRightLit;
}

@keyframes fadeInUpLit {
	from {
		opacity: 0;
		transform: translate3d(0, 50px, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInUpLit {
	animation-name: fadeInUpLit;
}




/* teaser
----------------------------------------------- */
.teaser {
	margin: 0 0 50px;
	border-bottom: 1px #dadada solid;
	padding: 40px 20px 10px;
}
.teaser .teaser_inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 70px;
}
.teaser .teaser_cont {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.teaser .teaser_hd {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	font-weight: 700;
	gap: 15px;
}
.teaser .teaser_hd .hd_lar {
	color: #014099;
	font-size: 100px;
	line-height: 1;
	letter-spacing: -0.025em;
}
.teaser .teaser_hd .hd_sml {
	font-size: 60px;
	color: #b6b6b6;
	line-height: 1.1;
}
.teaser .teaser_txt {
	font-size: 18px;
	line-height: 1.67;
}
.teaser .teaser_name {
	text-align: right;
	font-size: 24px;
	font-weight: 500;
}

@media (max-width: 767px) {
.teaser {
	margin: 0 0 40px;
	padding: 30px 20px 10px;
}
.teaser .teaser_inner {
	gap: 40px;
}
.teaser .teaser_hd {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	font-weight: 700;
	gap: 15px;
}
.teaser .teaser_hd .hd_lar {
	font-size: min(50px,13.33vw);
}
.teaser .teaser_hd .hd_sml {
	font-size: min(30px,8vw);
}
.teaser .teaser_txt {
	font-size: 14px;
}
.teaser .teaser_name {
	font-size: 18px;
}

}



/* top
----------------------------------------------- */
.top_main {
	padding: 130px 20px 80px;
	background-image: url("../img/top/bg_main.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.top_main .main_inner {
	max-width: 1054px;
	margin: 0 auto;
}
.top_main .main_box {
	padding: 120px 0 45px;
	position: relative;
}
.top_main .main_cont {
	position: relative;
	z-index: 1;
}
.top_main .main_earth {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 0;
	width: 425px;
	animation: spin 10s linear infinite;
}

.top_main .main_hd {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	font-size: 72px;
	font-weight: 700;
	gap: 5px;
	line-height: 1;
}
.top_main .main_hd .hd_txt {
	display: block;
	clip-path: inset(0 100% 0 0);
}
.top_main .main_hd .hd_txt01 {
	color: #dbe9fd;
	animation: ltor 1s ease-out forwards;
}
.top_main .main_hd .hd_txt02 {
	color: #336fc4;
	animation: ltor 1s ease-out 1.3s forwards;
}
.top_main .main_hd .hd_txt03 {
	color: #03429a;
	animation: ltor 1s ease-out 2.6s forwards;
}
.top_main .main_det {
	max-width: 600px;
	margin: 15px 0 0;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.05em;
}
.top_main .main_partner {
	background: #fff;
	margin: 45px 0 0;
	padding: 15px 20px 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.top_main .main_partner .partner_tit {
	font-size: 14px;
	letter-spacing: 0.05em;
	margin: 0 0 20px;
}
.top_main .scroll_swiper .scroll_list {
	align-items: center;
	gap: 20px;
	font-size: 0;
}

@media (max-width: 767px) {
.top_main {
	padding: 200px 20px 50px;
}
.top_main .main_box {
	padding: 0;
}
.top_main .main_earth {
	right: -30px;
	bottom: auto;
	top: -90px;
	z-index: 0;
	width: 230px;
}
.top_main .main_hd {
	font-size: min(48px,12.8vw);
}
.top_main .main_det {
	margin: 5px 0 0;
	font-size: 14px;
}
.top_main .main_partner {
	margin: 50px 0 0;
	padding: 15px 10px;
}
.top_main .main_partner .partner_tit {
	font-size: 14px;
	line-height: 1.43;
	text-align: center;
}
}

.top_hd {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.top_hd .hd_eng {
	font-size: 48px;
	line-height: 1.2;
	font-weight: 700;
}
.top_hd .hd_jps {
	font-size: 20px;
	font-weight: 500;
}
@media (max-width: 767px) {
.top_hd .hd_eng {
	font-size: 30px;
}
.top_hd .hd_jps {
	font-size: 14px;
}
}

.top_intro {
	background: #f2f2f2;
	padding: 145px 0;
}
.top_intro .top_hd {
	margin: 0 0 25px;
}
.top_intro .top_hd .hd_eng {
	color: #03429a;
}
.top_intro .top_hd .hd_jps {
	color: #81a9e0;
}
.top_intro .intro_txt {
	line-height: 1.875;
	letter-spacing: 0.05em;
}
.top_intro .intro_det {
	text-align: center;
	margin: 50px 0 0;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.top_intro .intro_box {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 70px;
	margin: 60px 0 0;
}
.top_intro .intro_box .intro_box_tit {
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.05em;
	margin: 0 0 20px;
}
.top_intro .intro_box .intro_box_img {
	text-align: center;
	margin: 0 0 25px;
}
.top_intro .intro_box .intro_box_cont {
	text-align: center;
}
.top_intro .intro_box .intro_box_txt {
	font-size: 18px;
	font-weight: 700;
}
.top_intro .intro_box .intro_box_txt .txt_lar {
	font-size: 36px;
	font-weight: 700;
	color: #07b4bf;
	line-height: 1.2;
}
.top_intro .intro_box .intro_box_note {
	font-size: 12px;
}
@media (max-width: 1024px) {
.top_intro .intro_box {
	gap: 30px;
}
}
@media (max-width: 767px) {
.top_intro {
	padding: 70px 0;
}
.top_intro .intro_det {
	margin: 40px 0 0;
	font-size: 22px;
}
.top_intro .intro_box {
	margin: 30px 0 0;
	gap: 30px 20px;
	flex-wrap: wrap;
}
.top_intro .intro_box li {
	width: calc((100% - 20px)/2);
	display: flex;
	flex-direction: column;
	align-items: center;
}
.top_intro .intro_box .intro_box_tit {
	font-size: 16px;
}
.top_intro .intro_box .intro_box_img {
	margin: 0 0 20px;
	width: 120px;
}
.top_intro .intro_box .intro_box_txt {
	font-size: 14px;
}
.top_intro .intro_box .intro_box_txt .txt_lar {
	font-size: 24px;
}
}

.top_sga {
	padding: 150px 0 0;
	background-image: url("../img/top/bg_sga.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-color: #0f172a;
}
.top_service {
	color: #e2e8f0;
}
.top_service .top_hd {
	margin: 0 0 25px;
}
.top_service .service_box {
	margin: 40px 0 0;
}
.top_service .scroll_list {
	gap:20px;
}
.top_service .service_item {
	display: block;
	position: relative;
}
.top_service .service_item:hover {
	opacity: 0.5;
}
.top_service .service_item .item_txt {
	color: #e2e8f0;
	font-size: 18px;
	display: block;
	position: absolute;
	z-index: 1;
	right: 20px;
	bottom: 10px;
	line-height: 1;
}
@media (max-width: 767px) {
.top_sga {
	padding: 70px 0 0;
}
.top_service .service_box {
	margin: 30px 0 0;
}
.top_service .scroll_list {
	gap:10px;
}
.top_service .service_item {
	width: 184px;
}
.top_service .service_item .item_txt {
	font-size: 14px;
	right: 10px;
}
}

.top_gct {
	margin: 150px 0 0;
	padding: 0 20px;
}
.top_gct .gct_box {
	max-width: 1124px;
	margin: 0 auto;
	position: relative;
}
.top_gct .gct_cont {
	padding: 25px 0 0;
	color: #e2e8f0;
	position: relative;
	z-index: 1;
}
.top_gct .gct_hd {
	font-size: 60px;
	line-height: 1;
	font-weight: 700;
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin: 0 0 20px;
}
.top_gct .gct_hd .hd_txt01 {
	color: #cccccc;
}
.top_gct .gct_hd .hd_txt02 {
	color: #9f7851;
	padding: 0 0 0 20px;
}
.top_gct .gct_hd .hd_txt03 {
	color: #f7403c;
	padding: 0 0 0 40px;
}
.top_gct .gct_img {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 600px;
	z-index: 0;
}
.top_gct .gct_img img {
	display: block;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.top_gct .gct_img:before {
	position: absolute;
	content: "";
	background: rgba(5,71,218,0.3);
	width: 100%;
	height: 100%;
	top: 50px;
	right: 125px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
	z-index: 0;
}
.top_gct .com_txt {
	padding: 0 0 0 70px;
	max-width: 920px;
	letter-spacing: 0.05em;
}
@media (max-width: 767px) {
.top_gct {
	margin: 70px 0 0;
}
.top_gct .gct_cont {
	padding: 0;
}
.top_gct .gct_hd {
	font-size: 40px;
}
.top_gct .gct_hd .hd_txt02 {
	padding: 0 0 0 10px;
}
.top_gct .gct_hd .hd_txt03 {
	padding: 0 0 0 20px;
}
.top_gct .gct_img {
	position: relative;
	top: auto;
	right: auto;
	margin: 30px 0 0;
}
.top_gct .gct_img img {
	display: block;
}
.top_gct .gct_img:before {
	top: 20px;
	right: 20px;
}
.top_gct .com_txt {
	padding: 0 0 0 30px;
}
}

.top_about {
	margin: 200px 0 0;
	padding: 0 20px;
}
.top_about .about_box {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	color: #e2e8f0;
	gap: 20px;
}
.top_about .about_mess {
	padding: 65px 0 0;
	flex-shrink: 0;
	position: relative;
	z-index: 1;
}
.top_about .about_cont {
	padding: 170px 0 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	position: relative;
}
.top_about .about_img {
	position: absolute;
	right: 200px;
	bottom: 15px;
	width: 600px;
	z-index: 0;
}
.top_about .com_txt {
	max-width: 520px;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 1;
}
.top_about .about_btn {
	margin: 35px 40px 0 0;
	position: relative;
	z-index: 1;
}
.top_about .about_btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #38bdf8;
	border: 1px #38bdf8 solid;
	width: 213px;
	height: 46px;
	color: #e2e8f0;
	font-size: 18px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.top_about .about_btn .btn_txt {
	padding: 0 40px 0 0;
	background-image: url("../img/top/arrow_about.png");
	background-position: right center;
	background-repeat: no-repeat;
}
.top_about .about_btn a:hover {
	background: #fff;
	color: #38bdf8;
}
.top_about .about_btn a:hover .btn_txt {
	background-image: url("../img/top/arrow_about_on.png");
}
@media (max-width: 767px) {
.top_about {
	margin: 100px 0 0;
}
.top_about .about_box {
	flex-direction: column;
	align-items: center;
	gap: 30px;
}
.top_about .about_mess {
	padding: 0;
	width: 100%;
}
.top_about .about_cont {
	padding: 0;
	align-items: center;
	gap: 30px;
}
.top_about .about_img {
	position: static;
	width: 300px;
	max-width: 100%;
}
.top_about .about_btn {
	margin: 0;
}
}

.top_company {
	width: 100%;
	height: 485px;
	background-image: url("../img/top/world.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	position: relative;
}
.top_company .comp_box {
	max-width: 606px;
	height: 100%;
	margin: 0 auto;
	position: relative;
}
.top_company .comp_location {
	position: absolute;
}
.top_company .comp_location:before {
	position: absolute;
	content: "";
	background: url("../img/top/ico_pin.png") center center no-repeat;
	width: 12px;
	height: 19px;
	z-index: 0;
}
.top_company .comp_location .location_txt {
	width: 102px;
	height: 24px;
	background: #e60012;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 12px;
	color: #fff;
	cursor: pointer;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	border-radius: 20px;
}
.top_company .location_london {
	padding: 0 0 5px 18px;
	left: 0;
	bottom: 160px;
}
.top_company .location_london:before {
	left: 0;
	bottom: 0;
}

.top_company .location_india {
	padding: 0 18px 5px 0;
	right: 245px;
	bottom: 172px;
}
.top_company .location_india:before {
	right: 0;
	bottom: 0;
}

.top_company .location_chengdu {
	padding: 0 18px 5px 0;
	right: 158px;
	bottom: 200px;
}
.top_company .location_chengdu:before {
	right: 0;
	bottom: 0;
}

.top_company .location_hainan {
	padding: 18px 12px 0 0;
	right: 110px;
	bottom: 137px;
}
.top_company .location_hainan:before {
	right: 0;
	top: 0;
}

.top_company .location_dalian {
	padding: 0 0 14px 18px;
	right: -22px;
	bottom: 192px;
}
.top_company .location_dalian:before {
	left: 0;
	bottom: 0;
}

.top_company .location_tokyo {
	padding: 0 0 5px 18px;
	right: -100px;
	bottom: 160px;
}
.top_company .location_tokyo:before {
	left: 0;
	bottom: 0;
}
.top_company .location_inner {
	
}
.top_company .location_message {
	border: 2px #fff solid;
	position: absolute;
	left: 50%;
	bottom: 300px;
	transform: translateX(-50%);
	max-width: 100%;
	padding: 10px 20px;
	color: #fff;
	text-align: center;
	display: none;
	z-index: 1;
}
.top_company .location_message .message_name {
	display: none;
}
.top_company .location_message .message_txt {
	font-size: 16px;
	letter-spacing: 0.05em;
}
@media (max-width: 767px) {
.top_company {
	width: 100%;
	height: auto;
	padding: 0 0 250px;
	background-size: auto 300px;
	margin: 80px 0 0;
}
.top_company .comp_box {
	display: none;
}
.top_company .location_inner {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 0 20px;
}
.top_company .location_message {
	border: 1px #fff solid;
	position: static;
	transform: translateX(0);
	max-width: 100%;
	padding: 0;
	display: block!important;
	gap: 10px;
}
.top_company .location_message .message_name {
	display: block;
	background: #fff;
	color: #333;
	font-weight: 700;
	padding: 10px;
	flex-shrink: 0;
}
.top_company .location_message .message_txt {
	font-size: 13px;
	letter-spacing: 0.05em;
	padding: 10px;
}
}





/* company
----------------------------------------------- */
.company_frame {
	display: flex;
	flex-direction: column;
	gap: 50px;
}
.company_frame .company_tit {
	margin: 0 0 10px;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.company_frame .company_item {
	
}
.company_frame .company_flex {
	display: flex;
	align-items: flex-start;
	gap: 60px;
	margin: 30px 0 50px;
}
.company_frame .company_flex .flex_img {
	width: 400px;
	flex-shrink: 0;
	position: relative;
}
.company_frame .company_flex .flex_img img {
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.company_frame .company_flex .flex_name {
	position: absolute;
	right: -35px;
	bottom: -55px;
	width: 251px;
	z-index: 1;
}
.company_frame .company_flex .flex_name img {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
}
.company_frame .company_flex .flex_cont {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

@media (max-width: 1024px) {
.company_frame .company_flex .flex_img {
	width: 300px;
}
.company_frame .company_flex {
	gap: 40px;
}
}
@media (max-width: 767px) {
.company_frame {
	gap: 30px;
}
.company_frame .company_tit {
	font-size: 18px;
}
.company_frame .company_flex {
	flex-direction: column;
	align-items: center;
	gap: 40px;
	margin: 0;
}
.company_frame .company_flex .flex_img {
	width: 260px;
	max-width: 100%;
}
.company_frame .company_flex .flex_name {
	right: -25px;
	bottom: -35px;
	width: 200px;
}
.company_frame .company_flex .flex_cont {
	gap: 20px;
}
}




/* about
----------------------------------------------- */
.table01 {
	border-radius: 16px;
	border: 1px solid #FFFFFF;
	overflow: hidden;
	background: #E3E6EB;
}
.table01 .tb_item {
	display: flex;
	align-items: stretch;
	border-bottom: 1px solid #D3D3D5;
	text-align: left;
}
.table01 .tb_item .td {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	padding: 20px 30px;
}
.table01 .tb_item:last-child {
	border-bottom: none;
}

.table01 .tb_item .td:nth-child(1) {
	color: #424345;
	width: 20%;
}

.table01 .tb_item .td:nth-child(2) {
	background: linear-gradient(90deg, #fff 20%, #ECF0F3 100%);
	color: #424345;
	width: 80%;
}

.table01 .tb_item p {
	margin: 0;
}

@media (max-width: 767px) {
.table01 .tb_item .td {
	padding: 15px;
}

.table01 .tb_item .td:nth-child(1) {
	width: 38%;
}

.table01 .tb_item .td:nth-child(2) {
	width: 62%;
}

}




/* history
----------------------------------------------- */
.history_frame {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 30px;
}
.history_img {
	width: 33%;
}
.history_img img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.history_box {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 40px;
	position: relative;
	z-index: 1;
}
.history-item {
	display: flex;
	align-items: stretch;
	gap: 40px;
}

.history-item .year {
	width: 110px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #014099;
	font-weight: 700;
	position: relative;
	z-index: 1;
	border: 1px solid #ccc;
	padding: 0px 10px;
	border-radius: 60px;
}

.history-item:not(:last-child) .year::after {
	position: absolute;
	content: "";
	top: 100%;
	left: 50%;
	height: 40px;
	width: 2px;
	border-right: 2px dotted #ccc;
	margin-left: -1px;
	z-index: 1;
}

.history-item .com {
	background: linear-gradient(90deg, #fff 20%, #ECF0F3 100%);
	border-radius: 20px;
	padding: 10px 20px;
	border: 1px solid #FFF;
	transition: all ease 0.5s;
}

@media (max-width: 767px) {
.history_frame {
	flex-direction: column;
	align-items: center;
	gap: 30px;
}
.history_img {
	width: 100%;
}
.history_img img {
	height: 300px;
	width: 100%;
}
.history_box {
	width: 100%;
}
.history-item {
	gap: 20px;
	font-size: 13px;
}

.history-item .year {
	width: 100px;
}
.history-item .com {
	padding: 10px 15px;
}
}




/* team
----------------------------------------------- */
.team_img {
	text-align: center;
}




/* security
----------------------------------------------- */
.security_box {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 40px;
}
.security_box li {
	display: flex;
	align-items: center;
	gap: 10px;
}
.security_box li img {
	flex-shrink: 0;
}
.certification {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.certification li {
	display: flex;
	align-items: center;
}
.certification .cert_name {
	width: 190px;
	padding: 0 10px 0 0;
	flex-shrink: 0;
	font-size: 24px;
	font-weight: 700;
}
.certification .cert_txt {
	
}
.cert_img {
	background: #fff;
	margin: 70px 0 0;
	padding: 40px 20px;
	text-align: center;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}

@media (max-width: 767px) {
.security_box {
	gap: 15px 30px;
}
.certification .cert_name {
	width: 120px;
	font-size: 18px;
}
.certification .cert_txt {
	
}
.cert_img {
	margin: 40px 0 0;
	padding: 20px;
}
}




/* policy
----------------------------------------------- */
.policy_name {
	display: flex;
	flex-direction: column;
	gap: 30px;
	align-items: flex-end;
}





/* services
----------------------------------------------- */
.service_show {
	margin: 0 0 80px;
}
.service_show .scroll_swiper .scroll_list {
	gap: 10px;
}
.service_show .scroll_swiper .scroll_list a {
	background: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 10px 10px 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.service_show .scroll_swiper .scroll_list a:hover {
	opacity: 0.5;
}
.service_show .scroll_swiper .scroll_list .item_txt {
	padding: 15px 0;
}

@media (max-width: 767px) {
.service_show {
	margin: 0 0 40px;
}
}



/* comic
----------------------------------------------- */
.comic_flow {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 30px;
	margin: 25px 0 0;
}
.comic_flow li {
	width: calc((100% - 60px)/3);
}
.comic_flow .flow_img {
	text-align: center;
	margin: 0 0 10px;
}
.comic_flow .flow_tit {
	font-size: 18px;
	font-weight: 500;
	margin: 0 0 5px;
}
.comic_flow .flow_txt {
	font-size: 14px;
	line-height: 1.7;
}

@media (max-width: 767px) {
.comic_flow {
	gap: 20px 20px;
}
.comic_flow li {
	width: calc((100% - 20px)/2);
}
.comic_flow .flow_tit {
	font-size: 16px;
}
}



/* XXXXXX
----------------------------------------------- */


@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}



/* XXXXXX
----------------------------------------------- */


@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}



/* XXXXXX
----------------------------------------------- */


@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}



/* XXXXXX
----------------------------------------------- */


@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}






