@charset "UTF-8";

/* CSS Document */
.commonPage #main .titArea {
	height: 46.8vw;
	position: relative;
}

.commonPage #main .titArea ul {
	position: relative;
	top: 50%;
}

.commonPage #main .titArea ul li {
	position: relative;
	text-align: center;
}

.commonPage #main .titArea ul li:last-child {
	margin-top: 3vw;
}

.commonPage #main .titArea ul li:first-child {
	margin-top: 0;
	padding-bottom: 4.7vw;
}

.commonPage #main .titArea ul li:first-child::before {
	content: '';
	width: 6.25vw;
	height: 2px;
	background: #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.commonPage #main .titArea ul li.titEn_l img {
	height: 5vw;
	width: auto;
}

.commonPage #main .titArea ul li.titEn_s img {
	height: 2.5vw;
	width: auto;
}

.commonPage #main .titArea ul li.titJp_l img {
	height: 6.25vw;
	width: auto;
}

.commonPage #main .titArea ul li.titJp_s img {
	height: 1vw;
	max-height: 13px;
	width: auto;
}

.commonPage #main .titArea ul li.titJp_l .titJP_h-main {
    font-size: 3.75vw;
    line-height: 1.4;
    letter-spacing: 0.01rem;
}

.commonPage #main .titArea ul li.titJp_l .titJP_h-sub {
    font-size: 3.20vw;
    line-height: 1.4;
    letter-spacing: 0.01rem;
    margin-top: 15px;
}



.commonPage #main .mainPh {
	display: block;
	height: 67vw;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/*=============================
news
=============================*/
.news .contents {
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	padding-bottom: 10.94vw;
}

.news .contents>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-top: 3.13vw;
	padding-bottom: 11.72vw;
}

.news .contents>.inner::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.news .contents>.inner::after {
	bottom: 0;
}


.news #newsList {
	margin-bottom: 10.94vw;
	-webkit-transition: height 0.5s ease;
	transition: height 0.5s ease;
}

.news #newsList>li {
	display: none;
	margin-bottom: 5.47vw;
}

.news #newsList>li.show {
	display: block;
	animation: showAniSp 0.25s linear 0s 1 normal both;
}

@-webkit-keyframes showAni {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@keyframes showAni {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

.news #newsList li ul {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 2.50vw;
}

.news #newsList li ul li.tag {
	width: 25%;
	border: 1px solid #000066;
	-webkit-border-radius: 2.345vw;
	-moz-border-radius: 2.345vw;
	border-radius: 20px;
	text-align: center;
	max-width: 130px;
	min-width: 92px;
	max-height: 30px;
	letter-spacing: 0.05em;
	margin-right: 2.34vw;
}

.news #newsList li ul li.tag .vmTxt {
	font-size: 10px;
	padding: 2px 6px;
	height: 2em;
	line-height: 1.6em;
}

.news #newsList li ul li.data {
	padding-top: 0.39vw;
	font-size: 11px;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.news #newsList li .txtArea {
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.news .btViewMore {
	width: 61.7vw;
	height: 12.50vw;
	max-width: 335px;
	max-height: 80px;
	margin-left: auto;
	margin-right: auto;
	display: none;
}

.news .btViewMore a {
	font-size: 2.03vw;
	border: 1px solid #000066;
	background: #FFF;
	text-align: center;
}

.news .btViewMore a .arrow {
	top: 50%;
	left: 1.95vw;
	width: 7.81vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.news .btViewMore a .arrow.abl::before,
.news .btViewMore a .arrow.abl::after {
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

.tag-list {
  padding-left: 10px;
  padding-right: 10px;
}
.tag-list__box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.2vw;
  margin-bottom: 30px;
}

.tag-list__box li {
  border: 1px solid #000066;
  font-size: 12px;
  border-radius: 20px;
  padding: 5px 15px;
  transition: all 0.3s ease;
}

.tag-list__box li:hover {
  background-color: #000066;
  color: #fff;
}

.tag-list__box li a {
  transition: all 0.3s ease;
}

.tag-list__box li:hover a {
  color: #fff;
  text-decoration: none;
}

/*=============================
newsDetail
=============================*/
.newsDetail .contents {
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	padding-bottom: 10.94vw;
}

.newsDetail .contents>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}


.newsDetail .newsTitArea {
	padding-top: 3.91vw;
	padding-bottom: 3.91vw;
	position: relative;
	margin-bottom: 5.47vw;
}

.newsDetail .newsTitArea::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.newsDetail .newsTitArea::after {
	bottom: 0;
}

.newsDetail .newsTitArea li.tag {
	width: 25%;
	height: 4.69vw;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #000066;
	-webkit-border-radius: 2.345vw;
	-moz-border-radius: 2.345vw;
	border-radius: 2.345vw;
	text-align: center;
	font-size: 2.19vw;
	letter-spacing: 0.05em;
	margin-bottom: 6.25vw;
}

.newsDetail .newsTitArea li.tit {
	display: block;
	font-size: 5.47vw;
	line-height: 1.5;
	margin-bottom: 10.16vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.newsDetail .newsTitArea li.data {
	font-size: 2.50vw;
	letter-spacing: 0.05em;
	text-align: center;
}


.newsDetail .contents .txtArea {
	min-height: 42vw;
	padding-top: 1.56vw;
	padding-bottom: 3.9vw;
	position: relative;
}

.newsDetail .contents .txtArea h1 {
    font-size: 2em;
    margin-block-start: 0.67em;
    margin-block-end: 0.67em;
}
.newsDetail .contents .txtArea h2 {
    font-size: 1.5em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
}
.newsDetail .contents .txtArea h3 {
    font-size: 1.17em;
    margin-block-start: 1em;
    margin-block-end: 1em;
}
.newsDetail .contents .txtArea h4 {
    font-size: 1em;
    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
}
.newsDetail .contents .txtArea h5 {
    font-size: 0.83em;
    margin-block-start: 1.67em;
    margin-block-end: 1.67em;
}
.newsDetail .contents .txtArea h6 {
    font-size: 0.67em;
    margin-block-start: 2.33em;
    margin-block-end: 2.33em;
}

.newsDetail .contents .txtArea p {
	line-height: 2.15;
	letter-spacing: 0.05em;
}
.newsDetail .contents .txtArea ul,
.newsDetail .contents .txtArea ol {
    list-style: auto;
    margin: 18px auto;
    padding-left: 2em;
}

.newsDetail .contents .txtArea li {
	line-height: 2.15;
	letter-spacing: 0.05em;
}
.newsDetail .contents .txtArea blockquote {
    background: #F2F2F2;
    padding: 20px;
    width: 100%;
    margin: auto;
    border-left: 4px solid #B2B2B2;
}
.newsDetail .contents .txtArea img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.newsDetail .contents .txtArea::before,
.newsDetail .contents .txtArea::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.newsDetail .contents .txtArea:before {
	top: 0;
}

.newsDetail .contents .txtArea::after {
	bottom: 0;
}

#container.newsDetail .contents .txtArea {
  font-size: 16px;
}

.newsDetail .contents .bt {
	display: inline-block;
	width: 25vw;
	height: 4.7vw;
}

.newsDetail .contents .bt a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	font-size: 2.50vw;
	text-align: right;
}

.newsDetail .contents .bt a .arrow_l {
	top: 50%;
	left: 2.3vw;
	width: 7.8vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*=============================
contact
=============================*/
.contact #main {
	margin-bottom: 9.4vw;
}

.contact #main>.mainTxt {
	text-align: center;
	font-size: 2.5vw;
	line-height: 2.15;
	letter-spacing: 0.05em;
}

.contact .contents>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	background: #FFF;
	padding: 0;
}



.contact .contents>.inner::before,
.contact .contents>.inner::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.contact .contents>.inner:before {
	top: 0;
}

.contact .contents>.inner::after {
	bottom: 0;
}



.contact #formArea {
	margin-bottom: 7vw;
}

.contact #reqTxt {
	text-align: right;
	font-size: 2.2vw;
	left: 0.05em;
	color: #cc0000;
	position: absolute;
	top: -1.25em;
	right: 0;
}

.contact .mw_wp_form_preview #reqTxt {
	display: none;
}

.contact .must {
	color: #C00;
}

.contact input,
.contact select {
	position: relative;
	top: -2px;
}

.contact .w100 {
	width: 100% !important;
}

.contact input,
.contact textarea {
	max-width: 100%;
}

.contact input,
.contact textarea,
.contact select {
	border: solid 1px #efefef;
	/*border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;*/
	padding: 15px 20px;
	margin: 2px;
	vertical-align: middle;
	background: #f9f9f9;
}


.contact select {
	-webkit-appearance: none;
	-moz-apoearance: none;
	appearance: none;
	position: relative;
	padding-right: 3em;
}

.contact .selectbox {
	position: relative;
}

.contact .selectbox::after {
	font-size: 11px;
	position: absolute;
	right: 1em;
	top: .5em;
	content: "▼";
	height: 1em;
	width: 1em;
	display: block;
}

.contact select::-ms-expand {
	display: none;
}

.contact .mw_wp_form_confirm .selectbox::after {
	content: none;
}


.mfp_element_checkbox,
.mfp_element_radio,
.contact input[type="checkbox"],
.contact input[type="radio"] {
	vertical-align: middle;
	margin: 0px 2px;
}



.contact dl#formArea {
	font-size: 2.8vw;
	line-height: 1.5;
	position: relative;
	padding-top: 6.25vw;
}

.contact dl#formArea dt {
	margin-bottom: 1.5vw;
}

.contact dl#formArea dd {
	margin-bottom: 6.25vw;
}

.contact dl#formArea dd .fs {}

.contact dl#formArea dd.kanji,
.contact dl#formArea dd.kana {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
}

.contact dl#formArea dd.kanji label,
.contact dl#formArea dd.kana label {
	width: 48.5%;
}


.contact .mw_wp_form {
	position: relative;
}

.contact .mw_wp_form_input h4 {
	display: none;
}

.contact .mw_wp_form_preview {
	padding-top: 40px;
}

.contact .mw_wp_form_preview dl#formArea dd.kanji,
.contact .mw_wp_form_preview dl#formArea dd.kana {
	-webkit-justify-content: flex-start;
	/* Safari */
	justify-content: flex-start;
}

.contact .mw_wp_form_preview dl#formArea dd.kanji label,
.contact .mw_wp_form_preview dl#formArea dd.kana label {
	width: auto;
}

.contact .mw_wp_form_preview h4 {
	font-size: 3.13vw;
	margin-bottom: 3vw;
	text-align: center;
	font-weight: normal;
}

.contact .submitBt {
	width: 100%;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column-reverse;
	/* Safari */
	flex-direction: column-reverse;
}

.contact .submitBt input {
	display: block;
	width: 100%;
	height: 12.5vw;
	border: none;
	font-size: 2.8vw;
	color: #FFF;
	font-weight: bold;
	margin: 0 0 1.5vw 0;
	position: relative;
	cursor: pointer;
	background: url(../img/contact/arrow.svg) no-repeat left 1.5vw center/7.8vw auto;
}

.contact .submitBt input.backBt {
	background-color: #666666;
}

.contact .submitBt input.confirmBt {
	background-color: #000066;
}

.contact .submitBt input.backBt,
.contact .submitBt input.confirmBt {
	-webkit-transition: background-color 0.35s ease;
	transition: background-color 0.35s ease;
}

.contact .submitBt input.on.backBt {
	background-color: #333;
}

.contact .submitBt input.on.confirmBt {
	background-color: #000033;
}

/*=============================
お問い合わせボタン導線追加(2024.6.17)
=============================*/
#contact {
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	margin-bottom: 21.48vw;
}

@media (min-width: 1280px) {
	#contact {
		margin-bottom: 275px;
	}
}

#contact .outer {
	width: 60%;
	height: 23.44vw;
	max-width: 800px;
	max-height: 300px;
	margin-left: auto;
	margin-right: auto;
	background: #FFF;

	position: relative;
	top: 30px;
	opacity: 0;
	-webkit-transition:
		opacity 0.5s ease,
		top 0.5s ease;
	transition:
		opacity 0.5s ease,
		top 0.5s ease;
}

#contact.show .outer {
	top: 0px;
	opacity: 1;
	width: 100%;
}

#contact .inner {
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


#contact h1 {
	position: relative;
  padding-top: 3.9vw;
  margin-bottom: 4.7vw;
  text-align: center;
}

#contact h1::before {
	content: '';
  width: 6.25vw;
  height: 2px;
  background: #000066;
  position: absolute;
  top: 0;
  left: 50%;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

#contact h1 img {
	width: auto;
  height: 2.5vw;
}

#contact .inner>.txt {
	text-align: center;
  color: #000066;
  font-size: 2.5vw;
  line-height: 2.15;
}

#contact .btAni {
	width: 65.6vw;
  height: 12.5vw;
	margin: auto;
}

#contact .btAni a {
	background: #000066;
  text-align: center;
  color: #FFF;
  font-size: 2.8vw;
}

#contact .btAni a .arrow {
	top: 50%;
	left: 2.3vw;
	width: 7.8vw;
	height: 1.25vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


#contact .btAni a.on .arrow {
	width: 4.29vw;
	max-width: 55px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

/*thx
=============================*/
.thx #main {
	border-bottom: 1px solid #efefef;
	margin-bottom: 9.4vw;
}

.thx .contents {
	padding-bottom: 28vw;
	margin-bottom: 20vw;
	border-bottom: 1px solid #efefef;
}

.thx .contents h2 {
	text-align: center;
	font-size: 4.4vw;
	line-height: 1.5;
	letter-spacing: 0.05em;
	margin-bottom: 6.25vw;
}

.thx .contents .txt01 {
	text-align: center;
	font-size: 2.5vw;
	line-height: 2.15;
	letter-spacing: 0.05em;
	margin-bottom: 9.4vw;
}

.thx .contents .box {
	width: 72%;
	margin-left: auto;
	margin-right: auto;
	background: #FFF;
	padding: 6.25vw 0;
	text-align: center;
	font-size: 2.2vw;
	line-height: 2.15;
	letter-spacing: 0.05em;
	border: 1px solid #000066;
	margin-bottom: 11vw;
}

.thx .contents .bt {
	width: 75%;
	height: 12.5vw;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

.thx .contents .bt a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	background: #000066;
	color: #FFF;
	font-size: 2.8vw;
	text-align: center;
	letter-spacing: 0.05em;
}

.thx .contents .bt a .arrow {
	top: 50%;
	left: 2.3vw;
	width: 7.8vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*=============================
case
=============================*/
.case #main .titArea {
	border-bottom: 1px solid #efefef;
}


.case .caseTags {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-bottom: 6.25vw;
	margin-bottom: 6.25vw;
}

.case .caseTags::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.case .caseTags h2 {
	width: 47%;
	height: 3vw;
	position: relative;
	text-align: center;
	font-size: 2vw;
	letter-spacing: 0.1em;
	border-right: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	margin-bottom: 5.5vw;
	margin-top: 1vw;
	margin-left: 1vw;
	padding: 2vw 0 3vw 0;
}

.case .caseTags ul.btTags {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
}

.case .caseTags .btAll,
.case .caseTags ul.btTags li {
	width: 47%;
	height: 6.25vw;
	margin-bottom: 3vw;
}

.case .caseTags .btAll a,
.case .caseTags ul.btTags li a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	text-align: center;
	border: 1px solid #000066;
	font-size: 1.8vw;
	color: #000066;
	background: #FFF;
	-webkit-border-radius: 3.125vw;
	-moz-border-radius: 3.125vw;
	border-radius: 3.125vw;
	overflow: hidden;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}

.case .caseTags ul.btTags li.casetag04 a {
	border: 1px solid #99bcc1;
	color: #99bcc1;
	background: #FFF;
}

.case .caseTags .btAll a.on,
.case .caseTags ul.btTags li a.on {
	color: #FFF;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}

.case .caseTags .btAll a.active,
.case .caseTags ul.btTags li a.active {
	color: #FFF;
	background: #000066;
}

.case .caseTags ul.btTags li.casetag04 a.active {
	border: none;
	color: #FFF;
	background: #99bcc1;
}


.case .caseTagC {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;

}

.case .caseTagC #caseList {
	-webkit-transition: height 0.5s ease;
	transition: height 0.5s ease;
}

.case .caseTagC #caseList>li {
	display: none;
	position: relative;
	background: #FFF;
	padding: 5.5vw 4.7vw 13vw 4.7vw;
	border-right: 1px solid #efefef;
	border-left: 1px solid #efefef;
	margin-bottom: 4.7vw;
}

.case .caseTagC #caseList>li.show {
	display: block;
}

.case .caseTagC>ul>li::before,
.case .caseTagC>ul>li::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.case .caseTagC>ul>li::before {
	top: 0;
}

.case .caseTagC>ul>li::after {
	bottom: 0;
}


.case .caseTagC>ul>li .ph {
	width: 65vw;
	height: 50vw;
	background: #f9f9f9;
	overflow: hidden;
	position: relative;
	margin-bottom: 5.5vw;
}

.case .caseTagC>ul>li .ph img {
	max-height: 50vw;
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	width: auto;
	height: auto;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.case .caseTagC>ul>li .ph.noph {
	background: url(../img/case/case_noph.svg) no-repeat #f9f9f9 center center/auto 20vw;
}

.case .caseTagC>ul>li .txtArea {}

.case .caseTagC>ul>li .txtArea>* {
	letter-spacing: 0.05em;
}

.case .caseTagC>ul>li .txtArea h3 {
	font-size: 3.75vw;
	line-height: 1.5;
	margin-bottom: 1.5vw;
	text-align: center;
}

.case .caseTagC>ul>li .txtArea .name {
	font-size: 2.8vw;
	margin-bottom: 3vw;
	text-align: center;
}

.case .caseTagC>ul>li .txtArea .txt {
	font-size: 2.2vw;
	line-height: 1.75;
}

.case .caseTagC>ul>li .txtArea .txt::after {
	content: '...'
}

.case .caseTagC>ul>li ul.tags {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	/* Safari */
	flex-direction: column;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	margin-bottom: 3.13vw;
}

.case .caseTagC>ul>li ul.tags li {
	width: 37.5vw;
	height: 6.25vw;
	-webkit-border-radius: 3.125vw;
	-moz-border-radius: 3.125vw;
	border-radius: 3.125vw;
	border: 1px solid #000066;
	position: relative;
	text-align: center;
}

.case .caseTagC>ul>li ul.tags li.casetag04 {
	color: #FFF;
	border: none;
	background: #99bcc1;
}

.case .caseTagC>ul>li ul.tags li:nth-child(n+2) {
	margin-top: 2.34vw;
}






.case .caseTagC>ul>li .btMore {
	width: 40vw;
	height: 8.6vw;
	position: absolute;
	right: 0;
	bottom: 0;
}

.case .caseTagC>ul>li .btMore a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 1.9vw;
	background: #f5f5f5;
	text-align: center;
}

.case .caseTagC>ul>li .btMore a .arrow {
	top: 50%;
	left: 1.5vw;
	width: 7.8vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


.case .btViewMore {
	width: 40vw;
	height: 8.6vw;
	z-index: 10;
	margin-left: auto;
	margin-right: auto;
	display: none;
}

.case .btViewMore a {
	border: 1px solid #000066;
	background: #FFF;
	text-align: center;
	color: #000066;
	font-size: 1.9vw;
	letter-spacing: 0.05em;
}

.case .btViewMore a .arrow {
	top: 50%;
	left: 1.95vw;
	width: 3.9vw;
	height: 0.55vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}




/*caseDetail
=============================*/
.caseDetail #main {}

.caseDetail #main .titArea {
	border-bottom: 1px solid #efefef;
}

.caseDetail #main .caseName {
	position: relative;
	padding: 10vw 0 8.6vw;
}

.caseDetail #main .caseName>.inner {}

.caseDetail #main .caseName h2 {
	text-align: center;
	font-size: 5.6vw;
	letter-spacing: 0.05em;
	margin-bottom: 4.7vw;
}

.caseDetail #main .caseName h3 {
	text-align: center;
	font-size: 3.4vw;
	letter-spacing: 0.05em;
}

.caseDetail #main .caseName ul.tags {
	width: 37.5vw;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5.5vw;
}

.caseDetail #main .caseName ul.tags li {
	width: 100%;
	height: 6.25vw;
	position: relative;
	text-align: center;
	font-size: 1.9vw;
	letter-spacing: 0.05em;
	-webkit-border-radius: 3.125vw;
	-moz-border-radius: 3.125vw;
	border-radius: 3.125vw;
	border: 1px solid #000066;
	background: #FFF;
	color: #000066;
}

.caseDetail #main .caseName ul.tags li:nth-child(n+2) {
	margin-top: 1.5vw;
}

.caseDetail #main .caseName ul.tags li.casetag04 {
	border: 1px solid #99bcc1;
	background: #99bcc1;
	color: #FFF;
}

.caseDetail section {
	border-top: 1px solid #efefef;
	padding-top: 4.7vw;
}

.caseDetail section h1 {
	text-align: center;
	font-size: 4vw;
	letter-spacing: 0.05em;
	position: relative;
	padding-bottom: 2.3vw;
	margin-bottom: 4.7vw;
}

.caseDetail section h1::after {
	content: '';
	width: 7vw;
	height: 2px;
	background: #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.caseDetail #gaiyou {
	padding-bottom: 6.25vw;
}

.caseDetail #gaiyou>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.caseDetail #gaiyou .txt01 {
	font-size: 2.5vw;
	letter-spacing: 0.05em;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 7vw;
}

.caseDetail #gaiyou .txt01 img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.caseDetail #gaiyou dl.gaiyouList dt {
	height: 7vw;
	position: relative;
	border-left: 2px solid #000066;
	padding-left: 3vw;
	font-size: 4vw;
	letter-spacing: 0.05em;
	margin-bottom: 3.9vw;
}

.caseDetail #gaiyou dl.gaiyouList dt::before,
.caseDetail #gaiyou dl.gaiyouList dt::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.caseDetail #gaiyou dl.gaiyouList dt::before {
	top: 0;
}

.caseDetail #gaiyou dl.gaiyouList dt::after {
	bottom: 0;
}


.caseDetail #gaiyou dl.gaiyouList dd {
	font-size: 2.5vw;
	letter-spacing: 0.05em;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 11vw;
}

.caseDetail #gaiyou dl.gaiyouList dd:last-of-type {
	margin-bottom: 0;
}

.caseDetail #gaiyou dl.gaiyouList dd img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.caseDetail #customerVoice .acc {
	display: none;
}

.caseDetail #customerVoice .accBt {
	position: relative;
	margin-bottom: 6.25vw;
}

.caseDetail #customerVoice .accBt::before,
.caseDetail #customerVoice .accBt::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.caseDetail #customerVoice .accBt::before {
	top: 0;
}

.caseDetail #customerVoice .accBt::after {
	bottom: 0;
}

.caseDetail #customerVoice .accBt a {
	display: block;
	height: 18vw;
	position: relative;
	text-align: center;
	font-size: 2.6vw;
	letter-spacing: 0.05em;
	color: #FFF;
	background: #99bcc1;
}

.caseDetail #customerVoice .accBt a .border {
	display: block;
	width: 3.9vw;
	height: 3.9vw;
	position: absolute;
	top: 50%;
	right: 2.7vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: transform 0.35s ease;
	-moz-transition: transform 0.35s ease;
	-ms-transition: transform 0.35s ease;
	-o-transition: transform 0.35s ease;
	transition: transform 0.35s ease;
}

.caseDetail #customerVoice .accBt a .border::before,
.caseDetail #customerVoice .accBt a .border::after {
	content: '';
	background: #FFF;
	position: absolute;
	-webkit-transition: transform 0.35s ease;
	-moz-transition: transform 0.35s ease;
	-ms-transition: transform 0.35s ease;
	-o-transition: transform 0.35s ease;
	transition: transform 0.35s ease;
}

.caseDetail #customerVoice .accBt a .border::before {
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0;
}

.caseDetail #customerVoice .accBt a .border::after {
	height: 100%;
	width: 1px;
	top: 0;
	left: 50%;
}

.caseDetail #customerVoice .accBt a.open .border::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.caseDetail #customerVoice .accBt a.open .border::after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}



.caseDetail #customerVoice .overView {
	position: relative;
	margin-bottom: 9.4vw;
	padding: 2.3vw 0;
}

.caseDetail #customerVoice .overView::before,
.caseDetail #customerVoice .overView::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.caseDetail #customerVoice .overView::before {
	top: 0;
}

.caseDetail #customerVoice .overView::after {
	bottom: 0;
}

.caseDetail #customerVoice .overView h3 {
	font-size: 3.4vw;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 4.7vw;
}

.caseDetail #customerVoice .overView>p.txt {
	font-size: 2.5vw;
	letter-spacing: 0.05em;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.caseDetail #customerVoice .overView>p.txt img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.caseDetail #customerVoice .overView .phArea {
	margin-top: 6.25vw;
}

.caseDetail #customerVoice .overView .phArea .ph {
	margin-bottom: 2.34vw;
}

.caseDetail #customerVoice .overView .phArea .ph img {
	width: 100%;
	height: auto;
}

.caseDetail #customerVoice .overView .phArea .txt {
	font-size: 1.9vw;
	line-height: 2.0;
}




.caseDetail #customerVoice dl.qa>dt {
	border-left: 2px solid #000066;
	font-size: 4vw;
	line-height: 1.35;
	letter-spacing: 0.05em;
	margin-bottom: 1.95vw;
	padding: 2.34vw 2.34vw 2.34vw 4.7vw;
	position: relative;
}

.caseDetail #customerVoice dl.qa>dt span {
	display: inline-block;
	padding-left: 1.2em;
	text-indent: -1.2em;
}

.caseDetail #customerVoice dl.qa>dt span::before {
	content: 'Q.';
}

.caseDetail #customerVoice dl.qa>dt::before,
.caseDetail #customerVoice dl.qa>dt::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.caseDetail #customerVoice dl.qa>dt::before {
	top: 0;
}

.caseDetail #customerVoice dl.qa>dt::after {
	bottom: 0;
}

.caseDetail #customerVoice dl.qa>dd {
	margin-bottom: 9.4vw;
}

.caseDetail #customerVoice dl.qa>dd>dl {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.caseDetail #customerVoice dl.qa>dd>dl dt {
	width: 15%;
	margin-bottom: 1.95vw;
}

.caseDetail #customerVoice dl.qa>dd>dl dd {
	width: 85%;
	margin-bottom: 1.95vw;
}

.caseDetail #customerVoice dl.qa>dd>dl dt:last-of-type,
.caseDetail #customerVoice dl.qa>dd>dl dd:last-of-type {
	margin-bottom: 0;
}


.caseDetail #customerVoice .acc>.phArea .ph {
	margin-bottom: 2.34vw;
}

.caseDetail #customerVoice .acc>.phArea .ph img {
	width: 100%;
	height: auto;
}

.caseDetail #customerVoice .acc>.phArea .txt {
	font-size: 1.7vw;
	letter-spacing: 0.05em;
}


.caseDetail #customerVoice .acc>.phArea .pdfLink {
	margin-top: 2vw;
	text-align: center;
	font-size: 2vw;
	letter-spacing: 0.05em;
}



/*case
=============================*/
.caseDetail #case {
	margin-bottom: 5.5vw;
}

.caseDetail #case .carouselArea .caroufredsel_wrapper {
	width: 100%;
	height: 48vw;
	overflow: hidden;
}

.caseDetail #case .carousel {
	height: 100%;
}

.caseDetail #case .carousel li {
	float: left;
	height: 100%;
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	background: #FFF;
}

.caseDetail #case .carouselArea .pager {
	display: inline-block;
	position: absolute;
	right: 50%;
	margin-right: calc(-38.28vw - 13px);
}

.caseDetail #case .carouselArea .pager a {
	background: #EFEFEF;
	text-decoration: none;
	text-indent: -999px;
	display: inline-block;
	overflow: hidden;
	width: 3.6vw;
	max-width: 46px;
	height: 4px;
	margin: 0 2px;
}

.caseDetail #case .carouselArea .pager a:hover,
.caseDetail #case .carouselArea .pager a.selected {
	background: #000066;
}



.caseDetail #case .carousel li>.inner {
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
}

.caseDetail #case .carousel li>.inner .num {
	text-align: center;
	margin-bottom: 6.25vw;
	font-size: 3.4vw
}


.caseDetail #case .carousel li>.inner .tit {
	text-align: center;
	font-size: 4vw;
	letter-spacing: 0.05em;
	margin-bottom: 4.7vw;
}

.caseDetail #case .carousel li>.inner .tit img {
	width: auto;
	height: 1.56vw;
	max-height: 20px;
}

.caseDetail #case .carousel li>.inner .txt {
	font-size: 2.5vw;
	letter-spacing: 0.05em;
	max-height: 100px;
	text-align: center;
	color: #000066;
	margin-bottom: 7.8vw;
}

.caseDetail #case .carousel li>.inner .btMore {
	text-align: center;
}

.caseDetail #case .carousel li>.inner .btMore a img {
	width: auto;
	height: 0.7vw;
	max-height: 9px;
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.caseDetail #case .carousel li>.inner .btMore {
	text-align: center;
}

.caseDetail #case .carousel li>.inner .btMore a {
	display: inline-block;
	width: 20vw;
	height: 4.7vw;
	position: relative;
	text-align: center;
}

.caseDetail #case .carousel li>.inner .btMore a img {
	width: auto;
	height: 1.56vw;
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}



/*caseTags
=============================*/
.caseDetail #caseTags {
	border-bottom: 1px solid #efefef;
	padding-bottom: 5.5vw;
}

.caseDetail #caseTags>.inner {
	width: 80%;
	max-width: 1018px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding: 0 0.8vw;
}

.caseDetail #caseTags ul.btTags {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
}

.caseDetail #caseTags ul.btTags li {
	width: 47%;
	height: 6.25vw;
	margin-bottom: 3vw;
}

.caseDetail #caseTags ul.btTags li a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	text-align: center;
	border: 1px solid #000066;
	font-size: 1.8vw;
	color: #000066;
	background: #FFF;
	-webkit-border-radius: 3.125vw;
	-moz-border-radius: 3.125vw;
	border-radius: 3.125vw;
	overflow: hidden;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}

.caseDetail #caseTags ul.btTags li.casetag04 a {
	border: 1px solid #99bcc1;
	color: #99bcc1;
	background: #FFF;
}

.caseDetail #caseTags ul.btTags li a.on {
	color: #FFF;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}


/*=============================
business
=============================*/
.business #main {
	padding-bottom: 19vw;
	margin-bottom: 9.4vw;
	border-bottom: 1px solid #efefef;
}

.business #main .mainPh {
	background: url(../img/business/business_mainPh.jpg) no-repeat center center/cover;
}

.business #main .mainCopy {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	padding: 8.4vw 0;
}

.business #main .mainCopy img {
	height: 34vw;
	width: auto;
}

.business #main .mainTxt {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.business section>.inner {
	position: relative;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.business section ul.fbox li.txtArea .txt .bb {
	border-bottom: 1px solid #000066;
}

.business #bloc01 {
	margin-bottom: 9.4vw;
}

.business #bloc01 section {
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	margin-bottom: 9.4vw;
	padding: 7.8vw 0;
}

.business #bloc01 section:last-of-type {
	margin-bottom: 0;
}

.business #bloc01 section ul.fbox {}

.business #bloc01 section>.inner h1 {
	font-size: 4vw;
	line-height: 1.6;
	padding-bottom: 4.7vw;
	margin-bottom: 6.25vw;
	position: relative;
	text-align: center;
}

.business #bloc01 section>.inner h1::after {
	content: '';
	width: 9.4vw;
	border-bottom: 2px solid #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.business #bloc01_1 ul.fbox li.txtArea {
	margin-bottom: 10vw;
}

.business #bloc01_1 ul.fbox li.zu {}

.business #bloc01_1 ul.fbox li.txtArea .txt {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.business #bloc01_1 ul.fbox li.zu {
	height: 78vw;
	background: url(../img/business/business_zuBg.svg) no-repeat center center/57.8vw auto;
	position: relative;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li {
	position: absolute;
	top: 50%;
	left: 50%;
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 28vw;
	height: 28vw;
	border: 1px solid #000066;
	background: #FFF;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	font-size: 2vw;
	line-height: 1.57;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li.list01 {
	margin-top: -25.78vw;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li.list02 {
	margin-left: 25.78vw;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li.list03 {
	margin-left: -25.78vw;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li.list04 {
	margin-top: 25.78vw;
}

.business #bloc01_1 ul.fbox li.zu .zuTxtArea li.list02 span {
	text-indent: 0.5em
}

.business #bloc01_1 ul.fbox li.zu .txt01 {
	text-align: center;
	font-size: 2vw;
	line-height: 1.85;
	position: absolute;
	top: 50%;
	left: 50%;
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.business #bloc01_2 ul.fbox {}

.business #bloc01_2 ul.fbox li.txtArea {
	margin-bottom: 10vw;
}

.business #bloc01_2 ul.fbox li.zu {}

.business #bloc01_2 ul.fbox li.txtArea .txt {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.business #bloc01_2 ul.fbox li.zu img {
	width: 100%;
	height: auto;
}

.business #bloc01_3 h1 {
	font-size: 3.5vw !important;
}

.business #bloc01_3 .txt {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}



.business #bloc02>.titArea {
	margin-bottom: 8.6vw;
}

.business #bloc02>.titArea ul li {
	position: relative;
	text-align: center;
}

.business #bloc02>.titArea ul li:first-child {
	padding-bottom: 5.5vw;
}

.business #bloc02>.titArea ul li:first-child::before {
	content: '';
	width: 6.25vw;
	height: 2px;
	background: #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.business #bloc02>.titArea ul li.titEn_l img {
	height: 4.7vw;
	width: auto;
}

.business #bloc02 section {
	border-top: 1px solid #EFEFEF;
}

.business #bloc02_1>.inner {
	padding-top: 11vw;
	padding-bottom: 9.4vw;
}

.business #bloc02_1>.inner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border: 1.2vw solid transparent;
	border-left: 1.2vw solid #000066;
	border-top: 1.2vw solid #000066;
}

.business #bloc02_1 h1 {
	font-size: 3.75vw;
	line-height: 1.6;
	padding-bottom: 4.7vw;
	margin-bottom: 7vw;
	position: relative;
	text-align: center;
}

.business #bloc02_1 h1::after {
	content: '';
	width: 6.25vw;
	border-bottom: 2px solid #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.business #bloc02_1 ul.fbox {
	margin-bottom: 5.47vw;
}


.business #bloc02_1 ul.fbox,
.business #bloc02_1 ul.fbox li.txtArea dl {}

.business #bloc02_1 ul.fbox li.txtArea {}

.business #bloc02_1 ul.fbox li.ph {}

.business #bloc02_1 ul.fbox li.txtArea dl {
	margin-bottom: 7.8vw;
}

.business #bloc02_1 ul.fbox li.txtArea dl dt {
	height: 11.72vw;
	position: relative;
	font-size: 2.8vw;
	line-height: 1.75;
	border-top: 1px solid #000066;
	border-bottom: 1px solid #000066;
	margin-bottom: 2.34vw;
}

.business #bloc02_1 ul.fbox li.txtArea dl dt .vmTxt {
	width: 100%;
	position: absolute;
	text-align: center;
}

.business #bloc02_1 ul.fbox li.txtArea dl dd {
	font-size: 2.5vw;
	line-height: 2.15;
	margin-bottom: 4.7vw;
}

.business #bloc02_1 ul.fbox li.txtArea dl dd:last-of-type {
	margin-bottom: 0;
}


.business #bloc02_1 ul.fbox li.ph img {
	width: 100%;
	height: auto;
}

.business #bloc02_1 .btAni {
	width: 60vw;
	height: 12.5vw;
	margin-left: auto;
	margin-right: auto;
}

.business #bloc02_1 .btAni a {
	font-size: 2.5vw;
	border: 1px solid #000066;
	background: #FFF;
	text-align: center;
}

.business #bloc02_1 .btAni a .arrow {
	top: 50%;
	left: 1.95vw;
	width: 7.8vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}




.business #bloc02_2 {
	border-bottom: 1px solid #efefef;
}

.business #bloc02_2>.inner {
	padding-top: 7vw;
	padding-bottom: 10vw;
}

.business #bloc02_2 h1 {
	font-size: 4vw;
	margin-bottom: 7.8vw;
	text-align: center;
}

.business #bloc02_2 .projectList {
	background: #FFF;
}

.business #bloc02_2 .projectList ul {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	font-size: 2.5vw;
	border-left: 1px solid #efefef;
}

.business #bloc02_2 .projectList ul li {
	border-right: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
}

@media (min-width: 1280px) {
	.business #bloc02_2 .projectList ul {
		font-size: 0.13rem;
	}
}

.business #bloc02_2 .projectList ul li:nth-child(1) {
	width: 20%;
}

.business #bloc02_2 .projectList ul li:nth-child(2) {
	width: 15%;
}

.business #bloc02_2 .projectList ul li:nth-child(3) {
	width: 65%;
}

.business #bloc02_2 .projectList ul.head {
	background: #f5f5f5;
}

.business #bloc02_2 .projectList ul.head li {
	padding: 1.5vw 0.8vw 1.5vw 2.7vw;
}

@media (min-width: 1280px) {
	.business #bloc02_2 .projectList ul.head li {
		padding: 20px 10px 20px 35px;
	}
}

.business #bloc02_2 .projectList ul:not(.head) li {
	padding: 0.8vw 0.8vw 0.8vw 2.7vw;
}

@media (min-width: 1280px) {
	.business #bloc02_2 .projectList ul:not(.head) li {
		padding: 10px 10px 10px 35px;
	}
}

.business #bloc02_1 .sbox {

}
/*
.business #bloc02_1 .sbox .s-container:nth-of-type(1) {
		background: url(../img/content/service_01.png) no-repeat center center/cover;
}
.business #bloc02_1 .sbox .s-container:nth-of-type(2) {
		background: url(../img/content/service_02.png) no-repeat center center/cover;
}
.business #bloc02_1 .sbox .s-container:nth-of-type(3) {
		background: url(../img/content/service_03.png) no-repeat center center/cover;
}
*/

.business #bloc02_1 .sbox .s-container {
		display: flex;
		margin-bottom: 32px;
}
.business #bloc02_1 .sbox .s-container a:hover {
		text-decoration: none;
    filter: brightness(90%);
}
.business #bloc02_1 .sbox .s-container a.t-block:hover {
		transform: transparent
}
.business #bloc02_1 .sbox .s-container dl {
		padding: 16px 16px 10px;
}
.business #bloc02_1 .sbox .s-container a.t-block .s-morelink {
		position: relative;
		text-align: right;
		height: 2em;
}
.business #bloc02_1 .sbox .s-container a.t-block .s-morelink p {
		width: fit-content;
		position: absolute;
		top : 0;
		right: 36px;
		height: 1.8em;
}
.business #bloc02_1 .sbox .s-container a.t-block .s-morelink p:before {
		content: "";
		position: absolute;
		bottom: 3px;
    right: -12px;
    width: calc(100% + 24px);
    height: 1px;
		background: #000066;
		display: block;
		transition: all 0.25s ease;
}
.business #bloc02_1 .sbox .s-container a.t-block .s-morelink p:after {
		content: "";
		display: block;
		position: absolute;
		bottom: 4px;
		right: -12px;
		width: 0.5vw;
		height: 8px;
		max-width: 6px;
		max-height: 6px;
		-moz-transform-origin: right bottom;
		-webkit-transform-origin: right bottom;
		-o-transform-origin: right bottom;
		-ms-transform-origin: right bottom;
		transform-origin: right bottom;
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
		border-right: 1px solid #000066;
		transition: all 0.25s ease;
}
.business #bloc02_1 .sbox .s-container a.t-block:hover .s-morelink p:before {
		width: calc(100% + 42px);
		right: -24px;
}
.business #bloc02_1 .sbox .s-container a.t-block:hover .s-morelink p:after {
		right: -24px;
}
.business #bloc02_1 .sbox .s-container .s-text {
		display: flex;
		justify-content: center;
		flex-direction: column;
}
.business #bloc02_1 .sbox .s-container .s-text dt {
		font-size: 20px;
		margin-bottom: 10px;
		text-align: left;
		width: 100%;
}
.business #bloc02_1 .sbox .s-container dd {
		font-size: 14px;
		width: 100%;
		letter-spacing: 0px;
		line-height: 1.5;
}
.business #bloc02_1 .sbox .s-container a.t-block {
		width: 100%;
		display: flex;
		flex-direction: column;
    /*background: linear-gradient(to right, rgba(255,255,255, 0.45), rgba(255,255,255, 0.8) 50%,rgba(255,255,255, 0.98));*/
}
.business #bloc02_1 .sbox .s-container:nth-of-type(2) a.t-block {
		background: linear-gradient(to left, rgba(255,255,255, 0.45), rgba(255,255,255, 0.8) 50%,rgba(255,255,255, 0.98));
}
.business #bloc02_1 .sbox .s-container a.img-block {
		display: none;
}
.business #bloc02_1 .sbox .s-container a.img-block img {
		width: 100%;
		height: 100%;
		max-height: 150px;
		object-fit: cover;
}

.business #bloc02_1 .sbox .s-list {
		padding: 16px 8px;
		border-bottom: 1px solid #000066;
		display: flex;
		align-items: left;
		flex-direction: column;
}
.business #bloc02_1 .sbox .s-list:nth-of-type(1) {
		border-top: 1px solid #000066;
}
.business #bloc02_1 .sbox .s-list .s-item {
		border: 1px solid #000066;
		border-radius: 16px;
		font-size: 14px;
		padding: 8px 16px;
		width: fit-content;
		margin-bottom: 12px;
}
.business #bloc02_1 .sbox .s-list a {
		font-size: 15px;
		display: block;
		width: fit-content;
		text-align: left;
		line-height: 1.5em;
		position: relative;
		padding-left: 32px;
		line-height: 1.4em;
}
.business #bloc02_1 .sbox .s-list a:before {
		content: "";
		background: url(../img/business/service-arrow.png) no-repeat center center/cover;
		display: block;
		width: 16px;
		height: 16px;
		position: absolute;
		top: calc(50% - 8px);
		left: 4px;
}
.business #bloc02_1 .s-more {
			text-align: center;
			font-size: 14px;
			padding: 16px;
}


/*=============================
business cio
=============================*/
.cio .contents {
	padding-bottom: 16.8vw;
	margin-bottom: 7.8vw;
	border-bottom: 1px solid #efefef;
}

.cio #main {
	margin-bottom: 16.4vw;
}

.cio #main .mainPh {
	background: url(../img/business/cio_mainPh.jpg) no-repeat center center/cover;
	margin-bottom: 8.6vw;
}

.cio #main .fbox {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.cio #main .fbox .mainCopy {
	margin-bottom: 6.25vw;
}

.cio #main .fbox .mainCopy img {
	height: 14.8vw;
	width: auto;
}

.cio #main .fbox .mainTxt {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.cio section {
	border-top: 1px solid #efefef;
	margin-bottom: 15.6vw;
}

.cio section:last-of-type {
	margin-bottom: 0
}

.cio section>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.cio section h1.accBt {
	position: relative;
	height: 20vw;
}

.cio section h1.accBt::after {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.cio section h1.accBt .accBt-title,
.cio section h1.accBt a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	font-size: 3.75vw;
	text-align: center;
	color: #000066;
	background: #FFF;
}

.cio section h1.accBt .accBt-title::before,
.cio section h1.accBt a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border: 1.2vw solid transparent;
	border-left: 1.2vw solid #000066;
	border-top: 1.2vw solid #000066;
}

.cio section h1.accBt a .border {
	display: block;
	width: 3.9vw;
	height: 3.9vw;
	position: absolute;
	top: 50%;
	right: 2.7vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.cio section h1.accBt a .border::before,
.cio section h1.accBt a .border::after {
	content: '';
	background: #000066;
	position: absolute;
	-webkit-transition: transform 0.35s ease;
	-moz-transition: transform 0.35s ease;
	-ms-transition: transform 0.35s ease;
	-o-transition: transform 0.35s ease;
	transition: transform 0.35s ease;
}

.cio section h1.accBt a .border::before {
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0;
}

.cio section h1.accBt a .border::after {
	height: 100%;
	width: 1px;
	top: 0;
	left: 50%;
}

.cio section h1.accBt a.open .border::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.cio section h1.accBt a.open .border::after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.cio section div.accBt {
    position: relative;
    height: 20vw;
}
.cio section div.accBt::after {
    content: '';
    width: 100vw;
    height: 1px;
    background: #EFEFEF;
    position: absolute;
    bottom: 0;
    left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.cio section div.accBt .accBt-title {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    font-size: 3.75vw;
    text-align: center;
    color: #000066;
    background: #FFF;
}
.cio section div.accBt .accBt-title::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border: 1.2vw solid transparent;
    border-left: 1.2vw solid #000066;
    border-top: 1.2vw solid #000066;
}



.cio section .acc {
	display: none;
	padding: 4.7vw 3.9vw 0 3.9vw;
}

.cio section .acc .txt01 {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	letter-spacing: 0.05em;
}

.cio section .acc .box {
	margin-top: 3.9vw;
	border: 1px solid #efefef;
	background: #FFF;
	padding: 7vw 4.7vw 3.9vw;
}

.cio section .acc .box>h2 {
	font-size: 3.4vw;
	text-align: center;
	padding-bottom: 3vw;
	margin-bottom: 7.4vw;
	position: relative;
}

.cio section .acc .box>h2::after {
	content: '';
	width: 6.25vw;
	border-bottom: 2px solid #000066;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.cio section .acc .box ul.fbox {}

.cio section .acc .box ul.fbox>li {
	margin-bottom: 10vw;
}

.cio section .acc .box ul.fbox li h3 {
	height: 7.8vw;
	background: #f5f5f5;
	text-align: center;
	font-size: 2.8vw;
	margin-bottom: 2.3vw;
	letter-spacing: 0.05em;
}

.cio section .acc .box ul.fbox li .txt {
	font-size: 2.5vw;
	line-height: 2.15;
	letter-spacing: 0.05em;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	padding-bottom: 3vw;
	margin-bottom: 3vw;
	border-bottom: 1px solid #efefef;
}

.cio section .acc .box ul.fbox li .txt.bbno {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}

.cio section .acc .box ul.fbox li>ul {
	font-size: 2.5vw;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.cio section .acc .box ul.fbox li>ul li {
	margin-bottom: 1.17vw;
	text-indent: -0.75em;
	padding-left: 1.5em;
}

.cio section .acc .box ul.fbox li>ul li::before {
	display: inline-block;
	content: '\025CF';
	margin-right: 0.5em;
}
.cio section .acc .box ul.fbox li>ul a.service-link {
	position: relative;
}
.cio section .acc .box ul.fbox li>ul a.service-link p{
	text-decoration: underline;
	line-height: 1.4em;
	padding-left: 1.5em;
}
.cio section .acc .box ul.fbox li>ul a.service-link::before {
	content: "▶︎";
	font-size: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


.cio section .acc .box .needs {
	background: #f5f5f5;
	padding: 4.7vw 3.13vw 6.25vw;
}

.cio section .acc .box .needs h2 {
	font-size: 2.8vw;
	text-align: center;
	margin-bottom: 4.7vw;
	letter-spacing: 0.05em;
}

.cio section .acc .box .needs ul li {
	font-size: 2.5vw;
	line-height: 2.15;
	letter-spacing: 0.05em;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	position: relative;
	text-indent: -0.75em;
	padding-left: 1.5em;
}

@media (min-width: 1280px) {
	.cio section .acc .box .needs ul li {
		font-size: 0.13rem;
	}
}

.cio section .acc .box .needs ul li::before {
	display: inline-block;
	content: '\025CF';
	margin-right: 0.5em;
}





.cio #bloc02 .pic01 {
	border: 1px solid #efefef;
	background: #FFF;
	padding: 3.13vw;
	margin-top: 4.3vw;
}

@media (min-width: 1280px) {
	.cio #bloc02 .pic01 {
		margin-top: 55px;
		padding: 40px;
	}
}

.cio #bloc02 .pic01 img {
	width: 100%;
	height: auto;
}

.cio .bt_demodal {
	font-size: 0.13rem;
	margin-top: 15px;
}

.cio .bt_demodal a {
	color: #000066;
	text-decoration: underline;
}


.cio .demodalBg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

.cio .demodalBg.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

.cio .demodal {
	position: fixed;
	top: 50%;
	left: 50%;
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: #FFF;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 10;
}

.cio .demodal.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

.cio .demodal .inner {
	padding: 50px;
}

.cio .demodal .inner h3 {
	font-size: 0.18rem;
	text-align: center;
	position: relative;
	padding-bottom: 25px;
	margin-bottom: 40px;
}

.cio .demodal .inner h3::after {
	content: '';
	width: 40px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -20px;
	background: #000066;
}

.cio .demodal .inner .list ul {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	font-size: 0.13rem;
}

.cio .demodal .inner .list ul li {
	width: 50%;
	padding: 15px 0;
}

.cio .demodal .inner .list ul.head {
	text-align: center;
	border-bottom: 1px solid #efefef;
	background: #e9eef4;
	font-size: 0.13rem;
}

.cio .demodal .inner .list ul.head li:first-child {
	border-right: 1px solid #efefef;
}

.cio .demodal .inner .list ul:not(.head) li {
	text-align: center;
	border-bottom: 1px solid #efefef;
}

.cio .demodal .inner .list ul:not(.head) li:nth-child(2n-1) {
	border-right: 1px solid #efefef;
}

.cio .demodal .inner .txt {
	margin-top: 10px;
	text-align: right;
}

.cio .demodal .bt_demodal_close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 30px;
	height: 30px;
}

.cio .demodal .bt_demodal_close a {
	display: block;
	width: 100%;
	height: 100%;
}

.cio .demodal .bt_demodal_close a::before,
.cio .demodal .bt_demodal_close a::after {
	content: '';
	width: 100%;
	height: 1px;
	background: #000066;
	position: absolute;
	top: 50%;
	left: 0;
}

.cio .demodal .bt_demodal_close a::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.cio .demodal .bt_demodal_close a::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}


.cio .bt_modal {
	font-size: 0.13rem;
	margin-top: 15px;
}

.cio .bt_modal a {
	color: #000066;
	text-decoration: underline;
}

/** sp_top.css より移植 **/
.cio .btAni {
	width: 65.6vw;
	height: 12.5vw;
	/*position: absolute;*/
	position: relative;
	bottom: 0;
	left: 50%;
	-moz-transform: translate(-50%, 50%);
	-webkit-transform: translate(-50%, 50%);
	-o-transform: translate(-50%, 50%);
	-ms-transform: translate(-50%, 50%);
	transform: translate(-50%, 50%);
	z-index: 10;
}

.cio .btAni a {
	background: #000066;
	text-align: center;
	color: #FFF;
	font-size: 2.8vw;
}

.cio .btAni a .arrow {
	top: 50%;
	left: 2.3vw;
	width: 7.8vw;
	height: 1.25vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


.bizmodal {

	padding: 0 3vw;
}

.bizmodal .inner {
	background: #FFF;
	padding: 50px;
	color: #000066;
	padding: 6.25vw 3.9vw 3.9vw;
	position: relative;
}

#modal01 .inner h3 {
	font-size: 3.4vw;
	text-align: center;
	position: relative;
	padding-bottom: 3.9vw;
	margin-bottom: 5.5vw;
}

#modal01 .inner h3::after {
	content: '';
	width: 40px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -20px;
	background: #000066;
}

#modal01 .inner .list ul {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	font-size: 0.13rem;
}

#modal01 .inner .list ul li {
	width: 50%;
	padding: 3.9vw 0;
}

#modal01 .inner .list ul.head {
	text-align: center;
	border-bottom: 1px solid #efefef;
	background: #e9eef4;
	font-size: 0.13rem;
}

#modal01 .inner .list ul.head li:first-child {
	border-right: 1px solid #efefef;
}

#modal01 .inner .list ul:not(.head) li {
	text-align: center;
	border-bottom: 1px solid #efefef;
}

#modal01 .inner .list ul:not(.head) li:nth-child(2n-1) {
	border-right: 1px solid #efefef;
}

#modal01 .inner .txt {
	margin-top: 1.5vw;
}

.bizmodal .bt_modal_close {
	position: absolute;
	top: 2.3vw;
	right: 2.3vw;
	width: 4.7vw;
	height: 4.7vw;
}

.bizmodal .bt_modal_close a {
	display: block;
	width: 100%;
	height: 100%;
}

.bizmodal .bt_modal_close a::before,
.bizmodal .bt_modal_close a::after {
	content: '';
	width: 100%;
	height: 1px;
	background: #000066;
	position: absolute;
	top: 50%;
	left: 0;
}

.bizmodal .bt_modal_close a::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.bizmodal .bt_modal_close a::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}

/*=============================
value
=============================*/
.value .contents {
	border-bottom: 1px solid #EFEFEF;
	margin-bottom: 21.9vw;
	padding-bottom: 7.8vw;
}

.value #main .mainPh {
	background: url(../img/value/value_mainPh.jpg) no-repeat center center/cover;
}

.value #main .mainCopy {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	padding: 7.8vw 0 16.5vw;
}

.value #main .mainCopy img {
	height: 34vw;
	width: auto;
}

.value section {
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	margin-bottom: 11.72vw;
}

.value section:last-of-type {
	margin-bottom: 0;
}

.value section>.inner {
	padding-top: 7.8vw;
	position: relative;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.value section>.inner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border: 2vw solid transparent;
	border-left: 2vw solid #000066;
	border-top: 2vw solid #000066;
}

.value section>.inner {}

.value section>.inner h1 {
	font-size: 4vw;
	margin-bottom: 7.8vw;
	text-align: center;
}

.value section>.inner .txtArea {}

.value section>.inner .txtArea ul {
	margin-bottom: 6.25vw;
}

.value section>.inner .txtArea ul li {
	font-size: 2.8vw;
	line-height: 1.5;
	text-indent: -0.75em;
	padding-left: 1.5em;
	margin-bottom: 1em;
}

.value section>.inner .txtArea ul li:last-child {
	margin-bottom: 0;
}

.value section>.inner .txtArea ul li:before {
	display: inline-block;
	content: '\025CF';
	margin-right: 0.5em;
}

.value section>.inner .ph img {
	width: 100%;
	height: auto;
}


/*=============================
aboutus
=============================*/
nav.aboutusNav {
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	padding-top: 7vw;
	margin-top: 18.75vw;
}

nav.pnav .aboutusList {
	width: 80%;
	max-width: 1020px;
	margin-left: auto;
	margin-right: auto;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	padding-top: 7.4vw;
	position: relative;
}

nav.pnav .aboutusList::before {
	content: '';
	width: 6.25vw;
	height: 2px;
	position: absolute;
	top: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #000066;
}

nav.pnav .aboutusList>li {
	width: 50%;
	margin-bottom: 8.6vw;
	position: relative;
}

nav.pnav .aboutusList>li:nth-child(odd)::before {
	content: '';
	width: 100vw;
	border-top: 1px solid #EFEFEF;
	position: absolute;
	top: 0;
	left: 100%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

nav.pnav .aboutusList>li a {
	display: block;
	position: relative;
}

/*
nav.pnav .aboutusList > li a::before{
	content: '';
	display: block;
	width: 100%;
	height: 22.27vw;
	margin-bottom: 4.7vw;
}

nav.pnav .aboutusList > li.list01 a::before{background: url(../img/aboutus/pnav01_ph.jpg) no-repeat center center/cover;}
nav.pnav .aboutusList > li.list02 a::before{background: url(../img/aboutus/pnav02_ph.jpg) no-repeat center center/cover;}
nav.pnav .aboutusList > li.list03 a::before{background: url(../img/aboutus/pnav03_ph.jpg) no-repeat center center/cover;}
nav.pnav .aboutusList > li.list04 a::before{background: url(../img/aboutus/pnav04_ph.jpg) no-repeat center center/cover;}
*/
nav.pnav .aboutusList>li a .ph {
	width: 100%;
	height: 22.27vw;
	margin-bottom: 4.7vw;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/*nav.pnav .aboutusList > li.list03 a .ph{background: url(../img/aboutus/pnav03_ph.jpg) no-repeat center center/cover;}
nav.pnav .aboutusList > li.list04 a .ph{background: url(../img/aboutus/pnav04_ph.jpg) no-repeat center center/cover;}*/


nav.pnav .aboutusList>li a * {
	text-align: center;
	position: relative;
}

nav.pnav .aboutusList .titJp {
	padding-bottom: 2.3vw;
	margin-bottom: 2.3vw;
}

nav.pnav .aboutusList .titJp::before {
	content: '';
	width: 6.25vw;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #000066;
}

nav.pnav .aboutusList .titJp img {
	height: 3.13vw;
	width: auto;
}

nav.pnav .aboutusList .titEn img {
	height: 1.56vw;
	width: auto;
}





/*aboutus
=============================*/
.aboutus #main .mainPh {
	/*background: url(../img/aboutus/aboutus_mainPh.jpg) no-repeat center center/cover;*/
}

.aboutus #main {
	margin-bottom: 10vw;
}

.aboutus .contents {
	position: relative;
	padding-bottom: 15.6vw;
}

.aboutus .contents dl {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	font-size: 2.5vw;
	line-height: 2.15;
}

.aboutus .contents>dl {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.aboutus .contents>dl>dt {
	width: 20%;
	margin-bottom: 4.7vw;
}

.aboutus .contents>dl>dd {
	width: 80%;
	margin-bottom: 4.7vw;
}

.aboutus .contents>dl>dd img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.aboutus .contents>dl>dd>dl>dt {
	width: 25%;
}

.aboutus .contents>dl>dd>dl>dd {
	width: 75%;
}

.aboutus .contents>dl>dd.fbox {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
}

/*
.aboutus .contents > dl > dd.fbox ul{
	width: 50%;
	margin-bottom: 3em;
}*/
.aboutus .contents>dl>dd.fbox ul:last-child,
.aboutus .contents>dl>dd.fbox ul:nth-last-child(2) {
	margin-bottom: 0;
}

.aboutus .contents>dl>dd.fbox ul li {
	line-height: 1.5;
	margin-bottom: 0.5em;
}

.aboutus .contents>dl>dd.fbox ul li:not(:first-child) {
	text-indent: -1em;
	padding-left: 1em;
}

.aboutus .contents dl dd a {
	color: #336699;
	text-decoration: underline;
}


/*topmessage
=============================*/
.topmessage #main .mainPh {
	background: url(../img/aboutus/topmessage_mainPh.jpg) no-repeat center center/cover;
}

.topmessage #main {
	margin-bottom: 11vw;
}

.topmessage ul.txtList {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.topmessage ul.txtList li {
	font-size: 2.8vw;
	line-height: 2.1;

	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	position: relative;
}

.topmessage ul.txtList li:first-child {
	margin-bottom: 3em;
}

.topmessage ul.txtList li:last-child {
	padding-bottom: 23vw;
}

.topmessage ul.txtList li p.nameArea {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 2.5vw;
}

.topmessage ul.txtList li p.nameArea span {
	display: block;
}

.topmessage ul.txtList li p.nameArea span.txt {
	margin-bottom: 0.5em;
}

.topmessage ul.txtList li p.nameArea span.name {
	width: 28.9vw;
	height: 6.48vw;
}

.topmessage ul.txtList li p.nameArea span.name img {
	width: 100%;
	height: auto;
}


/*ourvision
=============================*/
.ourvision #main {
	margin-bottom: 25vw;
}

.ourvision #main .mainPh {
	background: url(../img/aboutus/ourvision_mainPh.jpg) no-repeat center center/cover;
}

.ourvision #main .txtArea {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 4.7vw;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.ourvision #main .txtArea>* {}

.ourvision #main .txtArea .mainCopy {
	margin-bottom: 6.25vw;
}

.ourvision #main .txtArea .mainCopy img {
	display: block;
	width: auto;
	height: 30vw;
}

.ourvision #main .txtArea .mainTxt {
	font-size: 2.8vw;
	line-height: 2.25;
	white-space: nowrap;
}

.ourvision #main .txtArea .mainTxt img {
	width: auto;
	height: auto;
	max-width: 100%;
}


.ourvision .contents {}

.ourvision section {
	border-top: 1px solid #EFEFEF;
	margin-bottom: 3vw;
}

.ourvision section:last-of-type {
	margin-bottom: 0;
}

.ourvision section>.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	border-right: 1px solid #efefef;
	border-left: 1px solid #efefef;
	padding-top: 7vw;
}

.ourvision section>.inner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border: 1.2vw solid transparent;
	border-left: 1.2vw solid #000066;
	border-top: 1.2vw solid #000066;

}

.ourvision section ul.list {}

.ourvision section ul.list>li {}

.ourvision section ul.list>li.txtArea {}

.ourvision section ul.list>li.txtArea p.txt01 {
	font-size: 3vw;
	text-align: center;
	position: relative;
	padding-top: 2.3vw;
	letter-spacing: 0.2em;
	margin-bottom: 3.9vw;
}

.ourvision section ul.list>li.txtArea p.txt01::before {
	content: '';
	width: 6.25vw;
	height: 2px;
	position: absolute;
	top: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #000066;
}

.ourvision section ul.list>li.txtArea h1 {
	font-size: 4vw;
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 1.6;
	margin-bottom: 8.4vw;
}

.ourvision section ul.list>li.txtArea .txt02 {
	font-size: 2.5vw;
	line-height: 2.15;
}

.ourvision section ul.list>li.txtArea .txt02 img {
	width: auto;
	height: auto;
	max-width: 100%;
}


.ourvision section ul.list>li.ph {
	margin-top: 7.8vw;
}

.ourvision section .ph {
	padding-top: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}



.ourvision section .txtArea ul {
	margin-top: 6.25vw;
	text-align: left;
	font-size: 2.5vw;
	line-height: 1.5;
}

.ourvision section .txtArea ul li {
	text-indent: -0.75em;
	padding-left: 1.5em;
	margin-bottom: 0.75em;
}

.ourvision section .txtArea ul li::before {
	display: inline-block;
	content: '\025CF';
	margin-right: 0.5em;
}

/*
.value section > .inner .txtArea ul li{
	font-size: 1.25vw;
	text-indent: -0.75em;
	padding-left: 1.5em;
	margin-bottom: 1em;
}
.value section > .inner .txtArea ul li:last-child{
	margin-bottom: 0;
}
@media (min-width: 1280px) {
	.value section > .inner .txtArea ul li{font-size: 0.16rem;}
}
.value section > .inner .txtArea ul li:before{
	display: inline-block;
	content: '\025CF';
	margin-right: 0.5em;
}
*/




.ourvision nav.aboutusNav {
	margin-top: 0 !important;
}


/*access
=============================*/
.access #main {
	margin-bottom: 10vw;
}

.access #main .sec_body_map {
	display: block;
	width: 100%;
	height: 67vw;
}

.access ul.list {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.access ul.list li {
	font-size: 2.5vw;
	line-height: 2.15;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
}

.access ul.list li:first-child {
	margin-bottom: 12.5vw;
}

.access ul.list li h3 {
	width: 26%;
}

.access ul.list li .txtArea {
	width: 74%;
}

.access .btAni {
	width: 60vw;
	height: 12.5vw;
	margin-top: 1.95vw;
}

.access .btAni a {
	background: #000066;
	text-align: center;
	color: #FFF;
	font-size: 2.5vw;
}

.access .btAni a .arrow {
	top: 50%;
	left: 4.7vw;
	width: 7.8vw;
	height: 1vw;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}


/*=============================
etc
=============================*/
.etc div.sign {
	border-top: 1px solid #EFEFEF;
	border-bottom: 1px solid #EFEFEF;
	padding: 6.25vw 0 23vw 0;
	margin-bottom: 6.25vw;
}

.etc div.sign p.txt {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	text-align: right;
	font-size: 2.5vw;
	line-height: 2.15;
}

.etc .contents>div.inner {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	border-right: 1px solid #efefef;
	border-left: 1px solid #efefef;
}

.etc .txt01 {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

@media (min-width: 1280px) {
	.etc .txt01 {
		font-size: 0.13rem;
	}
}

/*privacy
=============================*/
.privacy dl.list {
	margin-top: 18vw;

}

.privacy dl.list>dt {
	font-size: 4.3vw;
	margin-bottom: 4.7vw;
	position: relative;
}

.privacy dl.list dt::before {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	top: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.privacy dl.list>dd {
	font-size: 2.5vw;
	line-height: 2.15;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 15vw;
}

.privacy dl.list>dd img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.privacy dl.inner {
	margin-top: 4.3vw;
}

.privacy dl.inner dt {
	font-size: 3vw;
	position: relative;
}

.privacy dl.inner dd {
	margin-bottom: 10vw;
}

.privacy dl.inner dd:last-of-type {
	margin-bottom: 0;
}


/*security
=============================*/
.security dl.list {
	margin-top: 14vw;
	position: relative;
}

.security dl.list>dt::before {
	content: '';
	width: 100vw;
	height: 1px;
	background: #EFEFEF;
	position: absolute;
	top: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.security dl.list>dt {
	font-size: 4.4vw;
	margin-bottom: 11.72vw;
}

.security dl.list>dd {
	font-size: 3vw;
	line-height: 2.15;

	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 9.4vw;
}

.security dl.list>dd img {
	width: auto;
	height: auto;
	max-width: 100%;
}

.security dl.inner {}

.security dl.inner dt {
	font-size: 3vw;
}

.security dl.inner dd {
	font-size: 2.5vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 9.4vw;
}

.security dl.inner dd:last-of-type {
	margin-bottom: 0;
}


/*it-system
=============================*/
.cmn-qa {
    box-sizing: border-box;
    padding: 60px 0px;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
}
.cmn-qa .section-title {
    font-size: 18px;
    text-align: center;
    position: relative;
    margin-bottom: 40px;
}
.cmn-qa .section-title:before {
    content: "";
    height: 1px;
    width: 3vw;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #040464;
}
.cmn-qa .section-title h2 {
    padding-bottom: 20px;
    line-height: 1.5em;
    font-weight: 900;
}
.cmn-qa .question-accordion {
    width: 80%;
    margin: 0px auto 30px;
}