@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@200&family=Noto+Sans+JP:wght@400;500;700&display=swap');

/*----------------------------------------------------------- */
/* Reset
-------------------------------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
html {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
  /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */

  -webkit-text-size-adjust: 100%;
  /* Prevents iOS text size adjust after orientation change, without disabling user zoom */

  -ms-text-size-adjust: 100%;
  /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */

}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
  box-sizing: border-box;
}
code,
kbd,
tt,
var {
  font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}
mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}
sup,
sub {
  font-size: 75%;
  height: 0;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  bottom: 1ex;
}
sub {
  top: .5ex;
}
small {
  font-size: 75%;
}
big {
  font-size: 125%;
}
figure {
  margin: 0;
}
button,
input,
select,
textarea {
  font-size: 100%;
  /* Corrects font size not being inherited in all browsers */

  margin: 0;
  /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */

  vertical-align: baseline;
  *vertical-align: middle;
  /* Improves appearance and consistency in all browsers */

}
button,
input {
  line-height: normal;
  /* Addresses FF3/4 setting line-height using !important in the UA stylesheet */

  *overflow: visible;
  /* Corrects inner spacing displayed oddly in IE6/7 */

}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  color: #FFF;
  padding: 5px 60px;
  border: 3px solid #004098;
  text-align: center;
  background: #004098;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	display: inline-block;
  cursor: pointer;
  /* Improves usability and consistency of cursor style between image-type 'input' and others */

  -webkit-appearance: button;
  /* Corrects inability to style clickable 'input' types in iOS */
}
button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	cursor: pointer;
}
button:focus,
html input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
html input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
  cursor:pointer;
  opacity: 0.7;  
  filter: alpha(opacity=70);
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* Addresses box sizing set to content-box in IE8/9 */

  padding: 0;
  /* Addresses excess padding in IE8/9 */

}

input[type="search"] {
  -webkit-appearance: textfield;
  /* Addresses appearance set to searchfield in S5, Chrome */

  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */

  box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration {
  /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
  border: 0;
  padding: 0;
}
input[type=text],
input[type=email],
textarea {
  color: #5F5F66;
  border: 1px solid #dddddd;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
}
input[type=text]:focus,
input[type=email]:focus,
textarea:focus {
  color: #101010;
}
input[type=text],
input[type=email] {
  padding: 10px;
}
textarea {
  overflow: auto;
  /* Removes default vertical scrollbar in IE6/7/8/9 */

  padding: 10px;
  vertical-align: top;
  /* Improves readability and alignment in all browsers */
}

/* styles
-------------------------------------------------------------- */
body,
button,
select {
  padding: 0;
  margin: 0;
  background: #ffffff;
  font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',MS PGothic,sans-serif;
  height: 100%;
  color: #777777;
  font-size: 15px;font-size: 1.5rem;
  line-height: 1.8;
}
body {
  min-width: auto;
  width:100%;
  position: relative;
  -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
  animation: fadeIn 1.5s ease 0s 1 normal;
  box-sizing: border-box;
}

@keyframes fadeIn {
    0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

img {
	max-width: 100%;
	height: auto;
}

  
/* typography
-------------------------------------------------------------- */
/* Headings */
h1,
h2,
h3,
h4,
h5,
h6 {clear: both;}

/* Text elements */
p {margin-bottom: 1.5em;letter-spacing: 0.02em;}

ul,
ol {margin: 0;}
ul ul,
ol ol,
ul ol,
ol ul {
  margin-bottom: 0;}

b,
strong {
  font-weight: bold;}
dfn,
cite,
em,
i {
  font-style: italic;}
blockquote {
  margin: 0 1.5em;}
  
address {
  margin: 0 0 1.5em;}
  
pre {
  background: #eee;
  font-size: 0.7em;
  line-height: 1.5em;
  margin-bottom: 1.6em;
  padding: 1.6em;
  overflow: auto;
  max-width: 100%;
  box-shadow: 0 3px 5px #ddd inset;}

.display-none {
	display: none;
}
	
/* Links */
a {
  color: #004098;
  text-decoration: none;
  -webkit-transition: 0.2s ease-in-out;  
  -moz-transition: 0.2s ease-in-out;  
  -o-transition: 0.2s ease-in-out;  
  transition: 0.2s ease-in-out;}
/* a:hover {
  color: #00afec;
  cursor:pointer;
  opacity: 0.7;  
  filter: alpha(opacity=70);} */



/* Text */
.ttl01,
.ttl02 {
	color: #000000;
	font-size: 22px;font-size: 2.2rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 1.4;
	text-align: center;
}
.ttl01 span,
.ttl02 span {
	font-size: 12px;font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	display: block;
	opacity: 0.7;  
	filter: alpha(opacity=70);
}

.ttl02 {
	color: #FFFFFF;
}

.ttl03 {
	color: #000000;
	font-size: 22px;font-size: 2.2rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	line-height: 1.4;
	padding-bottom: 12px;
	margin-bottom: 26px;
	position: relative;
}

.ttl04 {
	color: #000000;
	font-size: 17px;font-size: 1.7rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	line-height: 1.4;
	padding-bottom: 12px;
	margin-bottom: 20px;
	position: relative;
}
.ttl04::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 40px;
	height: 3px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}

.ttl05 {
	color: #000000;
	font-size: 17px;font-size: 1.7rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	line-height: 1.4;
	padding-bottom: 12px;
	margin-bottom: 20px;
	position: relative;
}
/*
s.ttl05::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 40px;
	height: 3px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}
*/
.font-red {
	color:#FF0000;
}

.font-blue {
	color:#004098;
}

.font-b {
	font-weight: bold;
}

.font-110 {
	font-size: 110%;
}

.br-pc {
	display:none;
}

/* List */
ul.list01 {
	list-style-type: disc;
	margin-left: 20px;
}

.indent01 {
	padding-left:1.7em;
	text-indent:-1.7em;
}

.indent02 {
	padding-left:1em;
	text-indent:-1em;
}

/* Button */
.btn01 {
  padding: 5px 32px;
  background: #FFFFFF;
  border: 2px solid #004098;
  text-align: center;
  display: inline-block;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
}
.btn01:after,
.btn02:after {
	width: 0%;
	position: absolute;
	transition: 0.3s;
	content: "";
	left: 0;
	height: 2px;
	background: #004098;
}
.btn01:hover,
.btn02:hover {
  box-shadow: inset 0px 0px 0px 2px #004098;
  opacity: 1;  
  filter: alpha(opacity=100);
  cursor: pointer;
}
.btn01:hover span,
.btn02:hover span{
	color:#004098;
}

.btn02 {
  font-size: 13px;font-size: 1.3rem;
  padding: 4px 16px !important;
  border: 2px solid #004098;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
  display: inline-block;
}
.btn02:after {
	height: 1px;
}
.btn02:hover {
  box-shadow: inset 0px 0px 0px 1px #004098;
  opacity: 1;  
  filter: alpha(opacity=100);
}

.btn03 {
  color: #FFF;
  font-size: 18px;font-size: 1.8rem;
  padding: 5px 60px;
  border: 3px solid #004098;
  text-align: center;
  background: #004098;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	display: inline-block;
}

.btn03:after {
	width: 0%;
	position: absolute;
	transition: 0.3s;
	content: "";
	left: 0;
	height: 2px;
	background: #004098;
}
.btn03:hover {
	color: #FFF;
	box-shadow: inset 0px 0px 0px 2px #FFF;
  opacity: 1;  
  filter: alpha(opacity=100);
	cursor: pointer;
}

.btn04 {
  font-size: 15px;font-size: 1.5rem;
  padding: 10px 16px;
  background: #FFFFFF;
  border: 2px solid #004098;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
  border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
  display: inline-block;
}
.btn04:after {
	width: 0%;
	position: absolute;
	transition: 0.3s;
	content: "";
	left: 0;
	height: 2px;
	background: #004098;
}
.btn04:hover {
  box-shadow: inset 0px 0px 0px 2px #004098;
  opacity: 1;  
  filter: alpha(opacity=100);
  cursor: pointer;
}

.btn05 {
  color: #FFF;
  font-size: 18px;font-size: 1.8rem;
  padding: 5px 60px;
  border: 2px solid #004098;
  text-align: center;
  background: #004098;
  transition: 0.3s;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  display: inline-block;
}
.btn05:hover {
  color: #004098;
  background: #FFFFFF;
  opacity: 1;  
  filter: alpha(opacity=100);
  cursor: pointer;
}

.btn06 {
  color: #004098;
  font-size: 18px;font-size: 1.8rem;
  padding: 5px 60px;
  border: 2px solid #004098;
  text-align: center;
  background: #FFFFFF;
  transition: 0.3s;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  display: inline-block;
}
.btn06:hover {
  color: #FFF;
  background: #004098;
  opacity: 1;  
  filter: alpha(opacity=100);
  cursor: pointer;
}

/* Table */
table.tb01 {
	margin: 0 auto;
	text-align: center;
	border-top: 1px solid #CCCCCC;
}
table.tb01 th,
table.tb01 td {
	padding: inherit;
	border-bottom: 1px solid #CCCCCC;
	display: block;
}
table.tb01 th {
	color: #00afec;
	letter-spacing: 2px;
	text-align: inherit;
	padding: 20px 0 5px;
	border-bottom: none;
}
table.tb01 td {
	padding: 0 0 20px;
}

table.tb02 {
	margin: 0 auto;
}
table.tb02 th,
table.tb02 td {
	padding: 0 0 20px 0;
	border-bottom: 1px solid #FFFFFF;
	display: block;
}
table.tb02 th {
	color: #000000;
	font-weight: bold;
	text-align: left;
	padding: 0;
	border-bottom: none;
}
table.tb02 td {
	margin-bottom: 20px;
}

table.tb03 {
	margin: 0 auto;
}
table.tb03 th,
table.tb03 td {
	padding: 20px 0;
	border-bottom: 1px solid #CCCCCC;
}
table.tb03 th {
	text-align: left;
	padding: 26px 10px 26px 0;
}

table.tb04 {
	margin: 0 auto;
}
table.tb04 th {
	color: #000000;
	font-weight: bold;
	text-align: left;
	padding-top: 26px;
}
table.tb04 td {
	padding: 0 0 26px 30px;
	border-bottom: 1px solid #CCCCCC;
}

@media only screen and (orientation:landscape) {
	table.tb01 {
		margin: 0 auto;
		text-align: left;
		border-top: none;
	}
	table.tb01 th,
	table.tb01 td {
		padding: 26px 0;
		border-bottom: 1px solid #CCCCCC;
		display: table-cell;
	}
	table.tb01 th {
		padding: 26px 70px 26px 0;
	}

	table.tb02 th,
	table.tb02 td {
		padding: 20px 0;
		display: table-cell;
	}
	table.tb02 th {
		border-bottom: 1px solid #FFFFFF;
	}
	table.tb02 td {
		margin-bottom: inherit;
	}


table.tb03 {
	margin: 0 auto;
}
table.tb03 th,
table.tb03 td {
	padding: 20px 0;
	border-bottom: 1px solid #CCCCCC;
}
table.tb03 th {
	text-align: left;
	padding: 26px 10px 26px 0;
}

table.tb04 {
	margin: 0 auto;
}
table.tb04 th {
	color: #000000;
	font-weight: bold;
	text-align: left;
	padding-top: 26px;
}
table.tb04 td {
	padding: 0 0 26px 30px;
	border-bottom: 1px solid #CCCCCC;
}
		
		
}


/* Width */
.wd10 {width:10%;}
.wd15 {width:15%;}
.wd20 {width:20%;}
.wd25 {width:25%;}
.wd30 {width:30%;}
.wd35 {width:35%;}
.wd40 {width:40%;}
.wd45 {width:45%;}
.wd50 {width:50%;}
.wd55 {width:55%;}
.wd58 {width:58%;}
.wd60 {width:60%;}
.wd65 {width:65%;}
.wd70 {width:70%;}
.wd75 {width:75%;}
.wd80 {width:80%;}
.wd85 {width:85%;}
.wd90 {width:90%;}
.wd95 {width:95%;}
.wd100 {width:100%;}

/* Space */
.pt0{padding-top:0;}
.pt5{padding-top:5px;}
.pt10{padding-top:10px;}
.pt15{padding-top:15px;}
.pt20{padding-top:20px;}
.pt30{padding-top:30px;}
.pt40{padding-top:40px;}

.pr0{padding-right:0px !important;}
.pr5{padding-right:5px;}
.pr10{padding-right:10px;}
.pr15{padding-right:15px;}
.pr20{padding-right:20px;}

.pl5{padding-left:5px;}
.pl10{padding-left:10px;}
.pl15{padding-left:15px;}
.pl20{padding-left:20px;}

.pb0{padding-bottom:0 !important;}
.pb5{padding-bottom:5px;}
.pb10{padding-bottom:10px;}
.pb15{padding-bottom:15px;}
.pb20{padding-bottom:20px;}
.pb30{padding-bottom:30px;}
.pb40{padding-bottom:40px;}
.pb56{padding-bottom:56px;}
.pb85{padding-bottom:85px;}

.mt0{margin-top:0px !important;}
.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt20{margin-top:20px;}

.mr0{margin-right:0 !important;}
.mr5{margin-right:5px;}
.mr10{margin-right:10px;}
.mr15{margin-right:15px;}
.mr20{margin-right:20px;}
.mr40{margin-right:40px;}
.mr183{margin-right:183px;}

.ml5{margin-left:5px;}
.ml10{margin-left:10px;}
.ml15{margin-left:15px;}
.ml20{margin-left:20px;}
.ml45{margin-left:45px;}
.ml183{margin-left:183px;}

.mb0{margin-bottom:0 !important;}
.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb60{margin-bottom:60px;}
.mb70{margin-bottom:70px;}
.mb80{margin-bottom:80px;}

.br-for-res{
	display: block;
}

/* Alignment */
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}
.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}
.aligncenter {
  clear: both;
  display: block;
  margin: 0 auto;
}
.left {float:left;}
.right {float:right;}
.center {text-align: center;}

.txtleft{text-align:left;}
.txtright{text-align:right;}

/* Animation */
@-webkit-keyframes zoomIn {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1)
	}
	50% {
		opacity: 1
	}
}
@keyframes zoomIn {
	0% {
		opacity: 0;
		-webkit-transform: scale3d(1.1, 1.1, 1.1);
		transform: scale3d(1.1, 1.1, 1.1)
	}
	50% {
		opacity: 1
	}
}



/* layout
-------------------------------------------------------------- */
.header-container {
	width: 100%;
}

.header-container-row {
	width: 100%;
	height: 300px;
}

.header-container-row:before{
	-webkit-filter: blur(3px);
	-moz-filter: blur(3px);
	-o-filter: blur(3px);
	-ms-filter: blur(3px);
	filter: blur(3px);
}

.header{
	width: 100%;
	margin: 0 auto;
	border-bottom: none;
	position: fixed;
	left: 0;
	right: 0;
	z-index: 1000;
	transition: .3s;
	background: transparent;
}

.header-inner {
	width: 100%;
	padding: 18px 20px 0;
	margin: 0 auto;
}

.wrapper,
.wrapper2{
	width: 100%;
}

.main-fluid {
	background: #FFF;
	overflow:hidden;
	position: relative;
	z-index: 20;}


.main-fluid .container {
	width: auto;
    margin: 50px auto 0;
    display: inherit;
    padding: 0 20px;
}

.main-fluid .container main,
.main-fluid .container aside {
	display: inherit;
	vertical-align: top;
}

/* Common layout box */
.sc-base {
	width: 100%;
	padding: 50px 0;
}
.sc-wht02 {
	width: 100%;
	margin: 0;
	padding: 50px 0 70px;
}
.sc-gray {
	width: 100%;
	padding: 50px 0;
	background: #efefef;
	overflow: hidden;
}
.sc-blue {
	width: 100%;
	padding: 50px 0;
	background: #cceffb;
}
.sc-blue02 {
	width: 100%;
	margin: 0;
	padding: 150px 0 50px;
	background: #cceffb;
}

.sc-inner {
	width: auto;
	padding: 0 20px;
	margin: 30px auto;
}
.sc-inner-none {
	width: auto;
	padding: 0 20px;
	margin: 0 auto;
}
.sc-inner-top {
	width: auto;
	padding: 0 20px;
	margin: 30px auto 0;
}
.sc-inner-bottom {
	width: auto;
	padding: 0 20px;
	margin: 0 auto 30px;
}


.sc-main {
	width: inherit;
    margin-right: 0;
}

.sc-side {
	width: inherit;
}

@media only screen and (orientation:landscape) {
		.sc-wht02 {
			width: 100%;
			padding: 40px 0 70px;
		}
		
		.sc-blue02 {
			width: 100%;
			padding: 40px 0 70px;
			background: #cceffb;
		}		
}


/* Header
-------------------------------------------------------------- */
#top .header-container {
	height: 540px;
}

#whats .header-container-row {
	background: #efefef url("../img/bg_whats_ttl_2m.jpg") no-repeat center top;
	background-size: cover;
}

#advantages .header-container-row {
	background: #efefef url("../img/bg_advantages_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

#service .header-container-row {
	background: #efefef url("../img/bg_service_ttl_2.jpg") no-repeat center right;
	background-size: cover;
}

#company .header-container-row {
	background: #efefef url("../img/bg_company_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

#office .header-container-row,
#ceo-message .header-container-row {
	background: #efefef url("../img/bg_office_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

#mvv .header-container-row {
	background: #efefef url("../img/bg_mvv_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

#recruit .header-container-row {
	background: #efefef url("../img/bg_recruit_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

#contact .header-container-row {
	background: #efefef url("../img/bg_contact_ttl_2m.jpg") no-repeat center top;
	background-size: cover;
}

#privacy .header-container-row {
	background: #efefef url("../img/bg_privacy_ttl_m.jpg") no-repeat center right;
	background-size: cover;
}

#ag_antiSocial_forces .header-container-row {
	background: #efefef url("../img/bg_ag_antiSocial_forces_ttl.jpg") no-repeat center center;
	background-size: cover;
}

#news .header-container-row {
	background: #efefef url("../img/bg_news_ttl_3m.jpg") no-repeat center top;
	background-size: cover;
}

#sitemap .header-container-row {
	background: #efefef url("../img/bg_sitemap_ttl_m.jpg") no-repeat center top;
	background-size: cover;
}

@media only screen and (orientation:landscape) {
	#whats .header-container-row {
		background: #efefef url("../img/bg_whats_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#advantages .header-container-row {
		background: #efefef url("../img/bg_advantages_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#service .header-container-row {
		background: #efefef url("../img/bg_service_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#company .header-container-row {
		background: #efefef url("../img/bg_company_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#recruit .header-container-row {
		background: #efefef url("../img/bg_recruit_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#contact .header-container-row {
		background: #efefef url("../img/bg_contact_ttl.jpg") no-repeat center center;
		background-size: cover;
	}

	#privacy .header-container-row {
		background: #efefef url("../img/bg_privacy_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#ag_antiSocial_forces .header-container-row {
		background: #efefef url("../img/bg_ag_antiSocial_forces_ttl.jpg") no-repeat center center;
		background-size: cover;
	}

	#news .header-container-row {
		background: #efefef url("../img/bg_news_ttl.jpg") no-repeat center top;
		background-size: cover;
	}

	#sitemap .header-container-row {
		background: #efefef url("../img/bg_sitemap_ttl.jpg") no-repeat center top;
		background-size: cover;
	}
}

.header .logo {
	margin: 0;
	display:block;
	float: left;
}
.header .logo img {
	width: 114px;
	height: auto;
}
.header-info {
	display: none;
}

nav.main-nav {
	display: none;
}

.main-nav-m {
	display: block;
}

.navi-btn {
  width: 28px;
  height: 46px;
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  z-index: 1000;
}
.navi-btn span {
  position: absolute;
  display: block;
  width: 28px;
  height: 2px;
  background: #004098;
  border-radius: 5px;
  transition: all .3s;
}
.navi-btn span:nth-of-type(2) {
  top: 8px;
  opacity: 1;
  transition: all .3s;
}
.navi-btn span:last-of-type {
  top: 16px;
}
.navi-btn p {
  color: #004098;
  font-size: 10px;font-size: 1.0rem;
  text-align: center;
  position: absolute;
  top: 26px;
  left: -1px;
}
.navi-btn-on span {
}
.navi-btn-on span:first-of-type {
  transform: rotate(-45deg) translateY(7px) translateX(-3px);
}
.navi-btn-on span:nth-of-type(2) {
  transform: translateX(0);
  opacity: 0;
}
.navi-btn-on span:last-of-type {
  transform: rotate(45deg) translateY(-8px) translateX(-5px);
}
.navi-btn-on p {
}

.navi-menu {
  text-align: center;
  display: none;
  background: #FFFFFF;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 30px 0;
  z-index: 100;
  overflow-y: auto;
}

.navi-menu p {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	letter-spacing: 2px;
	padding-bottom: 2px;
	margin-bottom: 20px;
	position: relative;
}
.navi-menu p::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 20px;
	height: 2px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}

.navi-menu li a {
  display: block;
  padding: 10px 30px;
  position: relative;
}
.navi-menu li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 10px;
	height: 1px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}










.contact-btn {
  width: 42px;
  height: 46px;
  position: absolute;
  top: 20px;
  right: 60px;
  cursor: pointer;
  z-index: 1000;
  background: url("../img/ico_mail02.png") no-repeat center top;
  background-size: 30px auto;
}

.contact-btn span {
	display: none;
}

.contact-btn.contact-btn-on {
  background: none;
  position: absolute;
  top: 20px;
  right: 10px;
}

.contact-btn-on span {
  position: absolute;
  display: block;
  width: 28px;
  height: 2px;
  background: #FFFFFF;
  border-radius: 5px;
  transition: all .3s;
}
.contact-btn-on span:nth-of-type(2) {
  top: 8px;
  opacity: 1;
  transition: all .3s;
}
.contact-btn-on span:last-of-type {
  top: 16px;
}
.contact-btn p {
  color: #004098;
  font-size: 10px;font-size: 1.0rem;
  text-align: center;
  position: absolute;
  top: 26px;
  left: 1px;
}

.contact-btn-on span:first-of-type {
  transform: rotate(-45deg) translateY(10px) translateX(-4px);
}
.contact-btn-on span:nth-of-type(2) {
  transform: translateX(0);
  opacity: 0;
}
.contact-btn-on span:last-of-type {
  transform: rotate(45deg) translateY(-7px) translateX(-1px);
}
.contact-btn-on p {
  color: #FFFFFF;
}

.contact-menu {
  text-align: center;
  display: none;
  background: #004098;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 30px 0;
  z-index: 100;
  overflow-y: auto;
}

.contact-menu p {
	color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	letter-spacing: 2px;
	padding-bottom: 2px;
	margin-bottom: 20px;
	position: relative;
}
.contact-menu p::after,
.contact-menu-box .contact-menu-box-ph dd.ph::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 20px;
	height: 2px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}

.contact-menu-box {
	padding: 0 40px;
  	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	-webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;
	flex-wrap: wrap;
}

.contact-menu-box .contact-menu-boxs {
	width: 100%;
	border: 2px #FFFFFF solid;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	padding: 64px 20px 20px;
}
.contact-menu-box .contact-menu-box-ph {
	color: #FFFFFF;
	background: #004098 url("../img/ico_ph03.png") no-repeat center top 22px;
	background-size: 30px auto;
	margin-right: 0;
	display: inline-block;
}
.contact-menu-box .contact-menu-box-ph dt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 16px;font-size: 1.6rem;
	position: relative;
}

.contact-menu-box .contact-menu-box-ph dd {
	font-size: 13px;font-size: 1.3rem;
}
.contact-menu-box .contact-menu-box-ph dd.ph {
	color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 28px;font-size: 2.8rem;
	letter-spacing: 1px;
	line-height: 1.6;
	display: inline-block;
	margin-bottom: 10px;
	padding-bottom: 8px;
	position: relative;
}

.contact-menu-box-ph dd.ph a {
	color: #FFFFFF;
    text-decoration: none;
}

.contact-menu-box .contact-menu-box-form {
	color: #004098;
	line-height: 1.6;
	background: #FFFFFF url("../img/ico_mail01.png") no-repeat center top 29px;
	background-size: 32px auto;
	display: inline-block;
	margin-bottom: 20px;
}
.contact-menu-box .contact-menu-box-form p {
	color: #004098;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 20px;font-size: 2.0rem;
	letter-spacing: 0;
	margin-bottom: 10px;
    padding-bottom: 10px;
	position: relative;
}

.contact-menu-box .contact-menu-boxs span {
	font-size: 13px;font-size: 1.3rem;
}

.contact-menu-box .contact-menu-box-form:hover {
	color: #FFFFFF;
	background: #00afec url("../img/ico_mail03.png") no-repeat center top 29px;
	background-size: 32px auto;
	opacity: 1;  
	filter: alpha(opacity=100);
}

.contact-menu-box .contact-menu-box-form:hover p {
	color: #FFFFFF;
}
.contact-menu-box .contact-menu-box-form:hover p::after {
	background:#FFFFFF;
}

@media only screen and (orientation:landscape) {
	.contact-menu,
	.navi-menu {
  		height: fill;
  		height: -webkit-fill-available;
	}
}

#modal-overlay {
	display: none;
}
#modal-overlay.navi-overlay{
	display: block;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	background-color:rgba(0,0,0,0.6);
}


/* header animation */
.header.is-animation {
	width: 100%;
	height: 58px;
	background: #FFF;
}
.header.is-animation .header-inner {
	width: 100%;
	padding: 14px 20px 0;
	margin: 0 auto;
}

.header.is-animation .logo img {
	width: 84px;
	height: auto;
}

.header.is-animation .contact-btn {
	top: 13px;
}
.header.is-animation .contact-btn p {
	top: 22px;
}
.header.is-animation .navi-btn {
	top: 13px;
}
.header.is-animation .navi-btn p {
	top: 22px;
}


.header-container-row h2 {
	color: #111;
	font-size: 24px;font-size: 2.4rem;
	font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 3px;
	line-height: 1.5;
	text-align: center;
	position: absolute;
	top: 148px;
	left: 0;
	right: 0;
	margin: auto;
}
.header-container-row h2 span {
	font-size: 13px;font-size: 1.3rem;
	font-weight: lighter;
	letter-spacing: 0;
	display: block;
}

/* Home
-------------------------------------------------------------- */
/* Home main image */
@-webkit-keyframes zoomUp {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
100% {
-webkit-transform: scale(1.10);
transform: scale(1.10);
}
}

@keyframes zoomUp {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
100% {
-webkit-transform: scale(1.10);
transform: scale(1.10);
}
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img { 
	-webkit-animation: zoomUp 10s linear 0s;
	animation: zoomUp 10s linear 0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
.swiper-slide {
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.slide-img {
	background-size: cover;
	background-position: 70%;
	height: 540px;
}

.slide-text {
	width: auto;
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
	margin: auto;
	padding: 0 8%;
	position: absolute;
	top: 56%;
	left: 0;
	right: 0;
	z-index: 10;
}

.slide-text p.slide-text-top {
	color: #004098;
	font-size: 24px;font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0;
	margin-bottom: 5px;
}
.slide-text p.slide-text-middle {
	font-size: 16px;font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	display: block;
}

.slide-text01 p.slide-text-middle {
	margin-bottom: 20px;
}

.slide-text span {
	font-size: 14px;font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.6;
    display: block;
}


/* Home News */
.home-news {
	padding: 0;
}


.home-news h2.ttl {
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 20px;font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 1px;
	line-height: 1.2;
	margin-bottom: 10px;
	float: left;
}

.home-news a.btn02 {
	float: right;
}

.home-news .home-news-box01 {
	width: 100%;
	vertical-align: top;
	display: inline-block;
    margin-bottom: 16px;

}
.home-news dl.home-news-box02 {
	width: 100%;
	vertical-align: top;
	padding-left: 0;
	border-left: none;
	display: inline-block;
}
.home-news dl.home-news-box02 dt {
	width: 26%;
	font-size: 13px;font-size: 1.3rem;
	line-height: 2.9;
	vertical-align: top;
	margin: 5px 0 5px;
	display: inline-block;
}
.home-news dl.home-news-box02 dd {
	width: 74%;
	vertical-align: top;
	margin: 5px 0;
	display: inline-block;
}
@media only screen and (orientation:landscape) {
	.home-news dl.home-news-box02 dt {
		width: 14%;
	}
	.home-news dl.home-news-box02 dd {
		width: 86%;
	}
}

/* js-cms用 ここから */
.home-news-box02 ul{
	width: 873px;
	vertical-align: top;
	padding-left: 40px;
	border-left: 1px #FFF solid;
	display: inline-block;
}
.home-news-box02 span {
	width: 88px;
	margin: 5px 20px 5px 0;
	display: inline-block;
}
.home-news-box02 a {
	width: auto;
	margin: 5px 0;
	display: inline-block;
}
/* js-cms用 ここまで */


/* Home Service */
.home-service {
	background: url("../img/bg_home_service.png") no-repeat right top 48%;
	background-size: 70% auto; 
	text-align: center;
}

.home-service img {
	width: 250px;
	height: auto;
	float: none;
}

.home-service .home-service-box01 {
	text-align: left;
	margin-top: 20px;
}
.home-service .sc-inner p {
	color: #00afec;
	font-family: 'Work Sans', sans-serif;
	font-size: 50px;font-size: 5.0rem;
	font-weight: 200;
	line-height: 1;
	margin: 0 5px 20px 0;
	display: inline-block;
}
.home-service dl dt {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 23px;font-size: 2.3rem;
	font-weight: 700;
	line-height: 1.6;
	margin-bottom: 20px;
}
.home-service dl dd {
	margin-bottom: 20px;
}

.home-service img.left {
	margin-right: 0;
}
.home-service .home-service-box02 {
	text-align: right;
	margin-top: 20px;
}
.home-service .home-service-box02 p {
	font-size: 50px;font-size: 5rem;
	margin: 0;
	display: block;
	margin: 0 0 8px 0;
}
.home-service .home-service-box02 dd br{
	display: none;
}
.home-service .sc-inner p.servise-titlesub {
	color: #004098;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 20px;font-size: 2.0rem;
	font-weight: 700;
	display: inline-block;
}

.home-service .home-service-box02 p.servise-titlesub {
	margin-bottom: 20px;
	
}

@media only screen and (orientation:landscape) {
		.home-service img {
			width: 280px;
		}
		.home-service img.right {
			float: right;
			margin-left: 20px;
		}
		.home-service img.left {
			float: left;
			margin-right: 20px;
		}
}

/*Home  Handlingpayment*/
.home-Handlingpayment{
	background: linear-gradient(73deg, #fff 0%, #fff 50%, #cceffb 50%, #cceffb 100%);
}
.tilearea{
	display: flex;
	flex-direction: column;
}
.tilearea .tile{
	margin-bottom: 5%;
	width: 100%;
}
.tilearea .tile:last-of-type{
	margin-bottom: 0;
}
.tilearea .tile a{
	padding: 3%;
}
.tilearea .tile span.tile-txt{
	font-size: 16px;font-size: 1.6rem;
}
.tilearea .tile span.icon img{
	width: 10rem;
}

@media only screen and (orientation:landscape){
	.home-Handlingpayment{
		background: linear-gradient(30deg, #fff 0%, #fff 50%, #cceffb 50%, #cceffb 100%);
	}
	.tilearea .tile{
		margin: 1%;
		width: 40%;
	}
}



/* Home features */
.home-features {
	background: url("../img/bg_home_features.jpg") no-repeat bottom;
	background-size: cover;
}

.home-features .sc-inner {
	margin: 30px auto 0;
}

.home-features .home-features-box {
  	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	-webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;
	flex-wrap: wrap;
}

.home-features .home-features-box .home-features-boxs {
	width: 100%;
	text-align: center;
	position: relative;
	margin: 0 0 30px 0;
}

.home-features-box .home-features-boxs img {
	width: 256px;
	height: auto;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
}
.home-features-boxs dl {
	margin-top: 128px;
	padding: 30px 20px 20px;
	background: #FFF;
}

.home-features-boxs dl dt {
	color: #004098;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 19px;font-size: 1.9rem;
}

@media only screen
	and (orientation:landscape) {
		.home-features .home-features-box .home-features-boxs {
			width: 48%;
		}
}

.home-features-boxs dl dd {
	text-align: left;
}

/* Home company */
.home-company {
/*	padding-bottom: 40vw;
	background: url("../img/bg_home_company.jpg") no-repeat center bottom;
	background-size: 160% auto;*/
	background: none;
}

.home-company .sc-inner {
	width:auto;
	font-size: 15px;font-size: 1.5rem;
	line-height: 2;
	text-align: center;
}


/* Home contact */
.home-contact {
	width: 100%;
	text-align: center;
	padding: 50px 0;
	background: #2da0e6;
	background: -moz-linear-gradient(top,  #2da0e6 0%, #0069cc 100%);
	background: -webkit-linear-gradient(top,  #2da0e6 0%,#0069cc 100%);
	background: linear-gradient(to bottom,  #2da0e6 0%,#0069cc 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2da0e6', endColorstr='#0069cc',GradientType=0 );
}

.home-contact .sc-inner-top {
  	display:-webkit-box;
  	display:-ms-flexbox;
/*	display: flex;
	-webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;
	flex-wrap: wrap-reverse; */
}

.home-contact .sc-inner-top .wrapper{
	display: flex;
	-webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;
	flex-wrap: wrap-reverse;
}

.home-contact .home-contact-box {
	width: 87%;
	border: 2px #004098 solid;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	padding: 64px 20px 20px;
}
.home-contact .home-contact-box-ph {
	color: #FFFFFF;
	background: #004098 url("../img/ico_ph02.png") no-repeat center top 22px;
	background-size: 30px auto;
	margin-right: 0;
	margin-bottom: 30px;
	display: inline-block;
}
.home-contact .home-contact-box-ph dt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 18px;font-size: 1.8rem;
	position: relative;
	margin-bottom: 10px;
}
.home-contact-box-ph dt:before,
.home-contact-box-form p:before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -8px; /*下線の上下位置調整*/
  display: inline-block;
  width: 30px; /*下線の幅*/
  height: 2px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #99b3d6; /*下線の色*/
}

.home-contact .home-contact-box-ph dd {
	color: #ccd9ea;
	font-size: 14px;font-size: 1.4rem;
}
.home-contact .home-contact-box-ph dd.ph {
	color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 32px;font-size: 3.2rem;
	letter-spacing: 1px;
	line-height: 1.6;
	display: inline-block;
	border-bottom: 1px #99b3d6 solid;
	margin-bottom: 6px;
}

.home-contact-box-ph dd.ph a {
	color: #FFFFFF;
    text-decoration: none;
}

.home-contact .home-contact-box-form {
	color: #004098;
	line-height: 1.6;
	background: #FFFFFF url("../img/ico_mail02.png") no-repeat center top 29px;
	background-size: 32px auto;
	display: inline-block;
	margin-bottom: 30px;
}
.home-contact .home-contact-box-form p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 22px;font-size: 2.2rem;
	margin-bottom: 15px;
	position: relative;
}
.home-contact-box-form p:before {
  bottom: -8px;
}

.home-contact .home-contact-box span {
	font-size: 14px;font-size: 1.4rem;
}

.home-contact .home-contact-box-form:hover {
	color: #FFFFFF;
	background: #00afec url("../img/ico_mail03.png") no-repeat center top 29px;
	background-size: 32px auto;
	opacity: 1;  
	filter: alpha(opacity=100);
}
@media only screen
	and (orientation:landscape) {
		.home-contact .home-contact-box {
			width: 42%;
			padding: 64px 18px 18px;
		}

		.home-contact .home-contact-box-form {
			margin-bottom: 0;
		}
}


/* Footer
-------------------------------------------------------------- */
.footer {
	background: #efefef;
}

.footer .sc-inner {
	margin: 0 auto;
	padding: 40px 30px 30px;
}
.footer img {
	vertical-align: top;
	/*display: block;*/
	display: none;
}

.footer .footer-link {
	border-left: none;
	/*border-top: 1px #FFF solid;
	margin: 20px 0;
	padding: 20px 0 0;*/
	margin: 0 0 20px;
	padding-left: 20px;
}


.footer .footer-link a {
	color: #000000;
}
.footer-link a:hover {
	color: #00afec;
  opacity: 1;  
  filter: alpha(opacity=100);
}
.footer .footer-link ul {
	width: 100%;
	vertical-align: top;
	display: inline-block;
	margin-left: 0;
}

.footer-link ul li {
	margin-bottom: 16px;
}

.footer-link li ul {
	margin: 2px 0 0 8px !important;
	display: block !important;
}
.footer-link li li {
	margin-bottom: 4px;
	padding-left: 10px;
	position: relative;
}

.footer-link li li:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%; /*下線の上下位置調整*/
  display: inline-block;
  width: 6px; /*下線の幅*/
  height: 2px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #000000; /*下線の色*/
}

@media only screen
	and (orientation:landscape) {
		.footer .footer-link {
  			column-count: 2;
  			column-gap: 0;
		}

}

p.footer-copy {
	color: #5d6969;
	font-size: 14px;font-size: 1.4rem;
	text-align: center;
	margin: 0;
	padding-bottom: 15px;
	position: relative;
}
p.footer-copy:before {
  content: '';
  position: absolute;
  left: 50%;
  top: -15px; /*下線の上下位置調整*/
  display: inline-block;
  width: 20px; /*下線の幅*/
  height: 2px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #000000; /*下線の色*/
}


.pagetop {
    display: none;
    position: fixed;
    bottom: 10px;
    right: 10px;
	z-index: 40;
}
.pagetop a {
    display: block;
	width: 50px;
	height: 50px;
    color: #FFF;
    text-align: center;
	font-size: 10px;font-size: 1.0rem;
	line-height: 1.1;
	font-weight: bold;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	background: #CBCBCB url(../img/ar_01.png) no-repeat center 12px;
	background-size: 18px auto;
    text-decoration: none;
	filter:alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
	padding-top: 28px;
	box-sizing: border-box;
}
.pagetop a:hover {
    display: block;
    background-color: #004098;
    text-decoration: none;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;}


/* Side
-------------------------------------------------------------- */
.side-box h3 {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 20px;font-size: 2.0rem;
	padding-bottom: 10px;
	border-bottom: 2px solid #000000;
	position: relative;
}
.side-box h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 134px;
	height: 3px;
	background:#000000;
}

.side-box ul {
	padding: 30px 0 10px;
	margin-bottom: 50px;
	border-bottom: 2px solid #000000;
}
.side-box ul li {
	line-height: 1.5;
	margin-bottom: 20px;
}
.side-box li a {
	padding-left: 26px;
	position: relative;
}
.side-box li a::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 12px;
	height: 1px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background:#00afec;
}

.side-box li span {
	font-size: 13px;font-size: 1.3rem;
	padding-left: 26px;
	display: block;
}

/* Page common
-------------------------------------------------------------- */
ul.breadcrumb {
	width: 100%;
	margin: 10px auto 0;
	padding: 0 20px;
	font-size: 13px;font-size: 1.3rem;
}
ul.breadcrumb li {
	display: inline-block;
	padding-right: 20px;
	position: relative;
}
ul.breadcrumb li a::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 6px;
	height: 1px;
	background:#004098;
	margin: auto;
}

.box01-l,
.box01-r {
	text-align: center;
	margin: 0 auto;
	position: relative;
}
.box01-l img {
    width: 260px;
    height: auto;
	position: absolute;
    right: 0;
    left: 0;
    top: -180px;
    margin: auto;
}
.box01-l dl,
.box01-r dl {
	width: inherit;
	text-align: left;
	margin-left: 0;
	margin-top: 5px;
}
.box01-l dt,
.box01-r dt {
	color: #004098;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 17px;font-size: 1.7rem;
    font-weight: 700;
	margin-bottom: 5px;
}
.box01-l dt span,
.box01-r dt span {
	color: #FFFFFF;
	font-family: 'Work Sans', sans-serif;
    font-size: 48px;font-size: 4.8rem;
    font-weight: 200;
	line-height: 1.4;
	display: block;
}

.box01-r {}
.box01-r img {
    width: 260px;
    height: auto;
	position: initial;
    margin: auto;
}
.box01-r dl {
	width: inherit;
	margin-left: 0;
}
.box01-r dt span {
	color:#00afec;
}


.bnr-aiw {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: inherit;
	padding: 40px 10px 30px;
	background: url("../img/img_bnr_aiw01_m.png") no-repeat bottom -20px right -20px;
	background-size: 62% auto; 
	border: 8px solid #004098;
	position: relative;
}
.bnr-aiw dl {
	color: #004098;
    display: inline-block;
	margin-bottom: 30px
}
.bnr-aiw dl dt {
    font-size: 20px;font-size: 2.0rem;
    font-weight: 700;
    line-height: 0.7;
	margin-bottom: 20px;
    display: inline-block;
}
.bnr-aiw dt span {
	color: #00afec;
    font-family: 'Work Sans', sans-serif;
    font-size: 39px;font-size: 3.9rem;
    font-weight: 200;
	margin-left: 5px;
    display: inline-block;
}
.bnr-aiw dd {
    font-size: inherit;
    font-weight: 500;
    line-height: 1.5;
}
.bnr-aiw a {
	width: 194px;
	height: 30px;
	color: #000000;
	text-align: center;
    font-weight: 500;
    line-height: 1.5;
	padding: 20px 0 50px;
	border: 2px solid #000000;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background: #FFFFFF url("../img/ico_ar01.png") no-repeat center bottom 14px;
	background-size: 16px auto;
	display: block;
	position: initial;
	margin: auto;
}
.bnr-aiw a:hover {
	color: #FFFFFF;
	background: #00afec url("../img/ico_ar02.png") no-repeat center bottom 14px;
	background-size: 16px auto;
	cursor: pointer;
	opacity: 1;  
	filter: alpha(opacity=100);
}

.bnr-transfer {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	padding: 40px 10px 30px;
	background: url("../img/img_bnr_transfer01_m.png") no-repeat bottom -20px right -20px;
	background-size: 74% auto;
	border: 8px solid #ff882e;
	position: relative;
}
.bnr-transfer dl {
	color: #e6741e;
    display: inline-block;
	margin-bottom: 30px
}
.bnr-transfer dl dt {
    font-size: 23px;font-size: 2.3rem;
    font-weight: 700;
    /* line-height: 0.7; */
	line-height: 1.2;
	margin-bottom: 20px;
    display: inline-block;
}
.bnr-transfer dd {
    font-size: 15px;font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.5;
}
.bnr-transfer a {
	width: 194px;
	/* height: 30px; */
	height: 56px;
	color: #000000;
	text-align: center;
    font-weight: 500;
    line-height: 1.5;
	padding: 20px 0 50px;
	border: 2px solid #000000;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	background: #FFFFFF url("../img/ico_ar01.png") no-repeat center bottom 14px;
	background-size: 16px auto;
	display: block;
	position: initial;
	margin: auto;
}
.bnr-transfer a:hover {
	color: #FFFFFF;
	background: #ff882e url("../img/ico_ar02.png") no-repeat center bottom 14px;
	background-size: 16px auto;
	cursor: pointer;
	opacity: 1;  
	filter: alpha(opacity=100);
}


@media only screen
	and (orientation:landscape) {
		.box01-l,
		.box01-r {
			margin: 0 auto;
			position: relative;
		}
		.box01-l img {
			width: 40%;
			position: absolute;
			right: 20px;
			left: auto;
			top: -80px;
		}
		.box01-l dl,
		.box01-r dl {
			width: 50%;
			margin-left: 20px;
		}

		.box01-r {}
		.box01-r img {
			width: 40%;
			position: absolute;
			left: 20px;
			right: auto;
			top: -80px;
		}
		.box01-r dl {
			margin-left: 47%;
		}
		.box01-r dt span {
			color:#00afec;
		}
		
		.bnr-aiw {
			text-align: left;
			padding: 30px;
			background: url("../img/img_bnr_aiw01.png") no-repeat top right;
			background-size: auto 100%; 
			border: 17px solid #004098;
		}
		.bnr-aiw dl {
			margin-bottom: 0;
		}
		.bnr-aiw dl dt {
    		font-size: 24px;font-size: 2.4rem;
			margin-bottom: 10px;
		}
		.bnr-aiw dt span {
    		font-size: 48px;font-size: 4.8rem;
			margin-left: 5px;
    		display: inline-block;
		}
		.bnr-aiw dd {
    		font-size: inherit;
		}
		.bnr-aiw a {
			width: 160px;
			height: 40px;
    		font-size: 14px;font-size: 1.4rem;
			background: #FFFFFF url(../img/ico_ar01.png) no-repeat center bottom 20px;
			background-size: 16px auto;
	    	position: absolute;
    		right: 20px;
    		top: 0;
    		bottom: 0;
		}
		.bnr-aiw a:hover {
    		background: #00afec url("../img/ico_ar02.png") no-repeat center bottom 20px;
    		background-size: 16px auto;
    	}

		.bnr-transfer {
			text-align: left;
			padding: 30px;
			background: url("../img/img_bnr_transfer01.png") no-repeat top right;
			background-size: auto 100%; 
			border: 17px solid #ff882e;
		}
		.bnr-transfer dl {
			margin-bottom: 0;
		}
		.bnr-transfer dl dt {
    		margin-bottom: 10px;
		}
		.bnr-transfer dd {
    		width: 85%;
    		font-size: inherit;
		}
		.bnr-transfer a {
			width: 160px;
			height: 40px;
    		font-size: 14px;font-size: 1.4rem;
			background: #FFFFFF url(../img/ico_ar01.png) no-repeat center bottom 20px;
			background-size: 16px auto;
	    	position: absolute;
    		right: 20px;
    		top: 0;
    		bottom: 0;
		}
		.bnr-transfer a:hover {
			background: #ff882e url("../img/ico_ar02.png") no-repeat center bottom 20px;
    		background-size: 16px auto;
		}
}


/* News
-------------------------------------------------------------- */
.page-news01 {
	margin-bottom: 50px;
}

.page-news01 .ttl03 {
	margin-bottom: 40px;
}
.page-news01 .page-news-box {
	padding: 30px 30px 30px 0;
	border-bottom: 1px #CCCCCC solid;
	background: url("../img/ico_ar03.png") no-repeat right top 50%;
	background-size: 14px auto;
}

.page-news01 .page-news-box:first-of-type {
	border-top: 1px #CCCCCC solid;
}

.page-news01 .page-news-box h4 {
	font-size: inherit;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	margin-bottom: 5px;
}

.page-news01 .page-news-box p {
	font-size: 13px;font-size: 1.3rem;
	background: url("../img/ico_date.png") no-repeat left;
	background-size: 13px auto;
	padding-left: 20px;
	margin-bottom: 0;
}


/* News - 詳細ページ
-------------------------------------------------------------- */
.page-news-detail01 .ttl05 {
	margin-bottom: 0;
}

.page-news-detail01 .date {
	font-size: 13px;font-size: 1.3rem;
	text-align: right;
	margin-bottom: 24px;
}

.page-news-detail01 .page-news-detail-box {
	min-height: inherit;
	padding-bottom: 30px;
	margin-bottom: 50px;
	border-bottom: 1px solid #CCCCCC;
}


/* What's e-wallet?
-------------------------------------------------------------- */
.page-whats01 {
	padding: 0;
	margin: 50px 0;
/*	background: url("../img/img_whats_01_m.jpg") no-repeat left bottom 160px;*/
	background: url(../img/bg_home_service.png) no-repeat right top 34%, url(../img/bg_home_service02.png) no-repeat left top 61%;
	background-size: 90% auto;
}

.page-whats01 .sc-inner-bottom {
	width: auto;
	padding: 0 20px 10vw;
}
.page-whats01 .ttl03 {
	margin-bottom: inherit;
}

.page-whats01 .page-whats01-box01 {
	width: inherit;
    font-size: inherit;
	line-height: 2;
}

.page-whats02-box{
	margin-bottom: 40px;
}
.page-whats02 .page-whats02-box:first-of-type{
	margin-bottom: 40px;
}
.page-whats02-box .whats02-box-content p:first-of-type br{
	display: none;
}

.page-whats02 h3.ttl01{
	margin: 40px auto 56px;
}

.page-whats02 .whats02-box-header{
	width: 100%;
	margin-bottom: 6%;
}

.page-whats02 .whats02-box-right .whats02-box-header{
	margin: 0 0 2% auto;
}

.page-whats02 .page-whats02-box{
	display: flex;
    flex-direction: column;
}
.page-whats02 .page-whats02-box.svg_1{
	margin-bottom: 32px;
}

.page-whats02 .whats02-box-content{
	position: static;
	width: 96%;
/*	box-shadow: 10px 10px 40px rgb(0 0 0 / 30%);*/
}

.whats02-box-content p{
	font-size: 15px;font-size: 1.5rem;
}

.page-whats03{
	margin-top: -100px;
}
.page-whats03.sc-base{
	padding: 0;
}

/* Advantages
-------------------------------------------------------------- */
#advantages .sc-gray{
	padding: 50px 0 32px;
}
.page-advantages01 {
	padding: 50px 0 40px;
}
.page-advantages01 .sc-inner {
	margin-top: 0;
}

.page-advantages02 {}

.page-advantages02 dl {}

.page-advantages04 .mb80 {
	margin-bottom: 50px;
}

.page-advantages03 .sc-inner{
	background-color: #fff;
}
.advantages03{
	flex-direction: column;
	background-color: transparent;
}
.advantages03 .r-wrapper{
	width: 100%;
    padding: 16% 0% 5%;
}
.page-advantages03 .sc-inner:first-of-type .r-wrapper{
	padding-top: 16%;
}
.advantages03 .r-wrapper dt{
	font-size: 19px;font-size: 1.9rem;
}
.advantages03 .r-wrapper dt span{
	top: -256%;
	left: -10%;
	font-size: 70px;font-size: 7rem;
}
.page-advantages03 .sc-inner:first-of-type .r-wrapper dt span{
	top: -143%;
}
.advantages03 img{
	margin-top: 16px;
}
.advantages03 .order1{
	order: -1;
}
.advantages03 .order2{
	order: 2;
}


.page-advantages03 .sc-inner{
	width: 80%;
}
.page-advantages03 .sc-inner:first-of-type{
	margin-top: 40px;
}
.advantages02-issue-wrapper .advantages02-text{
	width: 88%;
	padding: 9% 6% 3% 6%;
}
.page-advantages02-s{
	background-image: url(../img/background-solid.png);
}
.solution-title{
	width: 80%;
}
.solution-container h5{
	font-size: 110%;
}
.arrow01{
	margin-top: -7%;
}
.circle{
	margin: 3% auto;
}
.advantages-arrow{
	margin: -5.6% auto;
}
.page-advantages02-s{
	margin-top: -2em !important;
    padding: 72px 0 16px;
}
.advantages02-solution-wrapper .solution-inner{
	display: block;
}
.page-advantages02-s .sc-inner{
	width: 90%;
}
.advantages02-solution-wrapper .solution-container{
	padding: 13% 4% 11%;
	width: auto;
}
.advantages02-solution-wrapper .solution-inner .advantages02-text{
	width: 100%;
}
.advantages02-img{
	text-align: center;
}


/* Service
-------------------------------------------------------------- */
.page-service01 .sc-inner,
.page-service02 .sc-inner,
.page-service03 .sc-inner {
	margin: 0 auto;
}
.page-service02 .sc-inner{
	padding: 0;
}
.page-service02 .sc-inner,
.page-service03 .sc-inner {
	text-align: center;
}

.page-service02 img,
.page-service03 img {
	width: 250px;
	height: auto;
	float: none;
	margin-bottom: 20px;
}

.page-service02 .page-service02-box01,
.page-service03 .page-service03-box01 {
	width: inherit;
	display: inline-block;
}
.page-service02 .sc-inner p,
.page-service03 .sc-inner p {
	color: #00afec;
	font-family: 'Work Sans', sans-serif;
	font-size: 40px;font-size: 4.0rem;
	font-weight: 200;
	line-height: 1;
	margin: 0;
	display: block;
}
.page-service02 .sc-inner span,
.page-service03 .sc-inner span {
	color: #004098;
	line-height: 1.2;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 23px;font-size: 2.3rem;
	font-weight: 700;
	margin-bottom: 30px;
	display: block;
}
.page-service02 dl dt,
.page-service03 dl dt {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 19px;font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.6;
	margin-bottom: 10px;
}
.page-service02 dl dd,
.page-service03 dl dd {
	text-align: left;
	margin-bottom: 30px;
}

.page-service03 img.left {
	margin-right: 0;
}
.page-service03 .page-service03-box01 {
	text-align: center;
}
.page-service03 .page-service03-box01 p {
	margin: 0 ;
}

.page-service03 .page-service03-box01 span {
	margin-bottom: 37px;	
}

.page-service03 .page-service03-box01 dl dd br{
	display: none;
}
.page-service04 .ttl01 {
	margin-bottom: 30px;
}
.page-service04 .page-service04-box01,
.page-service04 .page-service04-box02,
.page-service04 .page-service04-box03,
.page-service04 .page-service04-box04 {
	text-align: center;
	padding-top: 30px;
	/* margin: 20px; */
	border-top: 1px solid #FFFFFF;
}

.page-service04 h4{
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 19px;font-size: 1.9rem;
	font-weight: 500;
}

.page-service04 p {
	margin: 20px 0 0;
}

.service-logo {
	padding: 10px 0 0;
	position: relative;
}

.service-logo dl dt {
	color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 18px;font-size: 1.8rem;
}
.service-logo dl dd {
	text-align: left;
}

.service-logo .swiper-button-prev,
.service-logo .swiper-button-next {
	display: block;
}

.service-logo .swiper-wrapper {
	flex-wrap: inherit;
}

.page-service04-box01 .service-logo .swiper-slide,
.page-service04-box02 .service-logo .swiper-slide,
.page-service04-box04 .service-logo .swiper-slide {
	flex: none;
	max-width: inherit;
}

.page-service04-box03 .service-logo .service-logo-box {
    max-width: 100%;
}

.page-service04-box04 .service-logo .swiper-slide.ml183{margin-left:0;}

.swiper-button-prev {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23cccccc'%2F%3E%3C%2Fsvg%3E") !important;
	background-size: 20px auto;
    background-position: left;
}
.swiper-button-next {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23cccccc'%2F%3E%3C%2Fsvg%3E") !important;
	background-size: 20px auto;
    background-position: right;
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
	left: 0;
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
	right: 0;
}

.page-service04-box02 dl {
	margin: 0 20px;
}
.page-service04-box02 .btn01 {
	margin-top: 10px;
}


@media only screen and (orientation: landscape) {
	.page-service02 .page-service02-box01,
	.page-service03 .page-service03-box01 {
		width: 51vw;
	}
	.page-service02 img.right {
    	float: right;
    	margin-left: 20px;
	}
	.page-service02 .sc-inner p {
		font-size: 60px;font-size: 6.0rem;
		margin: 0 5px 20px 0;
		display: inline-block;
	}
	.page-service02 .sc-inner span {
		font-size: 20px;font-size: 2.0rem;
		display: inline-block;
	}
	.page-service02-box01 {
		text-align: left;
	}

	.page-service03 img.left {
    	float: left;
    	margin-right: 20px;
	}
	.page-service03 .page-service03-box01,
	.page-service03 .page-service03 dl dd {
		text-align: right;
	}
	
}


/* Service - AIW
-------------------------------------------------------------- */
.page-wallet01 {
	padding: 50px 0 0;
}
.page-wallet01 .sc-inner-none {
	text-align: center;
}
.page-wallet01 .page-wallet01-box {
	width: inherit;
	text-align: left;
	margin-bottom: 30px;
	float: none;
}
.page-wallet01 .page-wallet01-box p{
	width: auto;
}
.page-wallet01 img {
	margin-top: 0%;
	width: 250px;
	height: auto;
}
.page-wallet01 img.right {
	float: none;
}
.page-transfer .page-wallet01 img{
	margin-top: -8%;
}
.page-transfer .page-wallet01.account-transfer img{
	margin-top: 4%;
    /* margin-bottom: -27%; */
}
.page-transfer .page-wallet01.account-transfer-web img{
	margin-top: 0%;
    margin-bottom: 10%;
}
.page-wallet02 {
	padding-bottom: 0;
}
.page-wallet02 .sc-inner {
	margin: 0 auto 60px;
}

.page-wallet02 .sc-blue02 {
    padding: 170px 0 50px;
}

.page-wallet02 .box01-l img {
	top: -200px;
}

.page-wallet02 .sc-inner.box01-l,
.page-wallet02 .sc-inner.box01-r {
    margin: 0 auto;
}

.page-wallet02 dt {
    font-size: 19px;font-size: 1.9rem;
    margin-bottom: 14px;
}
.page-wallet02 .font-l {
	color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 22px !important;font-size: 2.2rem !important;
	font-weight: 700;
	display: inline-block;
}



.page-wallet03 .sc-inner {
	margin-bottom: 0;
}

.page-wallet04 .sc-inner {
	margin: 40px auto 0;
}

.page-wallet04 dl {
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px #FFFFFF solid;
}

.page-wallet04 dl dt {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: inherit;
	margin-bottom: 6px;
}

.page-wallet04 .page-wallet04-last {
	padding-bottom: 30px;
	border-bottom: 1px #FFFFFF solid;
}

.page-wallet05 .sc-inner {
	margin: 0 auto;
}


@media only screen
	and (orientation:landscape) {
		.page-wallet01 .page-wallet01-box {
			width: 60%;
			margin-bottom: 0;
   			float: left;
		}
		
		.page-wallet01 img {
			width: 37%;
			height: auto;
		}
		
		.page-wallet01 img.right {
   			float: right;
		}
		
		.page-wallet02 .sc-blue02 {
   			width: 100%;
   			padding: 40px 0 70px;
   			background: #cceffb;
		}
		.page-wallet02 .box01-l img {
   			top: -80px;
		}
}


/* Company
-------------------------------------------------------------- */
.page-company01 {
/*	background: url("../img/bg_home_company.jpg") no-repeat bottom 50px center;*/
	background-size: 160% auto;
	margin-top: -50px;
	padding: 100px 0 50px;
}

.page-company03 {
	padding: 50px 0 30px;
}
.page-company03 .sc-inner.mb80 {
	margin-bottom: 30px;
}
.page-company03 h4.ttl04 {
	margin-bottom: 20px;
}
.page-company01 table.tb01 {
  	font-size: inherit;
	margin: 10px auto 50px;
}

.page-company03 table.tb02 th {
	width: inherit;
}

@media only screen and (orientation:landscape) {
	.page-company01 {
		background: url("../img/bg_home_company.jpg") no-repeat bottom 50px center;
		background-size: 100% auto;
	}
	.page-company01 table.tb01 {
		margin: 10px auto 220px;
	}
	
	.page-company03 {
		padding: 50px 0;
	}
	
	.page-company03 .sc-inner.mb80 {
		margin-bottom: 50px;
	}
	
	.page-company03 h4.ttl04 {
		margin-bottom: 0;
	}
	
	.page-company03 table.tb02 th {
		width: 120px;
	}
}


/* Office
-------------------------------------------------------------- */
#company-list.sc-gray {
	/* padding: 24px 0; */
	padding: 50px 0 32px;
	background: url(../img/bg-company02.jpg) no-repeat center center;
    height: auto;
}
.page-company02 ul.page-company02-list {
	display: block;
}
.page-company02 .page-company02-list li {
	width: 100%;
    height: 40.8vw;
    margin-bottom: 7.46vw;
}
.page-company02-list li .white-box {
	padding-left: 5.86vw;
}
.page-company02-list li.list-office:before {
	background: url(../img/img_office02.jpg) no-repeat center;
	background-size: 80%;
}
.page-company02-list .white-box .text-mini {
	font-size: 3.2vw;
    padding-top: 6.66vw;
    margin-bottom: 3.2vw;
}
.page-company02-list .white-box .box-title {
	font-size: 5.86667vw;
    letter-spacing: 0.9vw;
	margin-bottom: 2vw;
}
.page-company02-list li a:after  {
	width: 53.3vw;
    height: 55vw;
    left: -8.4vw;
    top: -8.56vw;
	-webkit-transform: rotate(103deg);
	transform: rotate(103deg);
}

#office .list-office ul {
	display: block;
}
#office .list-office li {
	width: 100%;
}
#office p:first-of-type {
	margin-bottom: 0;
}
#ceo-message .message-wrapper {
	padding: 24px 16px;
}
#ceo-message .ceo-name {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.ceo-name img {
	width: 40%;
}
.ceo-name p {
	margin: 0 1.5em 0 0;
}


@media screen and (min-width:420px) and (max-width:765px){
	.page-company02-list li.list-office:before {
		background-size: 138%;
	}
	.page-company02-list li.list-office:before {
		left: 278px;
	}
	.page-company02-list .white-box .text-mini {
		font-size: 1.9vw;
		padding-top: 8.26vw;
		margin-bottom: 0.5vw;
	}
	.page-company02-list .white-box .box-title {
		font-size: 3.5vw;
		margin-bottom: 6vw;
	}
	.page-company02-list .white-box .btn02 {
		font-size: 16px;
		font-size: 1.6rem;
		padding: 4px 30px !important;
	}
}



/* MVV
-------------------------------------------------------------- */
#mvv .header-container-row h2{
	font-size: 2rem;
}
.trapezoid01-wrapper {
	height: 3.4rem;
}
.trapezoid01 {
	height: 3.4rem;
	width: 50%;
}
.trapezoid02-wrapper {
	height: 5.8rem;
	margin-bottom: 5.6rem;
}
.trapezoid02{
	height: 5.8rem;
	width: 93%;
}
.mvv-sub-ttl {
	font-size: 1.6rem;
	margin-bottom: 0;
}
.mvv-ttl {
	font-size: 2.2rem;
	margin-bottom: 4rem;
}
.mvv-block {
	padding: 4rem 0 8.8rem;
}
.mvv-txt01 {
	font-size: 1.6rem;
}
.mvv-txt02 {
	margin-bottom: 0;
}
.mvv-contents {
	height: 60.7rem;
	padding-top: 2.4rem;
}
.mvv-contents::before {
	height: 63rem;
	clip-path: polygon(0% 0%,100% 0%,37% 100%, 0% 100%);
	width: 58%;
}


/* Recruit
-------------------------------------------------------------- */
#recruit .sc-blue02 {
	padding-top: 50px;
}
.recruit-ttl{
/*	width: 100%*/
	text-align: left;
    margin-bottom: 32px;
    padding: 8px;
    font-size: 20px;font-size: 2rem;
}

.page-recruit02 .ttl03,
.page-recruit03 .ttl03 {
	text-align: left;
}

.page-recruit02 table.tb02,
.page-recruit03 table.tb02 {
	width: inherit;
	color: #231815;
	text-align: left;
  	font-size: inherit;
	margin: 0 0 20px 0;
}

.page-recruit02 table.tb02 th,
.page-recruit03 table.tb02 th {
	width: inherit;
	font-weight: bold;
    margin-bottom: 1rem;
}

.sc-wht02.page-recruit03 {
	padding: 50px 0;
}

.page-recruit03 table.tb02 th,
.page-recruit03 table.tb02 td {
    padding: 0 0 20px 0;
    border-bottom: 1px solid #CCCCCC;
	display: block;
}

.page-recruit03 table.tb02 th {
	padding: 0;
	border-bottom: none;
}



.sc-wht02.page-recruit03 .box01-l img {
    position: inherit;
    right: inherit;
    top: inherit;
	margin-bottom: 10px;
}
.page-recruit02 .img-pc,
.page-recruit03 .img-pc {
	display: none;
}
.page-recruit02 .img-m,
.page-recruit03 .img-m {
	display: block;
}

.page-recruit04 p.indent02 {
	margin-bottom: 0;
}

@media only screen and (orientation:landscape) {
	.recruit-ttl{
		width: 90%;
	}
	.page-recruit02 table.tb02 th,
	.page-recruit03 table.tb02 th {
    	width: 120px;
	}
	
	.sc-wht02.page-recruit03 .box01-l img {
    	width: 40%;
    	position: absolute;
    	right: 20px;
    	left: auto;
    	top: -80px;
	}
	
	.page-recruit03 table.tb02 th,
.page-recruit03 table.tb02 td {
		padding: 20px 0;
		display: table-cell;
	}
.page-recruit03 table.tb02 th {
		border-bottom: 1px solid  #CCCCCC;
	}
.page-recruit03 table.tb02 td {
		margin-bottom: inherit;
	}
}


/* Recruit form
-------------------------------------------------------------- */
input[type=text].year,
input[type=text].month,
input[type=text].day,
input[type=text].postnum01,
input[type=text].postnum02 {
	width: 24%;
} 

input[type=text].postnum01,
input[type=text].postnum02 {
	margin-bottom: 10px;
}

/* Contact
-------------------------------------------------------------- */
.page-contact01 {
	padding: 50px 0 30px;
}

.page-contact-step {
	width: inherit;
	list-style-type: none;
	display:table;
	padding:0;
	margin:0;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	margin: 0 auto 30px;
	overflow:hidden;
}
.page-contact-step li{
	width: 33%;
  	font-size: 12px;font-size: 1.2rem;
  	display:table-cell;
	vertical-align: middle;
  	position:relative;
  	background: #efefef;
  	padding: 1em 0.2em 1em 1.5em;
  	color: #585f5f;
}
.page-contact-step li:last-child{
  padding-right: 1em;
}
.page-contact-step li:last-child:before,
.page-contact-step li:last-child:after{
  display:none;
}
.page-contact-step li:before,
.page-contact-step li:after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
}
.page-contact-step li:before{
  top: -10px;
  right:-1em;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 33px 0 33px 1em;
  z-index: 10;
}
.page-contact-step li:after{
  top: -10px;
  right:-.8em;
  border-style: solid;
  border-color: transparent transparent transparent #efefef;
  border-width: 33px 0 33px 1em;
  z-index: 10;
}
.page-contact-step li.current{
	color: #FFFFFF;
  background: #00afec;
  font-weight: bold;
}
.page-contact-step li.current:after{
  border-color: transparent transparent transparent #00afec;
}

.error_text {
	color: #FF0000;
	text-align: center;
	margin-bottom: 40px;
}
.form_box {
	width: inherit;
	color: #000000;
  	font-size: inherit;
	margin: 0 auto;
}
.form_box dt {
    width: 100%;
    color: #000000;
    font-weight: bold;
	vertical-align: top;
	text-align: center;
    padding: 0 0 10px;
    display: block;
}
.form_box dd {
    width: 100%;
	text-align: center;
	vertical-align: top;
    padding-bottom: 20px;
    margin-bottom: 20px;
    display: block;
	border-bottom: 1px #FFFFFF solid;
}

.form_box ul.form_checkbox li {
	width: 100%;
	text-align: left;
	display: inline-block;
}

input[type=text].tell {
	width: 29.5%;
}

.form_button_container {
	text-align: center;
}
.form_button_container form {
	display: block;
}

.page-contact02 .btn06 {
	color: #004098;
	background: #FFFFFF;
}

.page-contact03 h3 {
	color: #000000;
    font-size: 20px;font-size: 2.0rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-align: center;
    margin-bottom: 26px;
}

@media only screen and (orientation:landscape) {	
	.form_box {
		color: #000000;
	}
	.form_box dt {
    	width: 25%;
		text-align: left;
    	padding: 5px 0 20px;
    	display: inline-block;
	}
	.form_box dd {
    	width: 74%;
		text-align: left;
		vertical-align: top;
    	padding-bottom: 20px;
    	display: inline-block;
		border-bottom: none;
	}

	.form_box ul.form_checkbox li {
		width: 49%;
		display: inline-block;
	}
	
	.form_button_container form {
		display: block;
	}
	
	.page-contact02 .btn05,
	.page-contact02 .btn06 {
		display: inline-block;
	}
}


/* Privacy policy
-------------------------------------------------------------- */
.page-privacy01 p.page-privacy01-sign {
	text-align: right;
	margin-top: 20px;
}

.page-privacy01 .sc-inner-none {
	margin-top: 50px;
}

.page-privacy01 .sc-inner-bottom,
.page-privacy01 .sc-gray{
	width: auto;
}

.list01.ml45 {
	margin-left: 45px;
}

.page-privacy01 dl.page-privacy01-address {
	color: #000000;
    font-size: 15px;font-size: 1.5rem;
	border-left: 2px solid #00afec;
	margin-left: 8px;
	padding-left: 20px;
}
.page-privacy01 dl.page-privacy01-address dt {
	font-weight: bold;
}

.p-mark__certification{
	display: block;
	text-align: center;
}
.p-mark__certification__text{
	width: 100%;
	text-align: left;
	margin-bottom: 16px;
}
.p-mark__certification img{
	width: 50%;
}



/* Privacy mark
-------------------------------------------------------------- */
.privacy-mark dl.p-mark{
	display: block !important;
	text-align: center;
}
.privacy-mark .p-mark dd br{
	display: none;
}
.privacy-mark .p-mark img{
	margin-left: 0;
	margin-top: 16px;
}



/* Site map
-------------------------------------------------------------- */
.page-sitemap01 {
    font-size: inherit;
	padding: 50px 0 40px;
}

.page-sitemap01 ul li ul {
  margin-top: 1.2em;
  margin-bottom: 1.2em;
  margin-left: 56px;
}
 
.page-sitemap01 ul li ul li {
  margin-bottom: 1.2em;
  position: relative;
}
 
.page-sitemap01 ul li ul li::before {
  content: "";
  position: absolute;
  top: -0.4em;
  left: -28px;
  width: 10px;
  height: calc(100% + 1.2em);
  border-left: 1px solid #00afec;
}
 
.page-sitemap01 ul li ul li:last-child::before {
  height: calc(1em + .25em);
}
 
.page-sitemap01 ul li ul li::after {
  content: "";
  position: absolute;
  top: .8em;
  left: -28px;
  width: 18px;
  border-bottom: 1px solid #00afec;
}



/* ag antiSocial forces
--------------------------------------------------------------*/
.ag-antiSocial-forces01 p.ag-antiSocial-forces01-sign {
	text-align: right;
	margin-top: 20px;
}

.ag-antiSocial-forces01 .sc-inner-none {
	margin-top: 50px;
}

.ag-antiSocial-forces01 .sc-inner-bottom,
.ag-antiSocial-forces01 .sc-gray{
	width: auto;
}

.list01.ml45 {
	margin-left: 45px;
}

.ag-antiSocial-forces01 dl.ag-antiSocial-forces01-address {
	color: #000000;
    font-size: 15px;font-size: 1.5rem;
	border-left: 2px solid #00afec;
	margin-left: 8px;
	padding-left: 20px;
}
.ag-antiSocial-forces01 dl.ag-antiSocial-forces01-address dt {
	font-weight: bold;
}


/* Misc & mixens
-------------------------------------------------------------- */
.clear {
  clear: both;
}
/* clear floats */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.clearfix {
  display: inline-block;
}
html[xmlns] .clearfix {
  display: block;
}
* html .clearfix {
  height: 1%;
}


/* Not Found
-------------------------------------------------------------- */
#not_found .header-container-row,
#timeout .header-container-row {
	height: 120px;
}
#not_found article div.nf-txt-area,
#timeout article div.nf-txt-area {
	width: 96%;
	margin: 0 auto 4rem;
}
#not_found article div h2,
#timeout article div h2 {
	font-size: 4.5rem;
}
#not_found article div img,
#timeout article div img {
	width: 300px;
}
#not_found article div.nf-btn-area,
#timeout article div.nf-btn-area {
	gap: 1.2em;
}
#not_found article button,
#timeout article button {
	order: 1;
}
#not_found article a,
#timeout article a {
	order: 2;
}