/*------------------------------------------
 animation
--------------------------------------------*/
.setScMc{
	opacity:0;
	transform:translateY(40px);
	transition:all 0.4s ease 0.2s;
}
.setScMc.enter{
	opacity:1;
	transform:translateY(0);
}
/*------------------------------------------
 font size
--------------------------------------------*/
.f18 {
	font-size: 1.8rem;
}
.f19 {
	font-size: 1.9rem;
}
.f22 {
	font-size: 2.2rem;
}
.f28 {
	font-size: 2.8rem;
}
.f38 {
	font-size: 3.8rem;
}
@media (max-width: 767px) {
	.f18 {
		font-size: 1.7rem;
	}
	.f19 {
		font-size: 1.7rem;
	}
	.f22 {
		font-size: 2rem;
	}
	.f28 {
		font-size: 2.2rem;
	}
	.f38 {
		font-size: 2.6rem;
	}
}
/*------------------------------------------
 margin
--------------------------------------------*/
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb70 {
	margin-bottom: 70px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}
.mb90 {
	margin-bottom: 90px !important;
}
.mb100 {
	margin-bottom: 100px !important;
}
.mb150 {
	margin-bottom: 150px !important;
}
@media (max-width: 767px) {
	.mb20 {
		margin-bottom: 10px !important;
	}
	.mb30 {
		margin-bottom: 20px !important;
	}
	.mb40 {
		margin-bottom: 25px !important;
	}
	.mb50 {
		margin-bottom: 30px !important;
	}
	.mb60 {
		margin-bottom: 35px !important;
	}
	.mb70 {
		margin-bottom: 40px !important;
	}
	.mb80 {
		margin-bottom: 40px !important;
	}
	.mb90 {
		margin-bottom: 45px !important;
	}
	.mb100 {
		margin-bottom: 50px !important;
	}
	.mb150 {
		margin-bottom: 60px !important;
	}
}

main.container {
	overflow: hidden;
}
/*-- MAIN IMAGE --*/
.custom-main-visual-outer {
	margin-left: -15px;
	margin-right: -15px;
}
.custom-main-visual-text {
	color: #fff;
	text-align: center;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}
.custom-main-visual {
	position: relative;
}
.custom-main-visual-img {
	width: 100%;
}
.custom-main-visual-img img {
	width: 100%;
}
.custom-main-visual-text {
	line-height: 2;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.custom-main-visual-text {
	font-size: 7.4rem;
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	line-height: 1;
	font-weight: 800;
	color: #fff;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.8);
}

/* Virtual Innovation Road */
.custom-main-visual-img.bg {
	background-image: url(../images/design_bg.jpg);
    height: 340px;
	background-size: cover;
}
main.container {
	width: 100% !important;
}
@media (min-width: 768px) {
	main.container .row {
		max-width: 738px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 1140px) {
	main.container .row {
		max-width: 1140px;
	}
	.custom-main-visual-text {
		font-size: 8.4rem;
	}
}

#brand-logo {
	z-index: 35;
	position: relative;
}

.nav-pills {
	display: flex;
	justify-content: center;
	margin-top: 50px;
	margin-bottom: 80px;
}
.nav-pills > li {
	float: none;
}
.nav-pills > li > a {
	border-radius: 24px;
	background-color: #fff;
	border: 1px solid #7b47d2;
	padding: 7px 14px;
	font-size: 1.5rem;
	color: #7b47d2;
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	margin: 0 3px;
}
.nav-pills > li > a:hover {
	background-color: #7b47d2;
	border: 1px solid #7b47d2;
	color: #fff;
}
.nav-pills > li > a:active,
.nav-pills > li > a:focus {
	background-color: #7b47d2;
	border: 1px solid #7b47d2;
	color: #fff;
}
.nav-pills > li > a::after {
	display: inline-block;
	content: "\f107";
	font-family: FontAwesome;
	margin-left: 4px;
	font-size: 2rem;
	font-weight: bold;
	vertical-align: -1px;
}
/* title */
.page-title {
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	line-height: 1.1;
}
h2.page-title {
	font-size: 6.6rem;
	margin-bottom: 30px;
	font-weight: 600;
}
h3.page-title {
	font-size: 3.2rem;
	margin-bottom: 20px;
	line-height: 1.4;
}

.container-borderBox {
	border: 13px solid #e6e6e6;
	background-color: #fff;
	padding: 50px 55px;
	position: relative;
}
.container-borderBox::before {
	content: "";
	position: absolute;
	width: 400px;
	height: 345px;
	background-image: url(../images/design_bg01.jpg);
	background-size: cover;
	z-index: -10;
	top: 100px;
	right: -80px;
}
.container-message {
	margin-bottom: 200px;
}
.container-message .f20 {
	font-size: 2rem;
}
.container-message .lh13 {
	line-height: 1.3;
}
.container-message h3.page-title {
	font-size: 2.8rem;
	font-weight: normal;
}
.container-message {
	position: relative;
}
.container-message .col-sm-6 {
	position: relative;
}
.container-message::before {
	content: "";
	position: absolute;
	width: 660px;
	height: 625px;
	background-image: url(../images/design_bg015.jpg);
	background-size: cover;
	z-index: -10;
	bottom: -90px;
	right: 100px;
}

.justify {
	text-align:justify;
}
.container-shadowBox-commitment-action {
	position: relative;
}
.container-shadowBox {
	padding: 30px;
	box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	-webkit-box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	-moz-box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	border-radius: 12px;
	background: #fff;
}
.container-diversity {
	position: relative;
}
.container-diversity::before {
	content: "";
	position: absolute;
	width: 885px;
	height: 780px;
	background: #eeeeee;
	z-index: -15;
	top: -230px;
	left: -15px;
}
.container-diversity::after {
	content: "";
	position: absolute;
	width: 886px;
	height: 650px;
	background-image: url(../images/design_bg03.jpg);
	background-size: cover;
	z-index: -10;
	bottom: -500px;
	left: -15px;
}
.container-diversity .flexBox {
	position: relative;
	justify-content: space-between;
}
.container-diversity .flexBox::after {
	content: "";
	position: absolute;
	width: 680px;
	height: 532px;
	background-image: url(../images/design_bg02.jpg);
	background-size: cover;
	z-index: -10;
	bottom: -390px;
	right: -380px;
}
.container-diversity .container-shadowBox h4 {
	font-size: 3.2rem;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 4px solid #dcdcdc;
	font-weight: normal;
}
.container-diversity .container-shadowBox h5 {
	font-size: 2.4rem;
	margin-bottom: 30px;
	font-weight: normal;
}
.container-besideBox,
.container-verticalBox {
	box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	-webkit-box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	-moz-box-shadow: rgba(90, 90, 90, 0.2) 0 0 15px;
	transition: all 0.2s ease;
	padding: 0;
}
a.container-besideBox {
	background: #fff;
}
a.container-besideBox:hover,
a.container-verticalBox:hover {
	text-decoration: none;
	background: #e4e1e9;
}
.container-besideBox .textBox {
	padding: 30px 35px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.container-verticalBox .textBox {
	padding: 25px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.container-besideBox .textBox .date {
	color: #858585;
	font-size: 2rem;
}
.container-verticalBox .textBox .date {
	color: #858585;
	font-size: 1.8rem;
}
.container-besideBox .textBox .tag,
.container-verticalBox .textBox .tag {
	color: #5c5c5c;
	font-size: 1.2rem;
	padding: 4px 20px;
	border: 1px solid #5c5c5c;
	border-radius: 14px;
	margin-left: 20px;
}
.container-besideBox .textBox h3 {
	font-size: 1.8rem;
	margin-top: 0;
	color: #333;
	width: 100%;
}
.container-verticalBox .textBox h3 {
	font-size: 1.8rem;
	margin-top: 0;
	color: #333;
	width: 100%;
}
.container-besideBox .textBox h3 small {
	font-size: 1.6rem;
	display: block;
	margin-top: 10px;
	color: #333;
}
.brandstory .container-besideBox .textBox {
	align-items: flex-start;
	justify-content: center;
	flex-flow: column;
	background: url(../images/image_bg.jpg) repeat-y right top;
	padding: 20px 40px 20px 20px;
}
.brandstory .container-besideBox .textBox h3 {
	font-size: 2rem;
	margin-bottom: 30px;
}
.brandstory .container-besideBox .textBox p {
	width: 100%;
}
.brandstory .container-verticalBox .textBox {
	height: 100%;
	background: url(../images/image_bg_thumbnail.jpg) repeat-y left top;
	padding: 30px 30px 20px 40px;
}
.brandstory .container-verticalBox .textBox h3 {
	font-size: 2rem;
}
.pride .container-besideBox .textBox p {
	margin-bottom: 0;
}
.pride .container-besideBox .textBox p:not(.text-readmore) {
	color: #333;
}

.text-readmore {
	color: #7b47d2;
	line-height: 1.3;
}
.text-readmore::after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	margin-left: 10px;
	font-size: 2rem;
	font-weight: bold;
	vertical-align: -1px;
}

.button-readmore {
	text-align: center;
}
.button-readmore a {
	display: block;
	background-color: #7b47d2;
	color: #fff;
	border-radius: 30px;
	width: 250px;
	font-size: 2rem;
	padding: 15px 10px;
	text-align: center;
	margin: auto;
	transition: all 0.2s ease;
}
.button-readmore a::after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	margin-left: 10px;
	font-size: 2rem;
	font-weight: bold;
	vertical-align: -1px;
}
.button-readmore a:hover {
	text-decoration: none;
	background-color: #ac7aff;
	color: #fff;
}
.container-stories {
	position: relative;
	background-image: url(../images/design_bg04.jpg);
	background-repeat: repeat-x;
	padding-top: 100px;
	margin-left: -15px;
	margin-right: -15px;
}
.container-reports a .textBox .f20 {
	font-size: 1.6rem;
	line-height: 1.2;
}
.container-certifications-initiatives {
	margin-left: auto;
	margin-right: auto;
}
.container-certifications-initiatives .flexBox {
	flex-wrap: wrap;
}
.container-certifications-initiatives .col-sm-3 {
	width: 49%;
	margin-bottom: 40px;
	padding: 0;
}
.container-stories .button-readmore a {
    border-radius: 38px;
    background-color: #7b47d2;
    border: 1px solid #7b47d2;
    padding: 12px 60px;
    font-size: 2rem;
    color: #fff;
    font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
    margin: 0 3px;
    display: block;
    text-align: center;
    transition: all 0.2s ease;
    text-decoration: none;
    margin: auto;
    position: relative;
    width: fit-content;
}
.container-stories .button-readmore a:hover {
    background-color: #fff;
    color: #7b47d2;
}
.container-stories .button-readmore a::after {
	display: inline-block;
    content: "\f105";
    font-family: FontAwesome;
    margin-left: 10px;
    font-size: 2rem;
    font-weight: bold;
    position: absolute;
    right: 25px;
    margin: auto;
}
@media (min-width: 1140px) {
	.container-certifications-initiatives .flexBox {
		justify-content: flex-start;
	}
	.container-certifications-initiatives .col-sm-3 {
		width: 255px;
		margin-right: 40px;
	}
	.container-certifications-initiatives .col-sm-3:nth-child(4n) {
		margin-right: 0;
	}
	
	.container-besideBox .textBox h3 {
		font-size: 3rem;
	}
	.brandstory .container-besideBox .textBox {
		width: 580px;
		padding: 30px 50px 30px  35px;
	}
	.brandstory .container-besideBox img {
		width: 560px;
	}
	.brandstory .container-besideBox .textBox h3 {
		font-size: 3rem;
	}
	.brandstory .container-verticalBox .textBox h3 {
		font-size: 2.6rem;
	}
	.pride .container-besideBox .textBox {
		padding: 30px 50px;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
}
@media (min-width: 768px) and (max-width: 1139px) {
	.brandstory .container-besideBox .textBox h3 {
		margin-bottom: 20px;
	}
	.brandstory .container-besideBox .textBox p:not(.text-readmore) {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.brandstory .container-besideBox .textBox p.text-readmore {
		margin-bottom: 0;
	}
}


/*タブのヘッダー固定*/
.header-tabs {
	position: fixed;
	transition: all 0.2s ease 0s;
	left: 0;
	right: 0;
	top: -100px;
	z-index: 30;
	opacity: 0 !important;
}
.header-tabs.m_fixed {
	position: fixed;
	top: 0;
	opacity: 1 !important;
}
.header-tabs.m_fixed .nav-pills {
	margin-bottom: 0;
}
.image-center {
	margin: auto;
	float: none;
}
.box-sign {
	margin-bottom: 20px;
	width: 190px;
}
@media (min-width: 768px) {
	body {
		font-size: 1.8rem;
	}
	a:hover {
		color: #7b47d2;
	}
	.container-message {
		padding-top: 10px;
	}
	.container-message .col-sm-4 {
		width: 100%;
		padding: 0;
	}
	.container-message .col-sm-6 {
		width: 655px;
		padding: 0;
		float: right;
		margin-top: 65px;
	}
	
	.container-reports .col-sm-6 {
		padding: 0;
	}
	.container-reports a {
		display: block;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.container-reports a img {
		max-width: 160px;
		max-height: 160px;
	}
	.container-reports a .textBox {
		width: 200px;
	}
	.container-reports a .textBox .f20 {
		font-size: 2rem;
	}
	.container-shadowBox.halfBox {
		width: 49%;
	}
	a.container-besideBox {
		display: flex;
	}
	.container-besideBox img {
		width: 50%;
	}
	.container-besideBox .textBox {
		width: 50%;
	}

	.col-sm-4.container-verticalBox {
		width: 360px;
		display: flex;
		flex-flow: column;
	}
	.flexBox {
		display: flex;
		justify-content: space-between;
	}
	.flexBox.flex-start {
		justify-content:flex-start;
	}
	.flexBox.flex-start .container-verticalBox {
		margin-left: 30px;
	}
	.flexBox.flex-start .container-verticalBox:first-child {
		margin-left: 0;
	}
	.flexBox.flex-tac {
		justify-content: center;
		gap: 0 30px;
	}
	.piegraph {
		width: 100%;
	}
	.box-sign {
		width: 290px;
	}
}
@media (min-width: 1140px) {
	.container-message .col-sm-4 {
		width: 435px;
	}
	.container-shadowBox.halfBox {
		width: 555px;
	}
	.piegraph {
		width: 374px;
	}
	.container-borderBox {
		width: 750px;
		margin: auto;
	}
	.container-reports a img {
		max-width: 220px;
		max-height: 220px;
	}
	.container-reports a .textBox {
		width: 310px;
	}
}
@media (max-width: 767px) {
	.custom-main-visual-text {
		font-size: 3.2rem;
		line-height: 1.1;
	}

	.custom-main-visual-img.bg {
		height: 170px;
	}

	.container-fluid {
		padding: 0;
	}
	.wrap-product-tabs {
		overflow-x: scroll;
		direction: ltr;
		scrollbar-width: thin;
		-webkit-overflow-scrolling: touch;
	}
	.wrap-product-tabs::-webkit-scrollbar {
		cursor: pointer;
		height: 6px;
		border-radius: 20px;
	}
	.wrap-product-tabs::-webkit-scrollbar-track {
		background-color: #fff;
	}
	.wrap-product-tabs::-webkit-scrollbar-thumb{
		background-color: #8c8c8c;
		cursor: pointer;
		border-radius: 20px;
	 }
	.nav-pills {
		margin-top: 25px;
		margin-bottom: 30px;
		justify-content: left;
	}
	.nav-pills > li > a {
		white-space: nowrap;
		font-size: 1.3rem;
		padding: 2px 10px 2px 15px;
	}

	h2.page-title {
		font-size: 3.2rem;
		margin-bottom: 15px;
	}
	h3.page-title {
		font-size: 2.6rem;
		margin-bottom: 15px;
		line-height: 1.3;
	}

	.container-borderBox {
		border: 8px solid #e6e6e6;
		padding: 20px;
	}
	.container-borderBox::before {
		width: 60%;
		height: 210px;
		bottom: -25px;
		top: auto;
		right: -23px;
	}
	.container-message {
		margin-bottom: 100px;
	}
	.container-message h2 {
		text-align: center;
	}
	.container-message .lh13 {
		margin-bottom: 30px;
	}
	.container-message h3.page-title {
		font-size: 2rem;
	}
	.container-message .col-sm-6 {
		padding: 0 0 0 15px;
	}
	.container-message::before {
		width: 340px;
		height: 260px;
		bottom: -40px;
		right: auto;
		left: 0;
	}

	.col-xs-12 {
		float: none;
	}
	.container-diversity {
		padding: 0 15px;
	}
	.container-shadowBox {
		padding: 20px;
		margin: 0 0 30px;
	}
	.container-diversity::before {
		width: 190px;
		height: 340px;
		top: -100px;
		left: -15px;
	}
	.container-diversity::after {
		width: 160px;
		height: 480px;
		z-index: -10;
		bottom: -320px;
		left: -15px;
	}
	.container-shadowBox-commitment-action {
		padding: 0 15px;
	}
	.container-diversity .flexBox::after {
		width: 120px;
		height: 300px;
		z-index: -10;
		bottom: -170px;
		right: -15px;
	}
	.container-diversity .container-shadowBox h4 {
		font-size: 2.2rem;
		border-bottom: 2px solid #dcdcdc;
	}
	.container-diversity .container-shadowBox h5 {
		font-size: 1.8rem;
	}

	.container-stories {
		padding-top: 60px;
		margin-left: -15px;
		margin-right: -15px;
		padding: 30px 15px 0;
		background-size: 100% 250px;
	}
	.container-stories .row {
		margin-left: 0;
		margin-right: 0;
	}
	.container-stories .button-readmore a {
		font-size: 1.8rem;
	}
	.container-certifications-initiatives .flexBox {
		display: flex;
		justify-content: space-between;
	}
	.container-certifications-initiatives .col-sm-3 {
		width: 49%;
		margin-bottom: 20px;
	}
	.container-besideBox,
	.container-verticalBox {
		margin: 15px;
		display: block;
		width: auto;
	}
	.container-besideBox .textBox,
	.container-verticalBox .textBox {
		padding: 20px;
	}
	.container-verticalBox .textBox .date {
		font-size: 1.5rem;
	}
	.container-verticalBox .textBox .tag {
		font-size: 1.1rem;
		padding: 4px 15px;
		margin-left: 15px;
	}
	.container-besideBox .textBox .date {
		font-size: 1.8rem;
	}
	.container-besideBox .textBox .tag {
		margin-left: 15px;
	}
	.brandstory .container-besideBox img {
		width: 100%;
	}
	.brandstory .container-besideBox .textBox h3 {
		margin-bottom: 20px;
	}
	.header-tabs {
		display: none;
	}
}
/*------------------------------------------
 stories index
--------------------------------------------*/
.swiperBlock {
	position: relative;
}
.swiper-slide {
	height: auto !important;
}

.swiper-container-horizontal > .swiper-scrollbar {
	height: 6px !important;
	background: none !important;
	cursor: pointer;
}
.swiper-scrollbar-drag {
	background: #8c8c8c !important;
}
.swiper-button-next, .swiper-button-prev {
	color: #fff !important;
	background: #8c8c8c;
	height: 45px !important;
	width: 45px !important;
}
.swiper-button-prev {
	left: auto !important;
	right: 47px !important;
	top: 40px !important;
}
.swiper-button-next {
	right: 0 !important;
	top: 40px !important;
}
.swiper-button-prev::after,
.swiper-container-rtl .swiper-button-next::after {
	font-size: 2rem !important;
	font-weight: bold !important;
}
.swiper-button-next::after,
.swiper-container-rtl .swiper-button-prev::after {
	font-size: 2rem !important;
	font-weight: bold !important;
}
.swiper-container-horizontal > .swiper-scrollbar {
	bottom: 0 !important;
}
/* <> display:none */
.swiper-button-next, .swiper-button-prev {
	display: none !important;
}
@media (min-width: 768px) {
	.swiper-container {
		margin-left: -15px !important;
		padding: 15px 15px 40px 15px !important;
	}
	.swiper-container {
		width: 1170px !important;
	}
}
@media (max-width: 767px) {
	.swiper-slide {
		margin: 0 auto;
	}
	.swiperBlock h3.page-title {
		margin: 0 15px 15px;
	}
	.swiper-container {
		padding: 0 15px 25px 15px !important;
	}
	.swiper-button-next, .swiper-button-prev {
		display: none !important;
	}
	.swiper-container-horizontal > .swiper-scrollbar {
		margin: auto;
	}
}
/*------------------------------------------
 stories 下層
--------------------------------------------*/
.custom-main-visual .mainimage p {
	text-align: right;
	margin: 5px 15px 0 ;
}
.custom-main-visual-outer + .row {
	margin-top: 60px;
}
.custom-main-visual-img.title-bg {
	background-image: url(../images/title_bg.jpg);
    height: 180px;
	background-size: cover;
	color: #fff;
	font-size: 3.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 10px;
	margin-top: 0;
}
.tagBox {
	justify-content:center;
	display: flex;
}
.tagBox .date {
	color: #858585;
	font-size: 1.8rem;
}
.tagBox .tag {
	color: #5c5c5c;
	font-size: 1.2rem;
	padding: 4px 20px;
	border: 1px solid #5c5c5c;
	border-radius: 14px;
	margin-left: 20px;
}
.textBlock {
	margin: auto;
}
.textBlock .italic {
	font-style: italic;
}
.textBlock a {
	text-decoration: underline;
	color: #7b47d2
}
.imagesBlock {
	position: relative;
}
.imagesBlock .imagesBox p {
	font-size: 1.6rem;
}
.imagesBlock .textBox {
	background-color: #4b1e78;
	padding: 20px;
	color: #fff;
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	font-size: 2rem;
}
.border-bottom {
	border-bottom: 1px solid #adadad;
	padding-bottom: 60px;
}
@media (min-width: 768px) {
	.custom-main-visual .mainimage {
		margin-top: -120px;
	}
	.custom-main-visual .mainimage p {
		max-width: 1140px;
	}
	.imagesBlock .imagesBox {
		width: 85%;
	}
	.imagesBlock .textBox {
		position: absolute;
		width: 360px;
		padding: 35px;
		right: 0;
		top: 0;
		font-size: 2.2rem;
		bottom: 0;
		height: fit-content;
		margin: auto;
	}
	.imagesBox.right {
		margin-left: auto;
	}
	.imagesBlock .textBox.left {
		right: auto;
		left: 0;
	}
}
@media (min-width: 1140px) {
	.custom-main-visual .mainimage p {
		margin: 5px auto 0 ;
	}
	.textBlock {
		width: 830px;
	}
	.imagesBlock .imagesBox {
		width: 870px;
	}
}
@media (max-width: 767px) {
	.custom-main-visual-outer + .row {
		margin-top: 30px;
	}
	.custom-main-visual-img.title-bg {
		height: 80px;
		font-size: 2.4rem;
		padding-bottom: 5px;
	}
	.custom-main-visual .mainimage {
		margin-top: -50px;
	}
	.tagBox p {
		margin-bottom: 0;
	}
	.textBlock {
		padding-left: 15px;
		padding-right: 15px;
	}
	.imagesBlock .imagesBox p {
		padding: 0 15px;
	}
	.imagesBlock .textBox {
		margin-bottom: -15px;
		z-index: 2;
		position: inherit;
		padding: 20px 30px;
		margin-left: 15px;
	}
	.imagesBlock .textBox.left {
		margin-left: 0;
		margin-right: 30px;
	}
	.imagesBlock .textBox.right {
		margin-right: 0;
		margin-left: 15px;
	}
	.caption {
		margin: 0;
	}
}
/*------------------------------------------
 tab切り替え
--------------------------------------------*/
.tab{
	margin: 0 auto;
}
.tab-list{
	display: flex;
	justify-content: center;
}
.tab-list-item{
	padding: 10px 5px;
	color: #7b47d2;
	text-align: center;
	display: inline-block;
	text-align: center;
	transition: all 0.2s ease;
	cursor: pointer;
	border-bottom: 2px solid #fff;
	border-top: none;
	border-left: none;
	border-right: none;
	margin: 0 8px;
	font-weight: normal;
	background: #fff;
}
.tab-list-item:hover {
	border-bottom: 2px solid #7b47d2;
}
.is-btn-active{
	border-bottom: 2px solid #7b47d2;
}
.tab-contents{
	display: none;
	margin: auto;
	padding: 30px 0 20px;
}
.is-contents-active{
	display: block;
	animation: appear 1.8s ease;
}
@keyframes appear {
    0%{
      opacity: 0;
    }
    100%{
      opacity: 1;
    }
}
/*------------------------------------------
 WOMEN WHO MAKE WAVES
--------------------------------------------*/
.worldMap {
	background: url(../images/iwd2023_worldmap.jpg) no-repeat center bottom;
	background-size:100%;
}
.worldMap h3.page-title {
	color: #7B47D2;
	position: relative;
	margin: auto;
	width: fit-content;
}
.worldMap h3.page-title:before {
    position: absolute;
    left: -45px;
    bottom: -5px;
    content: "";
    width: 2px;
    height: 100%;
    background: #7B47D2;
    border-radius: 3px;
    transform: rotate(-30deg);
}
.worldMap h3.page-title:after {
    position: absolute;
    content: "";
    right: -45px;
    bottom: -5px;
    width: 2px;
    height: 100%;
    background: #7B47D2;
    border-radius: 3px;
    transform: rotate(30deg);
}
.worldMap a {
	border-radius: 38px;
	background-color: #7b47d2;
	border: 1px solid #7b47d2;
	padding: 12px 60px;
	font-size: 2rem;
	color: #fff;
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	margin: 0 3px;
	display: block;
	text-align: center;
}
.worldMap a:hover {
	background-color: #fff;
	color: #7b47d2;
}
.worldMap a::after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	margin-left: 10px;
	font-size: 2rem;
	font-weight: bold;
	position: absolute;
	right: 25px;
	margin: auto;
}
.movieBlock {
	position: relative;
}
.movieBlock::before {
	content: "";
	position: absolute;
	width: 460px;
	height: 438px;
	background-image: url(../images/iwd2023_image_bg.jpg);
	background-size: cover;
	z-index: -10;
	top: 0;
	left: 0;
}
.pride .movieBlock::before {
	content: none;
}
.movieBlock .movie {
	position: relative;
	width: 100%;
	padding: 0;
}
.movieBlock .movie:before {
	content:"";
	display: block;
	padding-top: 56.25%;
}
.movieBlock .movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.movieBlock h2 {
	font-size: 3.2rem;
	margin-top: 50px;
}
.movieBlock a {
	border-radius: 38px;
	background-color: #7b47d2;
	border: 1px solid #7b47d2;
	padding: 12px 60px;
	font-size: 2rem;
	color: #fff;
	font-family: Oswald,'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
	margin: 0 3px;
	display: block;
	text-align: center;
	transition: all 0.2s ease;
	text-decoration: none;
	margin: auto;
	position: relative;
	width: fit-content;
}
.movieBlock a:hover {
	background-color: #fff;
	color: #7b47d2;
}
.movieBlock a::after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	margin-left: 10px;
	font-size: 2rem;
	font-weight: bold;
	position: absolute;
	right: 25px;
	margin: auto;
}
@media (min-width: 768px) {
	.worldMap {
		height: 450px;
	}
	.worldMap .flexBox {
		margin: 130px auto 0;
	}
	.worldMap h3.page-title {
		font-size: 2.8rem;
	}
	.worldMap a {
		width: fit-content !important;
		padding: 12px 45px 12px 30px;
	}
	.movieBlock {
		padding-top: 60px;
	}
	.movieBlock .movie {
		width: 100%;
		margin: auto;
		float: none;
	}
	.movieBlock::before {
		left: -60px;
	}
}
@media (min-width: 1140px) {
	.worldMap {
		background: url(../images/iwd2023_worldmap.jpg) no-repeat center bottom;
		height: 610px;
	}
	.worldMap .flexBox {
		margin: 210px auto 0;
		width: 980px;
	}
	.worldMap a {
		padding: 12px 60px;
	}
	.movieBlock {
		padding-top: 120px;
	}
	.pride .movieBlock {
		padding-top: 20px;
	}
	.movieBlock .movie {
		width: 828px;
	}
	.movieBlock::before {
		left: 0;
	}
}
@media (max-width: 767px) {
	.worldMap {
		margin: 0;
		background-size: 100% !important;
		background: url(../images/iwd2023_worldmap.jpg) no-repeat center 35px;
	}
	.flexBox.flex-btw {
		margin-top: 165px;
	}
	.worldMap h3.page-title {
		font-size: 2rem;
	}
	.worldMap h3.page-title:before {
		left: -30px;
		bottom: -3px;
	}
	.worldMap h3.page-title:after {
		right: -30px;
		bottom: -3px;
	}
	.worldMap a {
		margin-bottom: 12px;
		text-align: left;
		padding: 12px 30px;
		font-size: 1.8rem;
	}
	.movieBlock {
		margin: 0;
	}
	.movieBlock a {
		font-size: 1.8rem;
	}
	.movieBlock::before {
		width: 60%;
		height: 210px;
		top: -15px;
		left: -15px;
	}
	.movieBlock h2 {
		margin-top: 30px;
		font-size: 2.6rem;
	}
	.movieBlock p br {
		display: none;
	}
}
/*------------------------------------------
 Italic
--------------------------------------------*/
.italic {
	font-style: italic;
}