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

html {
	font-size: 62.5%;
}

/* --BODY-- */

body {
	font-family: YakuHanJP_Narrow, 'Zen Old Mincho', 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
	font-size: 1.6rem;
	font-weight: 500;
	font-style: normal;
	line-height: 1.9;
	margin: 0 auto;
	padding: 0;
	color: #414141;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'palt' 1;
}

.serif {
	font-family: 'NotoSerifCJKjp-R', 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}

* {
	box-sizing: border-box;
}

/* --OTHER TAGS-- */

a {
	overflow: hidden;
	transition: all .3s ease-out;
	text-decoration: none;
	word-break: break-all;
}

a:hover {
	opacity: .7;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=70);
	-khtml-opacity: .7;
	-moz-opacity: .7;
}

a:link,
a:visited {
	text-decoration: none;
	color: #414141;
}

a:hover {
	text-decoration: none;
	color: #414141;
}

a:active {
	text-decoration: none;
	color: #414141;
}

a img,
img {
	vertical-align: bottom;
	border: 0;
}

abbr,
acronym {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
th,
strong,
var,
i {
	font-weight: normal;
	font-style: normal;
}

blockquote,
dd,
div,
dl,
dt,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
span,
td,
th,
ul,
figure {
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.5;
}

caption,
th {
	text-align: left;
}

code,
kbd,
pre,
samp,
tt {
	font-family: monospace;
	line-height: 100%;
}

/* for IE7 */

* + html code,
kbd,
pre,
samp,
tt {
	font-size: 108%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

ol,
ul {
	list-style: none;
}

q:before,
q:after {
	content: '';
}

/* form */

button,
fieldset,
form,
input,
label,
legend,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	font-weight: inherit;
	font-style: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

/* tables still need 'cellspacing="0"' */

table {
	font-size: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

section,
article,
aside,
hgroup,
header,
footer,
nav,
figure,
figcaption,
summary {
	display: block;
}

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

.js-fadein {
	transition: all 1s ease-out;
	opacity: 0;
}

.js-fade {
	opacity: 1;
}

.loader-wrap {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff url(../img/common/logo.webp) center center no-repeat;
	background-size: 20vw auto;
}

.loader {
	position: absolute;
	top: 50%;
	left: calc(50% - 200px);
	display: block;
	overflow: hidden;
	width: 100px;
	height: 100px;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	white-space: nowrap;
	text-indent: 100%;
	opacity: 0;
	background-size: 100% auto;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=0);
	-khtml-opacity: 0;
	-moz-opacity: 0;
}

.vis .loader {
	animation-name: roadingAnime2;
	animation-duration: .5s;
}

/*
* #Header
*/

header {
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 2.71429vw;
	transition: all .3s ease-out;
}

.header-inner {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.header-left {
	width: 20.71429vw;
}

.headerNav__list {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.headerNav__list > li {
	position: relative;
}

.headerNav__list > li > a {
	font-size: 1.28571vw;
	margin-left: 1.42857vw;
}

.spNavBtn__btn {
	position: fixed;
	z-index: 110;
	top: 0;
	right: 0;
	display: none;
}

.spNavBtn__btn a {
	position: relative;
	display: block;
	width: 14.28571vw;
	height: 14.28571vw;
	text-align: center;
	text-indent: -9999px;
	opacity: 1;
	background: #f0560b;
	background: linear-gradient(90deg, #f0560b 0%, #f0c20b 100%);
}

.spNavBtn__btn a:after {
	position: absolute;
	top: 50%;
	left: 30%;
	display: block;
	width: 40%;
	height: 2px;
	content: '';
	transition: all .3s ease-out;
	background: #fff;
}

.open .spNavBtn__btn a:after {
	opacity: 0;
}

.spNavBtn__btn a span:before,
.spNavBtn__btn a span:after {
	position: absolute;
	left: 30%;
	display: block;
	width: 40%;
	height: 2px;
	content: '';
	transition: all .3s ease-out;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	background: #fff;
}

.open .spNavBtn__btn a span:before,
.open .spNavBtn__btn a span:after {
	top: 50% !important;
	left: 50% !important;
	width: 30% !important;
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.spNavBtn__btn a span:before {
	top: 35%;
}

.open .spNavBtn__btn a span:before {
	-ms-transform: rotate(-135deg) translate(-50%, -50%);
	transform: rotate(-135deg) translate(-50%, -50%);
}

.spNavBtn__btn a span:after {
	top: 65%;
}

.open .spNavBtn__btn a span:after {
	-ms-transform: rotate(135deg) translate(-50%, -50%);
	transform: rotate(135deg) translate(-50%, -50%);
}

.spNavBtn__btn a:hover {
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.spNavBtn__btn a:hover:after {
	left: 35%;
	width: 30%;
}

.spNavBtn__btn a:hover span:before,
.spNavBtn__btn a:hover span:after {
	left: 35%;
	width: 30%;
}

.open .spNavBtn__btn a:hover span:before,
.open .spNavBtn__btn a:hover span:after {
	width: 40% !important;
}

.spNavBtn__btn a:hover span:before {
	top: 40%;
}

.spNavBtn__btn a:hover span:after {
	top: 60%;
}

.open .spNavBtn__btn a {
	color: #747474;
	background: #747474;
}

#top .headerNav__list > li#gn1 a:after,
#products .headerNav__list > li#gn2 a:after,
#company .headerNav__list > li#gn3 a:after,
#info .headerNav__list > li#gn4 a:after {
	width: 100%;
	color: #1f64aa;
}

/**
 * #Footer
 */

.copyright {
	text-align: center;
}

/**
 * #Main
 */

#container {
	overflow: hidden;
}

.contents {
	padding-top: 15vw;
}

.frame-wrapper__video {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}

.frame-wrapper__video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/**
 * #Breadcrumbs
 */

.breadcrumb {
	position: relative;
}

.breadcrumb ul {
	display: -ms-flexbox;
	display: flex;
}

.breadcrumb li {
	position: relative;
	margin-right: 10px;
	padding-right: 20px;
	white-space: nowrap;
}

.breadcrumb li:after {
	position: absolute;
	top: 49%;
	right: 0;
	display: block;
	width: 12px;
	height: 1px;
	content: '';
	background: #000;
}

.breadcrumb li:last-child {
	overflow: hidden;
	text-overflow: ellipsis;
}

.breadcrumb li:last-child:after {
	content: none;
}

/**
 * #btn
 */

.btn {
	text-align: center;
}

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	position: relative;
	display: inline-block;
	width: 21.42857vw;
	padding: .71429vw 1.78571vw;
	text-align: left;
	color: #414141;
	border: none;
	background: url(../img/common/arr2_green.webp) .71429vw center no-repeat;
	background-size: .42857vw auto;
}

.btn a:after,
.btn input[type='submit']:after,
.btn input[type='button']:after,
.btn button:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 2px;
	content: '';
	background: #8cb936;
}

.btn a:hover,
.btn input[type='submit']:hover,
.btn input[type='button']:hover,
.btn button:hover {
	background-position: 1.07143vw center;
}

.btn a:hover:after,
.btn input[type='submit']:hover:after,
.btn input[type='button']:hover:after,
.btn button:hover:after {
	animation-name: btn_ani;
	animation-duration: .5s;
	animation-timing-function: linear;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
}

.btn input[type='submit'],
.btn input[type='button'] {
	border-bottom: 2px solid #8cb936;
}

.err {
	font-weight: 700;
	color: #ed1b24;
}

.pagettl {
	margin-top: 180px;
	padding-top: 70px;
	padding-bottom: 30px;
	background: #ffe361;
	background: linear-gradient(90deg, #ffe361 0%, #ffaf61 100%);
}

.pagettl__ttl {
	margin-bottom: 50px;
}

.pagettl__ttl span {
	display: block;
}

.pagettl__ttl .eng {
	font-size: 20px;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1;
	position: relative;
}

.pagettl__ttl .jpn {
	font-size: 40px;
	font-size: 4rem;
	font-weight: 700;
}

.heading1 .eng {
	margin-bottom: .71429vw;
}

.heading1 .eng span {
	font-size: 2.85714vw;
	font-weight: bold;
	line-height: 1;
	display: inline-block;
	padding: .35714vw 2.85714vw;
	color: #fff;
	background: #8cb936;
}

.heading1 .jpn {
	font-size: 3.21429vw;
	line-height: 1.4;
}

.heading2 {
	font-size: 1.78571vw;
	margin-bottom: 1.07143vw;
}

.heading3 {
	font-size: 1.78571vw;
	margin-bottom: 1.42857vw;
	padding-bottom: .92857vw;
	text-align: center;
	background: url(../img/common/heading3_bg.webp) center bottom no-repeat;
	background-size: 6.78571vw auto;
}

.heading4 {
	font-size: 1.78571vw;
	margin-bottom: 1.42857vw;
	padding-bottom: .92857vw;
	padding-left: 1.42857vw;
	background: url(../img/common/heading4_bg.webp) left bottom no-repeat;
	background-size: 6.35714vw;
}

.scroll_icon {
	display: none;
}

/**
 * #Col
 */

.section {
	margin-right: auto;
	margin-left: auto;
	padding-right: 3.57143vw;
	padding-left: 3.57143vw;
}

.w600 {
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}

.w700 {
	width: 700px;
	margin-right: auto;
	margin-left: auto;
}

.w800 {
	width: 800px;
	margin-right: auto;
	margin-left: auto;
}

.w900 {
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
}

.w1200 {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}

.flex {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flex.align-c {
	-ms-flex-align: center;
	align-items: center;
}

.flex._revease {
	flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
}

.flex._revease .grid2 {
	margin-right: 0;
}

.flex._revease .grid2:nth-child(2n) {
	margin-right: 6%;
}

.flex._between {
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.flex._start {
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.flex._j-center {
	-ms-flex-pack: center;
	justify-content: center;
}

.flex._mb > * {
	margin-bottom: 50px;
}

.grid2 {
	width: 47%;
	margin-right: 6%;
}

.grid2:nth-child(2n) {
	margin-right: 0;
}

.grid3 {
	width: 31%;
	margin-right: 3.5%;
}

.grid3:nth-child(3n) {
	margin-right: 0;
}

.grid4 {
	width: 22%;
	margin-right: 4%;
}

.grid4:nth-child(4n) {
	margin-right: 0;
}

.grid7 {
	width: 65.5%;
}

.grid3_1 {
	width: 35%;
	margin-right: 4%;
}

.grid3_2 {
	width: 61%;
}

/**
 * #Position
 */

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

/**
 * #Margin
 */

.mb-xs {
	margin-bottom: .71429vw;
}

.mb-s {
	margin-bottom: 1.42857vw;
}

.mb-m {
	margin-bottom: 3.57143vw;
}

.mb-l {
	margin-bottom: 5.71429vw;
}

.mb-xl {
	margin-bottom: 7.14286vw;
}

.mb-xxl {
	margin-bottom: 10.71429vw;
}

.pb-xs {
	padding-bottom: .71429vw;
}

.pb-s {
	padding-bottom: 1.42857vw;
}

.pb-m {
	padding-bottom: 3.57143vw;
}

.pb-l {
	padding-bottom: 5.71429vw;
}

.pb-xl {
	padding-bottom: 7.14286vw;
}

.pb-xxl {
	padding-bottom: 10.71429vw;
}

.pt-xs {
	padding-top: .71429vw;
}

.pt-s {
	padding-top: 1.42857vw;
}

.pt-m {
	padding-top: 3.57143vw;
}

.pt-l {
	padding-top: 5.71429vw;
}

.pt-xl {
	padding-top: 7.14286vw;
}

.pt-xxl {
	padding-top: 10.71429vw;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.ptb-l {
	padding-top: 100px;
	padding-bottom: 100px;
}

/**
 * #Text
 */

.text_s {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

.text_m {
	font-size: 18px;
	font-size: 1.8rem;
}

.text_l {
	font-size: 19px;
	font-size: 1.9rem;
}

.text_red {
	color: #de2900;
}

.text_blue {
	color: #1f64aa;
}

.bold {
	font-weight: 700;
}

.text-line {
	text-decoration: underline;
}

a.link_orange {
	text-decoration: underline;
	color: #f06d0b;
}

.lh15 {
	line-height: 1.5;
}

.lh16 {
	line-height: 1.6;
}

.lh20 {
	line-height: 2.0;
}

.lh25 {
	line-height: 2.5;
}

/**
 * #Display
 */

.pc {
	display: inline;
}

.tablet {
	display: none;
}

.map iframe {
	width: 100%;
	height: 35.71429vw;
}

.pageNavList {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

._medical .pageNavList {
	-ms-flex-pack: center;
	justify-content: center;
}

.pageNavList li {
	margin-left: 35px;
}

.pageNavList li a {
	font-size: 20px;
	font-size: 2rem;
	position: relative;
	padding-right: 30px;
	text-decoration: underline;
}

.pageNavList li a:hover:after {
	animation-name: arr_animation2;
	animation-duration: .4s;
	animation-timing-function: ease-in;
	animation-iteration-count: 1;
}

.pageNavList li a:after {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 22px;
	height: 22px;
	content: '';
	-ms-transform: translate(0, -50%) rotate(90deg);
	transform: translate(0, -50%) rotate(90deg);
	border: 1px solid #000;
	border-radius: 50%;
	background: url(../img/common/arr2.webp) 9px 7px no-repeat;
	background-size: 5px auto;
}

.dl-1 {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.dl-1 dt,
.dl-1 dd {
	line-height: 1.5;
}

.dl-1 dt {
	width: 150px;
}

.dl-1 dd {
	width: calc(100% - 150px);
	margin-bottom: 10px;
}

.eng {
	font-family: 'League Script', cursive;
	font-weight: 400;
	font-style: normal;
}

.table-1 {
	width: 100%;
	border-top: 1px solid #dbdbdb;
}

.table-1 th,
.table-1 td {
	line-height: 1.7;
	padding: 15px 20px;
	vertical-align: top;
	border-bottom: 1px solid #dbdbdb;
}

.table-1 th {
	position: relative;
	padding-left: 1.85714vw;
}

.table-1 th:after {
	position: absolute;
	top: 1.64286vw;
	left: .71429vw;
	display: block;
	width: .71429vw;
	height: .71429vw;
	content: '';
	border-radius: 50%;
	background: #8cb936;
}

.table-1 td {
	position: relative;
}

.table-1._gray th,
.table-1._gray td {
	background: #f8f8f8;
}

.table-2 {
	width: 100%;
	border-top: 1px solid #dbdbdb;
}

.table-2 th,
.table-2 td {
	position: relative;
	padding: 15px 20px;
	vertical-align: top;
	border-bottom: 1px solid #dbdbdb;
}

.table-2 th {
	text-align: right;
	white-space: nowrap;
}

.table-2 td {
	position: relative;
	padding-left: 60px;
}

.table-2 td:after {
	position: absolute;
	top: 28px;
	left: 0;
	display: block;
	width: 40px;
	height: 2px;
	content: '';
	background: #ffaf61;
}

.table-3 {
	width: 100%;
	background: #fff;
}

.table-3 th,
.table-3 td {
	line-height: 1.6;
	padding: 10px 15px;
	border: 1px solid #dbdbdb;
}

.table-3 th {
	background: #f9f9f9;
}

.policy-group_txt {
	text-align: center;
}

.policy-group_txt img {
	width: 100%;
	max-width: 619px;
}

.policy-rinen_txt {
	text-align: center;
}

.policy-rinen_txt ul {
	display: inline-block;
}

.policy-rinen_txt ul li {
	text-align: left;
}

.policy-sisin_txt_item {
	margin-right: 100px;
}

.policy-sisin_txt_item:last-child {
	margin-right: 0;
}

/*------------ common ------------*/

.icon1 {
	position: relative;
	padding-left: 1.07143vw;
}

.icon1:after {
	position: absolute;
	top: .71429vw;
	left: 0;
	display: block;
	width: .71429vw;
	height: .71429vw;
	content: '';
	border-radius: 50%;
	background: #8cb936;
}

.list1 {
	line-height: 1.6;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.list1:before {
	position: absolute;
	z-index: 1;
	top: .71429vw;
	left: 15.38571vw;
	display: block;
	width: 1px;
	height: 100%;
	content: '';
	background: #b1b1b1;
}

.list1:last-child:before {
	content: none;
}

.list1 dt {
	position: relative;
	width: 14vw;
	text-align: right;
}

.list1 dt:after {
	position: absolute;
	z-index: 2;
	top: .57143vw;
	right: -1.78571vw;
	display: block;
	width: .78571vw;
	height: .78571vw;
	content: '';
	border-radius: 50%;
	background: #8cb936;
}

.list1 dd {
	width: 39.5vw;
	padding-bottom: 1.42857vw;
}

.bg1 {
	background: #f9f9f9;
}

.u-line {
	text-decoration: underline;
}

/*------------ top ------------*/

.top-fv_imgs {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.top-fv_imgs > p {
	width: 50%;
}

.top-fv_img1 {
	margin-top: -2.85714vw;
}

.top-fv_img2 {
	padding-top: 12.71429vw;
}

.top-mes {
	background: url(../img/top/intro_bg.webp) center bottom no-repeat;
	background-size: 100% auto;
}

.top-mes_cont {
	position: relative;
	z-index: 5;
}

.top-mes_img1 {
	margin-bottom: 7.42857vw;
}

.top-mes_img1 img {
	width: 29.5vw;
}

.top-mes_img2 {
	text-align: right;
}

.top-mes_img2 img {
	width: 32.64286vw;
}

.top-mes_txt {
	font-size: 1.28571vw;
	line-height: 2.2;
}

.top-intro_bg img {
	width: 100%;
}

.top-news_ttl {
	width: 23.57143vw;
}

.top-news_cont {
	width: calc(100% - 23.57143vw);
}

.top-news_cont_inner {
	overflow-y: scroll;
	height: 20vw;
}

.top-news_item {
	margin-bottom: 1.42857vw;
}

.top-news_item a {
	font-size: 1.28571vw;
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.top-news_item a .top-news_item_time {
	width: 9.28571vw;
}

.top-news_item a .top-news_item_ttl {
	overflow: hidden;
	width: calc(100% - 9.28571vw);
	white-space: nowrap;
	text-decoration: underline;
	text-overflow: ellipsis;
}

.top-news_item a .top-news_item_ttl ._icon {
	position: relative;
	padding-right: 2.14286vw;
}

.top-news_item a .top-news_item_ttl ._icon:after {
	position: absolute;
	top: .57143vw;
	right: 0;
	display: block;
	width: 1.14286vw;
	content: '';
	background: url(../img/common/icon_blank.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 16 / 13;
}

.top-bus_inrto {
	position: relative;
	z-index: 8;
}

.top-bus_ttl {
	font-size: 3.21429vw;
	line-height: 2;
	margin-top: 6.42857vw;
	margin-bottom: 3.57143vw;
}

.top-bus_imgs {
	position: relative;
}

.top-bus_img1 {
	position: absolute;
	top: 0;
	left: 0;
	width: 21.21429vw;
}

.top-bus_img2 {
	position: absolute;
	top: 18.35714vw;
	right: 0;
	width: 21.28571vw;
}

.top-bus_img3 {
	position: absolute;
	top: 36.57143vw;
	left: 7.14286vw;
	width: 22.85714vw;
}

.top-bus_fea {
	background: url(../img/top/fea_bg.webp) center center no-repeat;
	background-size: cover;
}

.top-bus_fea_item {
	position: relative;
	z-index: 8;
	padding: 2.14286vw 3.57143vw;
}

.top-bus_fea_item:after {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	background: rgba(255, 255, 255, .7);
	filter: blur(.71429vw);
}

.top-bus_flow_img {
	text-align: center;
}

.top-bus_list {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.top-bus_list._list1 {
	flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
}

.top-bus_list._list2 {
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.top-bus_item {
	width: 30.5%;
	height: 37vw;
	margin-left: 4.25%;
	padding: 2.5vw 2.5vw 4.28571vw;
	background: #fff;
	box-shadow: 0 0 .71429vw rgba(0, 0, 0, .2);
}

._list1 .top-bus_item:last-child {
	margin-left: 0;
}

._list2 .top-bus_item:first-child {
	margin-left: 0;
}

.top-bus_item._item2 {
	margin-top: 17.85714vw;
}

.top-bus_item._item3 {
	margin-top: 35.71429vw;
}

.top-bus_item._item4 {
	margin-top: -11.78571vw;
}

.top-bus_item_icon {
	margin-bottom: 1.07143vw;
	text-align: center;
}

.top-bus_item_icon img {
	height: 9.21429vw;
}

.top-bus_lists {
	position: relative;
}

.top-bus_lists:after {
	position: absolute;
	z-index: -2;
	top: 7.14286vw;
	left: 0;
	display: block;
	width: 100%;
	height: calc(100% - 7.14286vw*2);
	content: '';
	background: url(../img/top/bus_list_bg.webp) center center no-repeat;
	background-size: cover;
}

.top-bus_other_slide {
	margin-bottom: 3.57143vw;
}

.top-bus_other_slide_item {
	width: 57.14286vw;
}

.top-bus_other_slide_nav_item {
	width: 20vw;
}

.top-company .section {
	position: relative;
	z-index: 3;
}

.top-company_txt {
	position: relative;
	padding-right: 22.5vw;
}

.top-company_txt_img {
	position: absolute;
	top: 0;
	right: 0;
	width: 20vw;
}

.top-company_ceo_img {
	width: 70%;
	margin-top: 3.57143vw;
}

.top-company_ceo {
	line-height: 1.6;
	text-align: right;
}

.top-company_ceo ._large {
	font-size: 1.64286vw;
}

.top-sdgs {
	background: url(../img/top/sdgs_bg.webp) right top no-repeat;
	background-size: 57.35714vw auto;
}

.top-sdgs .section {
	position: relative;
	z-index: 3;
}

.top-sdgs_logo img {
	width: 46.71429vw;
}

.top-sdgs_box {
	width: 59.28571vw;
}

.top-sdgs_box_cont {
	width: 39.28571vw;
}

.top-sdgs_box_img {
	width: 16.92857vw;
}

.top-sdgs_box_img img {
	box-shadow: 0 0 1.42857vw rgba(0, 0, 0, .1);
}

.top-sdgs_flow_list_item {
	position: relative;
	width: 15%;
	text-align: center;
}

.top-sdgs_flow_list_item:after {
	position: absolute;
	top: 3.57143vw;
	right: -2vw;
	display: block;
	width: 1.78571vw;
	content: '';
	background: url(../img/common/arr_bik.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 1 / 1;
}

.top-sdgs_flow_list_item:last-child:after {
	content: none;
}

.top-sdgs_flow_list_item ._icon img {
	height: 9.21429vw;
}

.fancybox-content {
	width: 800px;
}

.fancybox-close-small {
	display: none !important;
}

.news-modal {
	max-width: 800px;
}

.news-modal_ttl {
	font-size: 1.42857vw;
	margin-bottom: .71429vw;
}

.news-body {
	min-height: 17.85714vw;
	margin-bottom: 2.14286vw;
}

.slider.swiper {
	overflow: visible;
}

.slider .swiper-slide {
	width: 57.14286vw !important;
	margin-right: 1.78571vw;
	margin-left: 1.78571vw;
}

.slider-thumbnail {
	margin-top: 3.57143vw;
}

.slider-thumbnail .swiper-slide {
	width: 20vw;
	margin-right: 1.07143vw;
	margin-left: 1.07143vw;
	cursor: pointer;
	transition: opacity .5s;
	opacity: .5;
}

.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
	opacity: 1;
}

.slider-thumbnail .swiper-wrapper {
	-ms-flex-pack: center;
	justify-content: center;
}

.top-bus_other_wrap .swiper-button-next,
.top-bus_other_wrap .swiper-button-prev {
	width: 2.85714vw !important;
	height: 2.85714vw !important;
	text-indent: 9999px;
	border-radius: 50%;
	background: #1f64aa;
	box-shadow: 0 0 .71429vw rgba(0, 0, 0, .3);
}

.top-bus_other_wrap .swiper-button-next:after,
.top-bus_other_wrap .swiper-button-prev:after {
	position: absolute;
	display: block;
	width: 100% !important;
	height: 100% !important;
	content: '' !important;
	border-radius: 50%;
	background: url(../img/common/arr_white.webp) center center no-repeat;
	background-size: 50% auto;
	aspect-ratio: 1 / 1;
}

.top-bus_other_wrap .swiper-button-next {
	right: -1.42857vw;
}

.top-bus_other_wrap .swiper-button-prev {
	left: -1.42857vw;
}

.top-bus_other_wrap .swiper-button-prev:after {
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.top-bus_other {
	overflow: hidden;
}

.top-bus_other_wrap {
	width: 57.14286vw;
	margin-right: auto;
	margin-left: auto;
}

.top-bus_slide_item {
	width: 21.42857vw;
}

/*------------ contact ------------*/

.contact-table th {
	position: relative;
}

.contact-table th ._required {
	position: absolute;
	top: 1.42857vw;
	right: 1.42857vw;
}

input[type='text'],
input[type='tel'],
input[type='email'],
textarea {
	width: 100%;
	padding: .57143vw;
	border: none;
	background: #ececec;
}

input[type='text']#zip,
input[type='text']#pref,
input[type='tel']#zip,
input[type='tel']#pref,
input[type='email']#zip,
input[type='email']#pref,
textarea#zip,
textarea#pref {
	width: 14.28571vw;
}

input[type='text']#city,
input[type='text']#addr,
input[type='text']#other,
input[type='tel']#city,
input[type='tel']#addr,
input[type='tel']#other,
input[type='email']#city,
input[type='email']#addr,
input[type='email']#other,
textarea#city,
textarea#addr,
textarea#other {
	width: 70%;
}

.zip li {
	margin-bottom: .71429vw;
}

.zip li:last-child {
	margin-bottom: 0;
}

textarea {
	height: 10.71429vw;
}

.zip_list li {
	margin-bottom: .71429vw;
}

.zip_list li:last-child {
	margin-bottom: 0;
}

.select_wrap {
	display: inline-block;
	border: 1px solid #656565;
	border-radius: 5px;
	background: url(../img/common/select_bg.webp) right center no-repeat;
	background-size: 20px auto;
}

.no-webp .select_wrap {
	background-image: url(../img/common/select_bg.jpg);
}

.select_wrap select {
	width: 200px;
	padding: 0 30px 0 10px;
	border: none;
	background: 0 0;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

._required {
	font-size: 1vw;
	font-weight: normal;
	line-height: 1;
	display: inline-block;
	padding: .21429vw .5vw;
	color: #fff;
	background: #ec9101;
}

._required._none {
	background: #acacac;
}

.pp_box {
	border: 1px solid #eee;
}

.pp_box__ttl {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}

.pp_box__inner {
	overflow-y: scroll;
	height: 14.28571vw;
	padding: .71429vw;
	border-top: none;
}

.contents {
	position: relative;
}

.line1 {
	position: absolute;
	z-index: 6;
	top: 69vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line1.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 1400 / 2276;
}

.line2 {
	position: absolute;
	z-index: 6;
	top: 280vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line2.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 1400 / 1155;
}

.line3 {
	position: absolute;
	z-index: -1;
	top: 436.5vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line3.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 1400 / 2870;
}

.line4 {
	position: absolute;
	z-index: 2;
	top: 685vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line4.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 1400 / 6128;
}

.line1_sp {
	position: absolute;
	z-index: 2;
	top: 59vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line1_sp.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 750 / 2837;
}

.line2_sp {
	position: absolute;
	z-index: 2;
	top: 709vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line2_sp.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 750 / 3498;
}

.line3_sp {
	position: absolute;
	z-index: -1;
	top: 1245vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line3_sp.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 750 / 2990;
}

.line4_sp {
	position: absolute;
	z-index: 1;
	top: 1724vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line4_sp.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 750 / 2089;
}

.line5_sp {
	position: absolute;
	z-index: 1;
	top: 2042vw;
	left: 0;
	width: 100%;
	pointer-events: none;
	background: url(../img/top/bg_line5_sp.webp) center top no-repeat;
	background-size: 100vw auto;
	aspect-ratio: 750 / 15327;
}

.top-contact {
	background: url(../img/top/illust_btm.webp) left 5.35714vw bottom no-repeat;
	background-size: 19.14286vw auto;
}

.zoom_icon {
	position: relative;
	display: block;
	overflow: visible;
}

.zoom_icon:after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 3.57143vw;
	height: 3.57143vw;
	content: '';
	transition: all .3s ease-out;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	opacity: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, .4) url(../img/common/icon_zoom.webp) center center no-repeat;
	background-size: 40% auto;
}

.zoom_icon:hover:after {
	opacity: 1;
}

.postMain {
	width: 73%;
}

.wp-side {
	width: 24%;
	margin-right: 4%;
}

.wp-side .heading__medium {
	font-size: 17px;
	font-size: 1.7rem;
}

.wp-side .heading__medium:after {
	top: 18px;
}

.post_wrap {
	flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
}

.post_wrap .heading__large {
	text-align: left;
}

.post_wrap .heading__large span {
	display: block;
}

.post_main {
	width: 72%;
}

.post_main .heading_medium {
	text-align: left;
	background-position: 0 0;
}

.post_main .heading_medium:after {
	left: 0;
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

.post_main .heading_medium a {
	color: #1f64aa;
}

.wp-postItem {
	position: relative;
	margin-bottom: 50px;
}

.wp-postItem .heading__large {
	margin-bottom: 15px;
}

.wp-postItem .flex {
	-ms-flex-align: center;
	align-items: center;
}

.postListBox__ttl {
	font-size: 30px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 20px;
	padding-bottom: 10px;
	background: url(../img/common/line1.png) center bottom 0 repeat-x;
	background-size: 14px auto;
}

.wp-postItem__img {
	width: 30%;
	margin-right: 3%;
}

.wp-postItem__txt {
	width: 67%;
}

.wp-postItem__btn {
	position: absolute;
	right: 0;
	bottom: 0;
}

.wp-postItem__btn span {
	font-weight: bold;
	line-height: 1.4;
	position: relative;
	display: inline-block;
	min-width: 130px;
	padding: 3px 20px 5px;
	color: #fff;
	background: #f06d0b;
}

.wp-postItem__btn span:after {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 40px;
	height: 100%;
	content: '';
	transition: all .2s ease-out;
	-ms-transform: translate(50%, 0);
	transform: translate(50%, 0);
	background: url(../img/common/arr_blue.png) 0 center no-repeat;
	background-size: 100% auto;
}

.wp-postItem__ttl {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 6px;
}

.wp-postSingle__ttl {
	font-size: 30px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 12px;
}

.wp-postItem__times {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.wp-postItem__times._single {
	margin-bottom: 50px;
}

.wp-postItem__date .categoryList__item {
	display: inline-block;
}

.categoryList__item {
	line-height: 1.5;
	display: inline-block;
	min-width: 100px;
	margin-bottom: 8px;
	padding: 1px 10px;
	text-align: center;
	vertical-align: 0;
	color: #fff;
	background: #b68e52;
}

.wp-postItem__time {
	display: inline-block;
	margin-right: 20px;
	vertical-align: top;
}

.post-categories {
	display: inline-block;
}

.post-categorie {
	font-size: 14px;
	font-size: 1.4rem;
	display: inline;
	min-width: 100px;
	margin-right: 10px;
	padding: 4px 10px;
	vertical-align: 3px;
	color: #fff;
	border-radius: 5px;
	background: #1f64aa;
}

.sideBox {
	padding-bottom: 50px;
}

.sideBox__ttl {
	font-size: 23px;
	font-size: 2.3rem;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 20px;
}

.sideBox__ttl .eng {
	font-size: 20px;
	font-size: 2rem;
	color: #1f64aa;
}

.sideBox__list {
	line-height: 1.5;
}

.sideBox__list > li {
	margin-bottom: 10px;
}

.sideBox__list > li > a {
	position: relative;
	display: block;
	padding-left: 16px;
	padding-left: 15px;
}

.sideBox__list > li > a:after {
	position: absolute;
	top: 50%;
	top: 6px;
	right: 15px;
	right: auto;
	left: 0;
	display: block;
	width: 28px;
	width: 11px;
	height: 28px;
	height: 11px;
	content: '';
	-ms-transform: translate(0, -50%);
	-ms-transform: translate(0, 0);
	transform: translate(0, -50%);
	transform: translate(0, 0);
	border: 1px solid #fff;
	border-radius: 50%;
	background: url(../img/common/arrow1_white.webp) left 50% center no-repeat;
	background-size: 56% auto;
}

.no-webp .sideBox__list > li > a:after {
	background-image: url(../img/common/arr_blue.png);
}

.sideBox__list .children {
	padding-left: 20px;
}

.sideBox__list .children li {
	position: relative;
	margin-top: 5px;
	padding-left: 10px;
}

.sideBox__list .children li:after {
	position: absolute;
	top: 9px;
	left: 0;
	display: block;
	width: 6px;
	height: 6px;
	content: '';
	color: #1f64aa;
	border-radius: 50%;
	background: #1f64aa;
}

.sideBox__list .children li a {
	display: block;
}

.postBody h2 {
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	font-weight: bold;
	position: relative;
	clear: both;
	margin-top: 40px;
	padding: 10px 15px;
	color: #fff;
	background: #747474;
}

.postBody h3 {
	font-size: 21px;
	font-size: 2.1rem;
	font-weight: bold;
	clear: both;
	margin-top: 40px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 0;
	border-top: 2px solid #747474;
	border-bottom: 2px solid #747474;
	background-color: transparent;
	background-image: none;
}

.postBody h4 {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	clear: both;
	margin-top: 40px;
	padding: 14px 20px;
	border-bottom: none;
	background: #f9f9f9;
}

.postBody h5 {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	clear: both;
	margin-top: 40px;
	padding-bottom: 5px;
	border-bottom: 1px solid #747474;
}

.postBody h6 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	clear: both;
	margin-top: 40px;
	padding-left: 16px;
}

.postBody h6:after {
	position: absolute;
	top: 2px;
	left: 0;
	display: block;
	width: 7px;
	height: 23px;
	content: '';
	background: #747474;
}

.postBody p {
	clear: both;
	margin-top: 20px;
}

.postBody ul {
	margin-top: 20px;
}

.postBody ul li {
	font-weight: bold;
	position: relative;
	margin-bottom: 5px;
	padding-left: 18px;
}

.postBody ul li:before {
	position: absolute;
	top: 12px;
	left: 0;
	display: block;
	width: 12px;
	height: 4px;
	content: '';
}

.postBody img,
.postBody video,
.postBody iframe {
	max-width: auto;
	height: auto;
}

.postBody strong {
	font-weight: bold;
}

.postBody .alignleft {
	float: left;
	margin: .5em 1em .5em 0;
}

.postBody .aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.postBody .alignright {
	float: right;
	margin: .5em 0 .5em 1em;
}

.postBody a {
	text-decoration: underline;
	color: #1f64aa;
}

.postBody .ez-toc-list li:before {
	content: none;
}

.postBody .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.postBody .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.pager_wrap {
	padding-top: 50px;
}

.pager {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: center;
	justify-content: center;
}

.pager .page-numbers {
	font-family: 'League Script', cursive;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 400;
	font-style: normal;
	line-height: 50px;
	display: inline-block;
	min-width: 50px;
	height: 50px;
	margin: 0 5px;
	text-align: center;
	vertical-align: top;
}

.pager .page-numbers:hover,
.pager .page-numbers.current {
	text-decoration: underline;
	color: #1f64aa;
}

.pager .page-numbers.prev,
.pager .page-numbers.next {
	position: relative;
	transition: all .2s ease-out;
	text-indent: -9999px;
}

.pager .page-numbers.prev:after,
.pager .page-numbers.next:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 10px;
	width: 46px;
	height: 10px;
	height: 46px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border-radius: 50%;
	background: url(../img/common/arrow1_white.webp) center center no-repeat;
	background-size: 100% auto;
	background-size: 18px auto;
}

.no-webp .pager .page-numbers.prev:after,
.no-webp .pager .page-numbers.next:after {
	background-image: url(../img/common/arrow1_white.png);
}

.no-webp .pager .page-numbers.prev:after,
.no-webp .pager .page-numbers.next:after {
	background-image: url(../img/common/arr_white.png);
}

.pager .page-numbers.prev:hover:after,
.pager .page-numbers.next:hover:after {
	background-image: url(../img/common/arr_white.webp);
}

.no-webp .pager .page-numbers.prev:hover:after,
.no-webp .pager .page-numbers.next:hover:after {
	background-image: url(../img/common/arr_white.png);
}

.pager .page-numbers.prev {
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.wp-paging:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: '.';
}

.wp-paging .prev {
	float: left;
}

.wp-paging .prev a span {
	padding-right: 0;
	padding-left: 80px;
}

.wp-paging .prev a span:before {
	right: auto;
	left: 0;
}

.wp-paging .prev a span:after {
	right: auto;
	left: 0;
	-ms-transform: scale(-1, 1) translate(0, -50%);
	transform: scale(-1, 1) translate(0, -50%);
}

.wp-paging .prev a:hover span:after {
	animation-name: arrAnime2;
	animation-duration: .5s;
	animation-timing-function: ease-in;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: backwards;
}

.wp-paging .next {
	float: right;
}

.blog-footcv {
	position: relative;
}

.blog-footcv:after {
	position: absolute;
	top: 60px;
	right: 10px;
	display: block;
	width: 170px;
	height: 213px;
	content: '';
	background: url(../img/common/illust_family) 0 0 no-repeat;
	background-size: 100% auto;
}

.blog-footcv__btns .btn {
	margin-bottom: 10px;
}

.blog-footcv__btns .btn a {
	width: 100%;
	min-width: auto;
	padding-top: 15px;
	padding-bottom: 15px;
}

@media only screen and (max-width: 1230px) {

.w1200 {
	max-width: auto;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

@media only screen and (max-width: 1100px) {

body {
	font-size: 1.14286vw;
}

.breadcrumb li {
	margin-right: .71429vw;
	padding-right: 1.42857vw;
}

.breadcrumb li:after {
	width: .85714vw;
}

.pagettl {
	margin-top: 12.85714vw;
	padding-top: 5vw;
	padding-bottom: 2.14286vw;
}

.pagettl__ttl {
	margin-bottom: 3.57143vw;
}

.pagettl__ttl .eng {
	font-size: 1.42857vw;
}

.pagettl__ttl .jpn {
	font-size: 2.85714vw;
}

.text_s {
	font-size: 1vw;
}

.text_m {
	font-size: 1.28571vw;
}

.table-1 th,
.table-1 td {
	padding: 1.07143vw 1.42857vw;
}

.table-2 th,
.table-2 td {
	padding: 1.07143vw 1.42857vw;
}

.table-2 td {
	padding-left: 4.28571vw;
}

.table-2 td:after {
	top: 2vw;
	width: 2.85714vw;
	height: 2px;
}

.table-3 th,
.table-3 td {
	padding: .71429vw 1.07143vw;
}

}

@media only screen and (max-width: 1000px) {

.blog-footcv:after {
	top: -80px;
}

.blog-footcv__flex {
	display: block;
}

.blog-footcv__flex > div:first-child {
	margin-bottom: 30px;
}

.blog-footcv__flex .grid2 {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
}

.blog-footcv__btns {
	padding-right: 10%;
	padding-left: 10%;
}

}

@media only screen and (max-width: 930px) {

.w900 {
	max-width: auto;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

@media only screen and (max-width: 830px) {

.w800 {
	width: auto;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

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

body {
	font-size: 3.57143vw;
}

.loader-wrap {
	background-size: 60vw auto;
}

.header-inner {
	display: block;
}

.header-left {
	width: 55%;
}

.headerNav__list {
	display: block;
}

.hab-nav {
	position: fixed;
	z-index: 100;
	top: 0;
	left: -100vw;
	overflow: auto;
	width: 100vw;
	height: 100vh;
	padding: 19.04762vw 7.14286vw 7.14286vw;
	transition: all .2s ease-out;
	background: #fff;
	-webkit-overflow-scrolling: touch;
}

.open .hab-nav {
	left: 0;
}

.headerNav {
	margin-bottom: 4.7619vw;
}

.headerNav__list {
	text-align: left;
}

.headerNav__list > li > a {
	font-size: 3.80952vw;
	font-weight: bold;
	position: relative;
	display: block;
	padding-top: 3.57143vw;
	padding-bottom: 3.57143vw;
	padding-left: 4.7619vw;
}

.headerNav__list > li > a:before {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 3.57143vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/ar_white.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 15 / 4;
}

.hab-menu__only {
	display: block;
}

.spNavBtn__btn {
	display: block;
}

.contents {
	padding-top: 23.80952vw;
}

.breadcrumb {
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.breadcrumb ul {
	white-space: nowrap;
}

.breadcrumb li {
	font-size: 2.85714vw;
	margin-right: 2.38095vw;
	padding-right: 4.7619vw;
}

.breadcrumb li:after {
	width: 2.85714vw;
}

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	width: 80%;
	padding: 2.38095vw 5.95238vw;
	background-position: 2.38095vw center;
	background-size: 1.42857vw auto;
}

.pagettl {
	margin-top: 19.04762vw;
	padding-top: 9.52381vw;
	padding-bottom: 4.7619vw;
}

.pagettl__ttl {
	margin-bottom: 7.14286vw;
}

.pagettl__ttl .eng {
	font-size: 3.33333vw;
}

.pagettl__ttl .jpn {
	font-size: 5.71429vw;
}

.heading1 .eng {
	margin-bottom: 1.19048vw;
}

.heading1 .eng span {
	font-size: 3.80952vw;
	padding: 1.19048vw 4.7619vw;
}

.heading1 .jpn {
	font-size: 5.95238vw;
}

.heading2 {
	font-size: 4.52381vw;
}

.heading3 {
	font-size: 4.28571vw;
	margin-bottom: 4.7619vw;
	padding-bottom: 2.38095vw;
	background-size: 16.66667vw auto;
}

.heading4 {
	font-size: 4.46429vw;
	margin-bottom: 3.57143vw;
	padding-bottom: 2.32143vw;
	padding-left: 3.57143vw;
	background-size: 15.89286vw;
}

.scroll {
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.scroll_icon {
	font-size: 13px;
	font-size: 1.3rem;
	position: absolute;
	top: 30px;
	left: 50%;
	display: block;
	width: 60%;
	height: 70px;
	padding-top: 48px;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	text-align: center;
	pointer-events: none;
	color: #fff;
	border-radius: 5px;
	background: rgba(0, 0, 0, .5) url(../img/common/icon_scroll_arr.png) center 18px no-repeat;
	background-size: auto 20px;
}

.scroll_icon ._icon {
	position: absolute;
	top: 8px;
	left: 30%;
	display: block;
	width: 30px;
	height: 34px;
	margin-left: -10px;
	content: '';
	animation-name: scroll_animation;
	animation-duration: 2s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	background: url(../img/common/icon_scroll_hand.png) center center no-repeat;
	background-size: auto 100%;
}

.section {
	padding-right: 4.7619vw;
	padding-left: 4.7619vw;
}

.flex.tab-dblock {
	display: block;
}

.flex._mb > * {
	margin-bottom: 25px;
}

.flex._mb_sp > * {
	margin-bottom: 30px;
}

.flex._mb_sp > *:last-child {
	margin-bottom: 0;
}

.flex._mb_sp-s > * {
	margin-bottom: 15px;
}

.flex._mb_sp-s > *:last-child {
	margin-bottom: 0;
}

.grid2 {
	width: 100%;
	margin-right: 0;
}

.grid3 {
	width: 100%;
	margin-right: 0;
}

.grid4 {
	width: 100%;
	margin-right: 0;
}

.grid7 {
	width: 100%;
}

.tab-dblock .grid3_1 {
	width: auto;
	margin-right: 0;
}

.tab-dblock .grid3_2 {
	width: auto;
	margin-right: 0;
}

.mb-xs {
	margin-bottom: 2.66667vw;
}

.mb-s {
	margin-bottom: 4vw;
}

.mb-m {
	margin-bottom: 5.33333vw;
}

.mb-l {
	margin-bottom: 10.66667vw;
}

.mb-xl {
	margin-bottom: 13.33333vw;
}

.mb-xxl {
	margin-bottom: 21.33333vw;
}

.pb-xs {
	padding-bottom: 2.66667vw;
}

.pb-s {
	padding-bottom: 4vw;
}

.pb-m {
	padding-bottom: 5.33333vw;
}

.pb-l {
	padding-bottom: 10.66667vw;
}

.pb-xl {
	padding-bottom: 13.33333vw;
}

.pb-xxl {
	padding-bottom: 21.33333vw;
}

.pt-xs {
	padding-top: 2.66667vw;
}

.pt-s {
	padding-top: 4vw;
}

.pt-m {
	padding-top: 5.33333vw;
}

.pt-l {
	padding-top: 10.66667vw;
}

.pt-xl {
	padding-top: 13.33333vw;
}

.pt-xxl {
	padding-top: 21.33333vw;
}

.text_s {
	font-size: 3.33333vw;
}

.text_m {
	font-size: 4.04762vw;
}

.text_l {
	font-size: 17px;
	font-size: 1.7rem;
}

.tablet_left {
	text-align: left;
}

.tablet_center {
	text-align: center;
}

.pc {
	display: none;
}

.tablet {
	display: inline;
}

.map iframe {
	height: 71.42857vw;
}

.pageNavList li {
	width: 50%;
	margin-left: 0;
}

.pageNavList li a {
	display: inline-block;
}

.pageNavList li a:after {
	width: 20px;
	height: 20px;
	background-position: 8px 6px;
}

.table-1 th,
.table-1 td {
	display: block;
	width: 100%;
	padding: 3.57143vw 4.7619vw;
}

.table-1 th {
	font-weight: 700;
	padding-bottom: 0;
	padding-left: 5.95238vw;
	border-bottom: none;
}

.table-1 th:after {
	top: 5.71429vw;
	left: 2.38095vw;
	width: 1.90476vw;
	height: 1.90476vw;
}

.table-1 td {
	padding-left: 5.95238vw;
}

.table-2 th,
.table-2 td {
	display: block;
	width: 100%;
	padding: 3.57143vw 4.7619vw;
}

.table-2 th {
	padding-bottom: 0;
	text-align: left;
	border-bottom: none;
}

.table-2 td {
	padding-left: 16.66667vw;
}

.table-2 td:after {
	top: 6.66667vw;
	left: 4.7619vw;
	width: 9.52381vw;
	height: 2px;
}

.table-3 th,
.table-3 td {
	padding: 2.38095vw 2.38095vw;
}

.icon1 {
	padding-left: 3.57143vw;
}

.icon1:after {
	top: 2.38095vw;
	width: 1.90476vw;
	height: 1.90476vw;
}

.list1 {
	display: block;
}

.list1:before {
	top: 2.38095vw;
	left: 3.28571vw;
}

.list1 dt {
	width: auto;
	padding-left: 7.14286vw;
	text-align: left;
}

.list1 dt:after {
	top: 1.90476vw;
	right: auto;
	left: 2.38095vw;
	width: 1.90476vw;
	height: 1.90476vw;
}

.list1 dd {
	width: auto;
	padding-bottom: 7.14286vw;
	padding-left: 7.14286vw;
}

.top-fv_txt {
	overflow: hidden;
}

.top-fv_txt img {
	max-width: none;
	height: 20.47619vw;
	-ms-transform: translate(-14vw, 0);
	transform: translate(-14vw, 0);
}

.top-mes_img1 {
	margin-bottom: 0;
}

.top-mes_img1 img {
	width: 45%;
}

.top-mes_img2 {
	margin-top: -7.14286vw;
}

.top-mes_img2 img {
	width: 50%;
}

.top-mes_txt {
	font-size: 4.04762vw;
}

.top-intro_bg {
	height: 50vw;
}

.top-intro_bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top-news_ttl {
	width: auto;
}

.top-news_cont {
	width: auto;
}

.top-news_cont_inner {
	height: 80vw;
}

.top-news_item a {
	font-size: 3.80952vw;
	display: block;
}

.top-news_item a .top-news_item_time {
	display: block;
	width: auto;
}

.top-news_item a .top-news_item_ttl {
	display: block;
	width: auto;
}

.top-news_item a .top-news_item_ttl ._icon {
	padding-right: 7.14286vw;
}

.top-news_item a .top-news_item_ttl ._icon:after {
	top: 1.90476vw;
	width: 3.80952vw;
}

.top-bus_ttl {
	font-size: 6.19048vw;
	margin-top: 7.14286vw;
	margin-bottom: 4.7619vw;
}

.top-bus_imgs {
	padding-bottom: 70vw;
}

.top-bus_img1 {
	width: 44.21429vw;
}

.top-bus_img2 {
	top: 38.35714vw;
	width: 43.28571vw;
}

.top-bus_img3 {
	top: 59.57143vw;
	width: 36.85714vw;
}

.top-bus_fea_item {
	padding: 7.14286vw 7.14286vw;
}

.top-bus_fea_item:after {
	filter: blur(2.38095vw);
}

.top-bus_list {
	display: block;
}

.top-bus_item {
	width: auto;
	height: auto;
	margin-top: 0 !important;
	margin-bottom: 4.7619vw;
	margin-left: 0;
	padding: 7.14286vw 7.14286vw 7.14286vw;
}

.top-bus_item_icon {
	margin-bottom: 3.57143vw;
}

.top-bus_item_icon img {
	height: 23.80952vw;
}

.top-bus_lists:after {
	top: 32vw;
	height: calc(100% - 32vw*2);
}

.top-company_txt {
	padding-right: 0;
}

.top-company_txt_img {
	position: static;
	width: auto;
	margin-top: 7.14286vw;
	text-align: center;
}

.top-company_txt_img img {
	width: 40%;
}

.top-company_ceo_img {
	width: auto;
	text-align: center;
}

.top-company_ceo_img img {
	width: 50%;
}

.top-company_ceo ._large {
	font-size: 4.28571vw;
}

.top-sdgs {
	background-size: 74.35714vw auto;
}

.top-sdgs_logo img {
	width: auto;
}

.top-sdgs_box {
	width: auto;
}

.top-sdgs_box_cont {
	width: auto;
}

.top-sdgs_box_img {
	width: auto;
	text-align: center;
}

.top-sdgs_box_img img {
	width: 50%;
	box-shadow: 0 0 4.7619vw rgba(0, 0, 0, .1);
}

.top-sdgs_flow_list_item {
	display: -ms-flexbox;
	display: flex;
	width: auto;
	margin-bottom: 9.52381vw;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.top-sdgs_flow_list_item:after {
	top: auto;
	right: auto;
	bottom: -10vw;
	left: 13vw;
	width: 5.95238vw;
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.top-sdgs_flow_list_item ._icon {
	width: 35%;
}

.top-sdgs_flow_list_item ._icon img {
	height: 19.04762vw;
}

.fancybox-content {
	padding: 4.7619vw !important;
}

.news-modal_ttl {
	font-size: 4.28571vw;
	margin-bottom: 2.38095vw;
}

.slider .swiper-slide {
	width: 70vw !important;
}

.slider-thumbnail .swiper-slide {
	width: 28.57143vw !important;
}

.top-bus_other_wrap .swiper-button-next,
.top-bus_other_wrap .swiper-button-prev {
	width: 7.14286vw !important;
	height: 7.14286vw !important;
}

.top-bus_other_wrap .swiper-button-next {
	right: -4.7619vw;
}

.top-bus_other_wrap .swiper-button-prev {
	left: -4.7619vw;
}

.top-bus_other {
	position: relative;
	z-index: 2;
}

.top-bus_other_wrap {
	width: 80%;
}

.top-bus_slide_item {
	width: 35.71429vw;
}

.contact-table th ._required {
	position: static;
	margin-left: 2.38095vw;
}

.contact-table .wpcf7-list-item {
	margin: 0;
}

.contact-table .wpcf7-radio > span,
.contact-table .wpcf7-checkbox > span {
	display: block;
	margin-bottom: 2.38095vw;
}

input[type='text']#zip,
input[type='text']#pref,
input[type='tel']#zip,
input[type='tel']#pref,
input[type='email']#zip,
input[type='email']#pref,
textarea#zip,
textarea#pref {
	width: 100%;
}

input[type='text']#city,
input[type='text']#addr,
input[type='text']#other,
input[type='tel']#city,
input[type='tel']#addr,
input[type='tel']#other,
input[type='email']#city,
input[type='email']#addr,
input[type='email']#other,
textarea#city,
textarea#addr,
textarea#other {
	width: 100%;
}

.zip_list li {
	margin-bottom: 2.38095vw;
}

._required {
	font-size: 3.09524vw;
	padding: .71429vw 1.66667vw;
}

.top-contact {
	padding-bottom: 66.66667vw !important;
	background-position: left 7.14286vw bottom;
	background-size: 28.57143vw auto;
}

.top-contact .section {
	position: relative;
	z-index: 2;
}

.zoom_icon:after {
	width: 9.52381vw;
	height: 9.52381vw;
	opacity: .8;
}

.postMain {
	width: 100%;
	margin-bottom: 50px;
}

.wp-side {
	float: none;
	width: 100%;
	margin-right: 0;
}

.post_main {
	float: none;
	width: 100%;
	margin-bottom: 100px;
}

.post_main .heading_medium {
	font-size: 16px;
	font-size: 1.6rem;
	margin-bottom: 10px;
	padding-top: 8px;
	padding-bottom: 5px;
}

.wp-postItem {
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.wp-postItem__btn {
	font-size: 11px;
	font-size: 1.1rem;
	position: static;
	margin-top: 10px;
	margin-right: 20px;
	text-align: right;
}

.wp-postItem__btn span {
	min-width: auto;
}

.wp-postItem__btn span:after {
	width: 25px;
}

.wp-postItem__ttl {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
}

.wp-postSingle__ttl {
	font-size: 25px;
	font-size: 2.5rem;
}

.wp-postItem__desc {
	display: none;
}

.sideBox__list {
	border-top: 1px dotted #dbdbdb;
}

.sideBox__list > li {
	margin-bottom: 0;
	border-bottom: 1px dotted #dbdbdb;
}

.sideBox__list > li > a {
	padding-top: 15px;
	padding-bottom: 15px;
}

.sideBox__list > li > a:after {
	width: 20px;
	height: 20px;
}

.sideBox__list > li > a:after {
	top: 21px;
	width: 10px !important;
	height: 10px !important;
}

.sideBox__list .children li {
	margin-top: 0;
	border-top: 1px dotted #dbdbdb;
}

.sideBox__list .children li:after {
	top: 21px;
}

.sideBox__list .children li a {
	padding-top: 12px;
	padding-bottom: 12px;
}

.postBody h2 {
	font-size: 20px;
	font-size: 2rem;
}

.postBody h3 {
	font-size: 18px;
	font-size: 1.8rem;
}

.postBody ul li:before {
	top: 10px;
}

.wp-paging .btn {
	width: 40%;
}

.wp-paging a {
	display: block;
	min-width: auto;
}

.blog-footcv:after {
	top: -11vw;
	width: 21vw;
}

.blog-footcv__flex .grid2 {
	width: 100%;
}

}

@media only screen and (max-width: 730px) {

.w700 {
	width: auto;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

@media only screen and (max-width: 630px) {

.w600 {
	width: auto;
	margin-right: 20px;
	margin-left: 20px;
}

}

@media only screen and (max-width: 520px) {

.loader {
	width: 70px;
	height: 70px;
}

.sp_left {
	text-align: left;
}

.sp_center {
	text-align: center;
}

.pageNavList li {
	width: 100%;
}

.pageNavList li a {
	font-size: 16px;
	font-size: 1.6rem;
	padding-right: 20px;
}

.pageNavList li a:after {
	width: 12px;
	height: 12px;
	background-position: 5px 3px;
	background-size: 3px auto;
}

.dl-1 {
	display: block;
}

.dl-1 dt {
	width: auto;
}

.dl-1 dd {
	width: auto;
}

.wp-postItem .flex {
	-ms-flex-align: start;
	align-items: flex-start;
}

.postListBox__ttl {
	font-size: 25px;
	font-size: 2.5rem;
}

.wp-postItem__ttl {
	font-size: 16px;
	font-size: 1.6rem;
}

.wp-postSingle__ttl {
	font-size: 20px;
	font-size: 2rem;
}

.wp-postItem__times {
	font-size: 14px;
	font-size: 1.4rem;
}

.categoryList__item {
	font-size: 14px;
	font-size: 1.4rem;
}

.wp-postItem__time {
	font-size: 12px;
	font-size: 1.2rem;
	margin-right: 10px;
	vertical-align: 0;
}

.wp-paging a {
	font-size: 16px;
	font-size: 1.6rem;
}

.wp-paging .prev {
	width: 45%;
}

.wp-paging .next {
	width: 45%;
}

}

@keyframes roadingAnime {

0% {
	left: calc(50% - 200px);
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=0);
	-khtml-opacity: 0;
	-moz-opacity: 0;
}

100% {
	left: calc(50% - 0px);
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

}

@keyframes roadingAnime2 {

0% {
	left: calc(50% - 0px);
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

100% {
	left: calc(50% + 200px);
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=0);
	-khtml-opacity: 0;
	-moz-opacity: 0;
}

}

@keyframes js-panel_open {

0% {
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
	clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
}

100% {
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

}

@keyframes btn_ani {

0% {
	width: 100%;
}

50% {
	width: 0;
}

100% {
	width: 100%;
}

}

@keyframes scroll_animation {

0 {
	left: 30%;
}

50% {
	left: 60%;
}

100% {
	left: 30%;
}

}

@keyframes arr_animation2 {

0 {
	background-position: 9px 7px;
}

50% {
	background-position: 20px 7px;
}

51% {
	background-position: -20px 7px;
}

100% {
	background-position: 9px 7px;
}

}

@keyframes arrAnime2 {

0% {
	left: 0;
}

30% {
	left: -5px;
}

50% {
	left: 10px;
}

100% {
	left: 0;
}

}

@keyframes arr_animation_re {

0 {
	width: 95px;
}

50% {
	left: 12px;
	width: 0;
}

51% {
	left: calc(12px + 95px) !important;
}

100% {
	left: 12px;
	width: 95px;
}

}

@keyframes arr_animation_re_tablet {

0 {
	width: 65px;
}

50% {
	left: 9px;
	width: 0;
}

51% {
	left: calc(9px + 65px);
}

100% {
	left: 9px;
	width: 65px;
}

}

@keyframes arr_animation_re_sp {

0 {
	width: 50px;
}

50% {
	left: 7px;
	width: 0;
}

51% {
	left: calc(7px + 50px);
}

100% {
	left: 7px;
	width: 50px;
}

}


/*# sourceMappingURL=style.css.map */
