@charset "utf-8";

/* common */

:root {
	--white: rgba(255,255,255,1);
	--lightgray: rgba(244,244,244,1);
	--gray: rgba(87,87,87,1);
	--darkgray: rgba(22,22,22,1);
	--black: rgba(0,0,0,1);
	--navy: rgba(14,26,48,1);
	--blue: rgba(32,141,184,1);
	--red: rgba(171,40,35,1);
	--fontsize_ss: 0.666em;
	--fontsize_s: 0.875em;
	--fontsize_l: 1.25em;
	--fontsize_ll: 1.5em;
	--lineheight_1: 1;
	--lineheight_ss: 1.3;
	--lineheight_s: 1.6;
	--lineheight_normal: 2;
	--fontweight_light: 200;
	--fontweight_regular: 400;
	--fontweight_bold: 700;
	--notesans: 'Noto Sans JP', sans-serif;
	--oswald: 'Oswald', sans-serif;
	--m10: 10px;
	--m20: 20px;
	--m-20: -20px;
	--m30: 30px;
	--m40: 40px;
	--m-40: -40px;
	--m50: 50px;
	--m60: 60px;
	--m-60: -60px;
	--m70: 70px;
	--m80: 80px;
	--m-80: -80px;
	--m100: 100px;
	--m120: 120px;
	--m140: 140px;
	--m160: 160px;
	--m-160: -160px;
}

html {
	font-size: 16px;
	line-height: var(--lineheight_normal);
	color: var(--darkgray);
	background: var(--white) 
	background-size: 100% auto;
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt";
}
body {
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: subpixel-antialiased;
	overflow: hidden;
}
::-moz-selection {
	color: #ffffff;
	background-color: rgba(32,141,184,0.8);
}
::selection {
	color: #ffffff;
	background-color: rgba(32,141,184,0.8);
}
img {
	width: 100%;
	height: auto;
}

.pc {
	display: block !important;
}
.tb {
	display: none !important;
}
.sp {
	display: none !important;
}
.pc.tb {
	display: block !important;
}
.pc.sp {
	display: block !important;
}
.tb.sp {
	display: none !important;
}

ll,
.fontsize_ll {
	font-size: var(--fontsize_ll);
}
.l,
.fontsize_l {
	font-size: var(--fontsize_l);
}
.s,
.fontsize_s {
	font-size: var(--fontsize_s);
}
.ss,
.fontsize_ss {
	font-size: var(--fontsize_ss);
}
.lineheight_1 {
	line-height: var(--lineheight_1);
}
.lineheight_ss {
	line-height: var(--lineheight_ss);
}
.lineheight_s {
	line-height: var(--lineheight_s);
}
.lineheight_2 {
	line-height: var(--lineheight_normal);
}
.notosans {
	font-family: var(--notesans);
}
.oswald {
	font-family: var(--oswald);
}
.fontweight_bold {
	font-weight: var(--fontweight_bold);
}
.fontweight_regular {
	font-weight: var(--fontweight_regular);
}
.fontweight_light {
	font-weight: var(--fontweight_light);
}
.red {
	color: var(--red);
}
.blue {
	color: var(--blue);
}
.mb10 {
	margin-bottom: var(--m10);
}
.mb20 {
	margin-bottom: var(--m20);
}
.mb20 {
	margin-bottom: var(--m30);
}
.mb30 {
	margin-bottom: var(--m40);
}

.i_arrow {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2028.346%2052.414%22%20style%3D%22enable-background%3Anew%200%200%2028.3465%2052.4144%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23878787%22%20d%3D%22M0%202.139%202.139%200l26.208%2026.207L2.139%2052.414%200%2050.275l24.068-24.068z%22%2F%3E%3C%2Fsvg%3E');
}
.i_close {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2028.346%2028.346%22%20style%3D%22enable-background%3Anew%200%200%2028.3465%2028.3465%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23878787%22%20d%3D%22M28.346%201.002%2027.344%200%2014.173%2013.171%201.002%200%200%201.002l13.171%2013.171L0%2027.344l1.002%201.002%2013.171-13.171%2013.171%2013.171%201.002-1.002-13.171-13.171z%22%2F%3E%3C%2Fsvg%3E');
}

.wrap {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding-top: var(--m80);
	padding-bottom: var(--m80);
}
.line_white {
	background: url(./img/bg_line_white.png) repeat-y 0 0;
	background-size: 100% auto;
}
.line_gray {
	background: url(../../image/lp/ji2022/bg_line_black.png) repeat-y 0 0;
	background-size: 100% auto;
}
.bg_dark {
	color: var(--white);
}
.sectionTitle {
	margin-bottom: var(--m40);
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_ss);
}
.sectionTitle .sectionTitleIndex {
	position: relative;
	margin-bottom: 0.3em;
	padding-bottom: 0.5em;
	font-family: var(--oswald);
	font-weight: var(--fontweight_bold);
}
.sectionTitle .sectionTitleIndex:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 2em;
    border-bottom: 2px solid #ff9900;
}

.sectionTitle .sectionTitleIndex:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	border-bottom: 2px solid #666666;
}


.bg_dark .sectionTitle .sectionTitleIndex:before {
	border-bottom: 2px solid #ffffff;
}
.sectionTitle h2 {
	font-weight: var(--fontweight_bold);
}

/* header */

header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	width: 100%;
	padding: 15px 20px;
	transition: background 0.5s;
	z-index: 9999;
}
header.scroll {
	background: rgba(255,255,255,0.8);
}
header.anystyletokyo-thanks {
	justify-content: center;
	background: rgba(255,255,255,0.8);
}
header h1 {
	position: relative;
	z-index: 101;
}
header h1 img {
	width: auto;
	height: 50px;
}
header nav {
	display: flex;
	align-items: center;
}
header nav .navMenu {
	display: flex;
	align-items: center;
	font-size: 0.85em;
	line-height: var(--lineheight_ss);
	color: var(--navy);
	font-weight: var(--fontweight_bold);
}
header nav ul {
	display: flex;
	align-items: center;
}
header nav ul {
	display: flex;
	align-items: center;
}
header nav ul.lang {
	margin-left: 40px;
}
header nav .navMenu li + li:before {
	content: "｜";
	padding: 0 0.25em;
}
header nav .navMenu a {
	position: relative;
	color: var(--navy);
	text-decoration: none;
}
header nav .navMenu a:after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #208db8;
	transform: scale(0);
}
header nav .navButton {
	margin-left: 40px;
	font-size: var(--fontsize_s);
	line-height: var(--lineheight_ss);
}
header nav .navButton li + li {
	margin-left: 10px;
}
header nav .navButton a {
	display: block;
	width: 180px;
	line-height: 46px;
	color: var(--white);
	text-align: center;
	text-decoration: none;
	border-radius: 50px;
}
header nav .navButton .navButtonContact a {
	background: #06c755;
}


header .navOpen {
	display: none;
	position: relative;
	height: 40px;
	width: 80px;
	z-index: 101;
}

/* footer */

footer {
	padding: var(--m40) 0;
	text-align: center;
	font-size: var(--fontsize_ss);
}
footer ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
footer li + li {
	margin-left: 60px;
}
footer li img {
	width: auto;
	height: 40px;
}

/* top */

#top {
	color: var(--navy);
}
#top .wrap {
	padding-top: 0;
	padding-bottom: 0;
}
#top h2 {
	display: block;
	position: relative;
	height: 200px;
}
#top h2 img {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
    margin-bottom: 20px;
}
#top .topContent {
	position: relative;
	height: 350px;
	padding-top: 60px;
	padding-left: 50%;
}
#top .topContent:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 102vw;
	height: 350px;
	margin-left: -52vw;
/*	background: url("../img/mv.jpg") no-repeat center center;*/
	background-size: cover;
	z-index: -1;
}


.wrap_p {margin: 40px auto; max-width: 1000px; padding: 0 10px;}
.point_txt{text-align: center; font-weight: bold; font-size:32px; line-height: 1.5; font-family: 'Kiwi Maru', serif;}

/* etc */


.marker_pink{ 
    background:linear-gradient(transparent 60%, #f6c 55%);
}

.marker_green{ 
    background:linear-gradient(transparent 60%, #aaee77 60%); 
}

.marker_blue{ 
    background:linear-gradient(transparent 60%, #91d6ff 60%); 
}

.marker_yellow{ 
    background:linear-gradient(transparent 60%, #fbd169 60%); 
}


.marker_pink,.marker_green,.marker_blue,.marker_yellow{
/* 背景の繰り返しを停止 */
  background-repeat: no-repeat;
/* マーカーの横方向を0にして縮める */
  background-size: 0% 100%;
/* マーカーが引かれる速度を指定 */
  transition:background-size 1.5s;}
  
  
  /* マーカーが引かれる際に付与するクラス */
.marker_pink.on,.marker_green.on,.marker_blue.on,.marker_yellow.on {
  /* 横方向を100%にして、マーカーを引く */
  background-size: 100% 100%;
}
  
  
  
/* about */

#about {
	background: var(--lightgray);
}

#about .aboutContent p{font-size:120%;}


#about .aboutContent h3 {
	margin-bottom: var(--m20);
	font-size: 3.5em;
	line-height: var(--lineheight_ss);
	font-weight: var(--fontweight_bold);
}
#about .aboutContent .aboutContentAnytag {
	display: flex;
	align-items: center;
	margin-top: var(--m40);
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagLogo {
	width: 33.4%;
	padding-right: var(--m30);
	text-align: center;
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagLogo p {
	margin-bottom: var(--m10);
	padding: 0.5em;
	line-height: var(--lineheight_ss);
	text-align: center;
	border: 1px solid var(--white);
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagLogoImage img {
	width: auto;
	height: 40px;
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagText {
	width: 66.6%;
}
#about .aboutContent .aboutContentfeture {
	margin-top: var(--m80);
	color: var(--darkgray);
}
#about .aboutContent .aboutContentfeture ul {
	display: flex;
	justify-content: space-around;
}
#about .aboutContent .aboutContentfeture li {
	width: 30%;
	background: var(--white);
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 0 30px rgba(0,0,0,0.2);
	opacity: 0;
	transform: translateY(var(--m20));
	transition: opacity 1s, transform 1s;
}
#about .aboutContent .aboutContentfeture.is-inview li {
	opacity: 1;
	transform: translateY(0);
}
#about .aboutContent .aboutContentfeture.is-inview li:nth-child(2) {
	transition-delay: 0.2s;
}
#about .aboutContent .aboutContentfeture.is-inview li:nth-child(3) {
	transition-delay: 0.4s;
}
#about .aboutContent .aboutContentfeture li p {
	padding: var(--m20);
	padding-bottom: var(--m60);
}

/* influencer */

#influencer {
	background: var(--white);
}
#influencer .wrap {

	padding-bottom: 0;
}
#influencer .influencerList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: var(--m40) 0;
}
#influencer .influencerListItem {
	width: 23.5%;
	margin: 0 0.5%;
}
#influencer .influencerSliderThumb {
	position: relative;
	width: 100%;
	margin-bottom: var(--m10);
	overflow: hidden;
    text-align: center;
}
#influencer .influencerSliderThumb img {
	max-width: 200px; width: 100%; 
}
#influencer .influencerSliderFollower {
	display: flex;
	align-items: center;
	position: absolute;
	bottom: 0;
	margin-top: -1em;
	padding:  0.4em 0.4em;
	font-size: var(--fontsize_l);
	line-height: var(--lineheight_1);
	color: var(--white);
	font-family: var(--oswald);
	font-weight: var(--fontweight_light);
	background: rgba(100,166,38,0.8);
}
#influencer .influencerSliderFollower span {
	display: inline-block;
	margin-right: 0.5em;
	padding:  0.25em 0.25em;
	font-size: var(--fontsize_ss);

}
#influencer .influencerSliderFollower strong {
	font-size: 1.1em;
	font-weight: var(--fontweight_regular);
}
#influencer .influencerSliderHeader {
	width: 100%;
}

#influencer .influencerSliderHeader .influencerSliderHeaderText {
	width: 100%;
}
#influencer .influencerSliderHeader .influencerSliderHeaderText h3 {
	font-size: var(--fontsize_l);
	line-height: var(--lineheight_ss);
}
#influencer .influencerSliderHeader .influencerSliderHeaderText p {
}
#influencer .influencerSliderHeader .influencerSliderSns {
	margin-top: var(--m10);
	line-height: var(--lineheight_s);
}
#influencer .influencerSliderHeader .influencerSliderSns ul {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	justify-content: flex-end;
}
#influencer .influencerSliderHeader .influencerSliderSns ul li {
	width: 30px;
	margin-right: 5px;
}
#influencer .influencerSliderTag {
	display: flex;
	flex-wrap: wrap;
	margin-top: var(--m10);
	font-size: var(--fontsize_s);
	line-height: var(--lineheight_1);
	color: var(--gray);
}
#influencer .influencerSliderTag li {
	margin-top: 0.5em;
	margin-right: 0.5em;
	padding: 0.5em 0.5em;
	background: var(--lightgray);
	border-radius: 100px;
}
#influencer .influencerSliderTag li:last-child {
	margin-right: 0;
}

/* case */

.casetitle{ text-align: center; color: #FFFFFF; font-size: 24px; font-weight: bold; margin-bottom: 20px;}

#case ul li {width: 25%; height: 120px; float: left; text-align: center; margin: auto; vertical-align:middle;}

#case ul li img {max-height: 110px; width: auto; max-width: 80%;}

/* modal */

.remodal-is-locked #japaninsiders > header,
.remodal-is-locked #japaninsiders > section,
.remodal-is-locked #japaninsiders > footer {
	filter: blur(5px);
}
#japaninsiders .remodal-overlay {
	background: rgba(255,255,255,0.85);
}
#japaninsiders .remodal-wrapper {
	padding: var(--m40);
}
#japaninsiders .remodal {
	position: static;
	max-width: 1000px;
	width: 100%;
	margin-bottom: 0;
	padding: 0;
	color: var(--darkgray);
	background: transparent;
}
#japaninsiders .remodal-close {
	display: block;
	position: absolute;
	top: auto;
	bottom: 100%;
	right: auto;
	left: 100%;
	width: 4em;
	height: 4em;
	margin-bottom: var(--m40);
	margin-left: var(--m40);
	text-decoration: none;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2028.346%2028.346%22%20style%3D%22enable-background%3Anew%200%200%2028.3465%2028.3465%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23878787%22%20d%3D%22M28.346%201.002%2027.344%200%2014.173%2013.171%201.002%200%200%201.002l13.171%2013.171L0%2027.344l1.002%201.002%2013.171-13.171%2013.171%2013.171%201.002-1.002-13.171-13.171z%22%2F%3E%3C%2Fsvg%3E');
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 0 0;
}
#japaninsiders .remodal-close:before {
	display: none;
}

.caseModalContent {
	display: flex;
	justify-content: space-between;
}
.caseModalContent .caseModalImage {
	width: 48%;
}
.caseModalContent .caseModalInfo {
	width: 48%;
	text-align: left;
}
.caseModalContent .caseModalHeader {
	display: flex;
	width: 100%;
	margin-bottom: var(--m20);
}
.caseModalContent .caseModalHeader h3 {
	width: 100%;
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_ss);
}
.caseModalContent .caseModalHeader .caseModalSns {
	flex-shrink: 0;
	width: 30px;
	margin-left: var(--m20);
}
.caseModalContent .caseModalTag {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: var(--m40);
	font-size: var(--fontsize_s);
	line-height: var(--lineheight_1);
	color: var(--gray);
}
.caseModalContent .caseModalTag li {
	margin-top: 0.5em;
	margin-right: 0.5em;
	padding: 0.5em 1em;
	background: var(--lightgray);
	border-radius: 100px;
}
.caseModalContent .caseModalTag li:last-child {
	margin-right: 0;
}
.caseModalContent h4 {
	margin-bottom: var(--m10);
	font-size: var(--fontsize_l);
	line-height: var(--lineheight_s);
}





/* flow */

#flow {
	background: var(--lightgray);
}

#flow .box {width: 22%; margin-right: 1px; float: left; padding: 10px; min-height: 270px; color: #fff;}

#flow h3{font-size:120%; font-weight: bold; margin-bottom: 10px; line-height: 1.5;}

#flow .arrow{ float: left; padding: 10px; min-height: 270px; line-height:270px;}

#flow  .flowHeader {
	display: flex;
	align-items: flex-start;

}

#flow  .flowHeaderIndex {
	flex-shrink: 0;

	margin-left: var(--m-20);
	padding-left: var(--m20);
	padding-right: var(--m20);
}

#flow .flowstep {background: #fbfff1; border: dotted 2px #0d9fff; padding: 10px; color: #0d9fff; font-size:120%; font-weight: bold; border-radius: 40px; line-height: 1.5;     align-items: center; min-height: 80px; vertical-align: middle;  display: flex;}


#flow .flowtext{
    display: flex;
    align-items: center;
    min-height: 80px;
    vertical-align: middle;
    padding-left: 20px;
    font-size:110%;
}

#flow .arrow2{text-align: center; font-size:150%;}



/* company */

#company {
	background: var(--lightgray);
}

#company .grid {line-height: 1.5;}

#company .text1{font-weight: bold; }

#issue .clearboth {border-top:1px dotted #333;}


/* client */

#client ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#client li {
	width: 14.666%;
	margin: 0 1%;
}
#client li:nth-child(n+7) {
	margin-top: 2%;
}



/* contact */

#contact {
	background: var(--white);
    color: #000;
}

#contact.anystyletokyo-thanks .wrap {
	padding-top: var(--m140);
}



.btn-primary {
    color: #fff;
    border: 2px solid #c2ad5d;
    background-color: #c2ad5d;
    transition: 0.4s;
}
.btn-primary:hover {
    color: #c2ad5d;
    border: 2px solid #c2ad5d;
    background-color: #fff;
}



.btn-lg {
    border-radius: 40px;padding:12px 55px; }





/* swiper */

#japaninsiders .swiper {
	overflow: visible;
}
#japaninsiders .swiper-wrapper {
	padding-bottom: var(--m40);
}
#japaninsiders .swiper-button-prev,
#japaninsiders .swiper-button-next {
	position: absolute;
	top: 50%;
	width: 2.16em;
	height: 4em;
	margin-top: -2em;
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center center;
}
#japaninsiders .swiper-button-prev {
	left: auto;
	right: 100%;
	margin-right: var(--m20);
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2028.346%2052.414%22%20style%3D%22enable-background%3Anew%200%200%2028.3465%2052.4144%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23878787%22%20d%3D%22M28.347%202.139%2026.207%200%200%2026.207l26.207%2026.207%202.14-2.139L4.279%2026.207z%22%2F%3E%3C%2Fsvg%3E');
}
#japaninsiders .swiper-button-next {
	left: 100%;
	right: auto;
	margin-left: var(--m20);
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2028.346%2052.414%22%20style%3D%22enable-background%3Anew%200%200%2028.3465%2052.4144%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23878787%22%20d%3D%22M0%202.139%202.139%200l26.208%2026.207L2.139%2052.414%200%2050.275l24.068-24.068z%22%2F%3E%3C%2Fsvg%3E');
}
#japaninsiders .swiper-button-prev:after,
#japaninsiders .swiper-button-next:after {
	display: none;
}
#japaninsiders .swiper-button-prev.swiper-button-disabled,
#japaninsiders .swiper-button-next.swiper-button-disabled {
	opacity: 0.1;
}
#japaninsiders .swiper-horizontal > .swiper-scrollbar {
	position: absolute;
	left: 0;
	bottom: 0px;
	z-index: 50;
	height: 2px;
	width: 100%;
}
#japaninsiders .swiper-scrollbar-drag {
	background: var(--gray);
	border-radius: 0;
}

/* hover */

a img,
a img {
	transition: opacity 0.5s;
}
a:hover img,
a:hover img {
	opacity: 0.6;
}
header nav .navMenu a {
	transition: color 0.5s;
}
header nav .navMenu a:hover {
	color: #208db8;
}
header nav .navMenu a:after {
	transition: transform 0.5s;
}
header nav .navMenu a:hover:after {
	transform: scale(1);
}
header .navButtonContact a {
	position: relative;
	z-index: 1;
	transition: color 0.4s;
	overflow: hidden;
	border: 2px solid #06c755;
	font-size: 1.2rem;
    font-weight: 600;	
}
header .navButtonContact a:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background: var(--white);
	transform-origin: 100% 50%;
	transform: scaleX(0);
	transition: transform ease 0.4s;
}
header .navButtonContact a:hover {
	color: #06c755;
}
header .navButtonContact a:hover:before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}
header .navButtonDownload a {
	position: relative;
	z-index: 1;
	transition: color 0.4s;
	overflow: hidden;
	border: 2px solid #013f58;
}
header .navButtonDownload a:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background: var(--white);
	transform-origin: 100% 50%;
	transform: scaleX(0);
	transition: transform ease 0.4s;
}
header .navButtonDownload a:hover {
	color: #013f58;
}
header .navButtonDownload a:hover:before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}
#japaninsiders .swiper-button-prev,
#japaninsiders .swiper-button-next {
	transition: opacity 0.5s;
}
#japaninsiders .swiper-button-prev:hover,
#japaninsiders .swiper-button-next:hover {
	opacity: 0.6;
}
#japaninsiders .swiper-button-prev.swiper-button-disabled,
#japaninsiders .swiper-button-next.swiper-button-disabled {
	transition: opacity 0;
}
#japaninsiders .swiper-button-prev.swiper-button-disabled:hover,
#japaninsiders .swiper-button-next.swiper-button-disabled:hover {
	opacity: 0.1;
}
.caseSlider a .caseSliderThumb img {
	transition: transform 0.5s;
}
.caseSlider a:hover .caseSliderThumb img {
	transform: scale(1.1);
	opacity: 1;
}
.caseSlider a h3 {
	transition: color 0.5s;
}
.caseSlider a:hover h3 {
	color: var(--red);
}
.caseSlider a:hover .caseSliderSns img {
	opacity: 1;
}
#japaninsiders .remodal-close {
	transition: opacity 0.5s;
}
#japaninsiders .remodal-close:hover {
	opacity: 0.6;
}


#bottom-foot { 
  left:0;
  background-color: rgba( 128, 128, 128, 0.55 );
  line-height:1;
  position:fixed;
  bottom:0;
  width:100%;
  z-index:24;
  text-align:center;
  padding:10px 5px;
  }
  
  
#bottom-foot .navButton {
	width: 50%;
	line-height: 46px;
	text-align: center;
	border-radius: 50px;
	background: #06c755;
    margin: auto;
}

#bottom-foot .navButton a {
	color: var(--white);
    text-decoration: none;
}
  


/* responsive */



/* -- pc */

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

/* ---- header */

header nav .navMenu li + li:before {
	padding: 0;
}
header nav .navButton {
	margin-left: 20px;
	font-size: var(--fontsize_ss);
}
header nav .navButton li + li {
	margin-left: 5px;
}
header nav .navButton a {
	display: inline-block;
	width: auto;
	padding: 0 2em;
	line-height: 36px;
	color: var(--white);
	text-align: center;
	text-decoration: none;
	border-radius: 100px;
}

/* ---- modal */

#japaninsiders .remodal-close {
	top: auto;
	bottom: 100%;
	right: 0;
	left: auto;
	width: 4em;
	height: 4em;
	margin-bottom: var(--m40);
	margin-left: 0;
}

}



/* -- tb */

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

/* ---- hover */

a img {
	transition: opacity 0;
}
a:hover img {
	opacity: 1;
}
header nav .navMenu a {
	transition: color 0;
}
header nav .navMenu a:hover {
	color: var(--navy);
}
header nav .navMenu a:after {
	transition: transform 0;
}
header nav .navMenu a:hover:after {
	transform: scale(0);
}
#japaninsiders .swiper-button-prev,
#japaninsiders .swiper-button-next {
	transition: opacity 0;
}
#japaninsiders .swiper-button-prev:hover,
#japaninsiders .swiper-button-next:hover {
	opacity: 1;
}
#japaninsiders .swiper-button-prev.swiper-button-disabled,
#japaninsiders .swiper-button-next.swiper-button-disabled {
	transition: opacity 0;
}
#japaninsiders .swiper-button-prev.swiper-button-disabled:hover,
#japaninsiders .swiper-button-next.swiper-button-disabled:hover {
	opacity: 0.1;
}
.caseSlider a .caseSliderThumb img {
	transition: transform 0;
}
.caseSlider a:hover .caseSliderThumb img {
	transform: scale(1);
	opacity: 1;
}
.caseSlider a h3 {
	transition: color 0;
}
.caseSlider a:hover h3 {
	color: var(--darkgray);
}
.caseSlider a:hover .caseSliderSns img {
	opacity: 1;
}
#japaninsiders .remodal-close {
	transition: opacity 0;
}
#japaninsiders .remodal-close:hover {
	opacity: 1;
}
	
header .navButtonContact a {
	transition: color 0;
}
header .navButtonContact a:before {
	display: none;
}
header .navButtonContact a:hover {
	color: var(--white);
}
header .navButtonDownload a {
	transition: color 0;
}
header .navButtonDownload a:before {
	display: none;
}
header .navButtonDownload a:hover {
	color: var(--white);
}

/* ---- common */

html {
	font-size: 14px;
}

.pc {
	display: none !important;
}
.tb {
	display: block !important;
}
.sp {
	display: none !important;
}
.pc.tb {
	display: block !important;
}
.pc.sp {
	display: none !important;
}
.tb.sp {
	display: block !important;
}

section {
	padding-left: var(--m40);
	padding-right: var(--m40);
}

/* ---- header */

header nav {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--white);
	z-index: 100;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s, visibility 0.5s;
}
header nav.open {
	opacity: 1;
	visibility: visible;
}
header nav .navMenu {
	display: block;
	font-size: 2em;
	line-height: var(--lineheight_1);
}
header nav .navMenu ul {
	display: block;
}
header nav .navMenu ul.lang {
	margin-top: var(--m40);
	margin-left: 0;
}
header nav .navMenu li + li {
	margin-top: var(--m20);
}
header nav .navMenu li + li:before {
	display: none;
	padding: 0;
}
header nav .navButton {
	margin-top: var(--m60);
	margin-left: 0;
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_ss);
}
header nav .navButton ul {
	justify-content: center;
}
header nav .navButton li + li {
	margin-left: var(--m10);
}
header nav .navButton a {
	display: block;
	width: 240px;
	padding: 0;
	line-height: 60px;
}
header .navOpen {
	display: block;
	cursor: pointer;
}
header .navOpen a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
header .navOpen a:before,
header .navOpen a:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: var(--darkgray);
	transition: top 0.5s, bottom 0.5s, transform 0.5s;
}
header .navOpen a:before {
	top: 33.333%;
	margin-top: -1px;
}
header .navOpen a:after {
	bottom: 33.333%;
	margin-bottom: -1px;
}
header .navOpen.active a:before {
	top: 50%;
	transform: rotate(30deg);
}
header .navOpen.active a:after {
	bottom: 50%;
	transform: rotate(-30deg);
}

/* ---- top */

#top h2 {
	height: 200px;
}


/* ---- influencer */

#influencer .influencerListItem {
	width: 30%;
	margin: 0 1.666%;
}


#influencer .influencerSliderHeader .influencerSliderSns {
}
#influencer .influencerSliderHeader .influencerSliderSns ul li {
	width: 28px;
	margin-right: 4px;
}

/* ---- value */

#value .valueContent .valueContentExperience {
	padding-right: 50px;
	background-image: url(../../image/lp/ji2022/value_bgtext01.svg);
	background-repeat: no-repeat;
	background-position: top 10em right 5%;
	background-size: 14% auto;
}
#value .valueContent .valueContentPerson {
	padding-left: 50px;
	background-image: url(../../image/lp/ji2022/value_bgtext02.svg);
	background-repeat: no-repeat;
	background-position: top 10em left 5%;
	background-size: 14% auto;
}

/* ---- issue */

#issue .issueContent .issueContentItem {
	padding-right: var(--m20);
}
#issue .issueContent .issueContentItem .issueContentIndex {
	padding-left: var(--m10);
	padding-right: var(--m20);
}

/* ---- flow */

#flow .box {width: 21%; margin-right: 1px; float: left; padding: 10px; min-height: 300px; color: #fff;}




/* ---- swiper */

#japaninsiders .swiper-button-prev,
#japaninsiders .swiper-button-next {
	display: none;
}

}



/* -- sp */

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

/* ---- common */

:root {
	--fontsize_ss: 0.6em;
	--fontsize_s: 0.8em;
	--fontsize_l: 1.2em;
	--fontsize_ll: 1.4em;
	--m10: 2vw;
	--m20: 4vw;
	--m-20: -4vw;
	--m30: 6vw;
	--m40: 8vw;
	--m-40: -8vw;
	--m50: 10vw;
	--m60: 12vw;
	--m-60: -12vw;
	--m70: 14vw;
	--m80: 16vw;
	--m-80: -16vw;
	--m100: 20vw;
	--m120: 24vw;
	--m-120: -24vw;
	--m140: 28vw;
	--m160: 32vw;
	--m-160: -32vw;
}

html {
	background: var(--white) url(../img/bg_.webp) no-repeat 0 -5vw;
	background-size: 200% auto;
	font-size: 3.5vw;
}
.line_white {
	background: none;
}
.line_gray {
	background: none;
}
.pc {
	display: none !important;
}
.tb {
	display: none !important;
}
.sp {
	display: block !important;
}
.pc.tb {
	display: none !important;
}
.pc.sp {
	display: block !important;
}
.tb.sp {
	display: block !important;
}

/* ---- header */

header {
	padding: 2vw;
}
header h1 img {
	height: 8vw;
}
header nav .navMenu {
	font-size: 1.6em;
}
header nav .navButton {
	font-size: var(--fontsize_l);
}
header nav .navButton a {
	width: 42vw;
	line-height: 12vw;
}
header .navOpen {
	height: 8vw;
	width: 12vw;
}

/* ---- footer */

footer {
	padding: var(--m40) 0;
}
footer ul {
	margin-bottom: 6vw;
}
footer li:first-child {
	width: 100%;
	margin-bottom: 6vw;
}
footer li + li {
	margin-left: 0;
}
footer li:last-child {
	margin-left: 8vw;
}
footer li img {
	height: 6vw;
}
footer li:first-child img {
	height: 8vw;
}

/* ---- top */

section#top {
	padding: 0;
}
#top h2 {
	height: 36vw; margin: 0 20px;
}

#top h2 img {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
    margin-bottom: 20px;
}


#top .topContent {
	position: relative;
	height: 150px;
	padding-top: 8vw;
	padding-left: 55vw;
	padding-right: 5vw;
}
#top .topContent:before {
	height: 150px;
	background-size: auto 145%;
	background-position: 51% 55%;
}
#top .topContent h3 {
	font-size: 1.5em;
}


.wrap_p {margin: 30px auto; max-width: 1000px; padding: 0 10px;}
.point_txt{text-align: center; font-weight: bold; font-size:26px; line-height: 1.2;}

/* ---- about */

#about .aboutContent h3 {
	font-size: 2.6em;
}
#about .aboutContent .aboutContentAnytag {
	display: block;
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagLogo {
	width: 100%;
	padding-right: 0;
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagLogoImage img {
	width: 50%;
	height: auto;
}
#about .aboutContent .aboutContentAnytag .aboutContentAnytagText {
	width: 100%;
	margin-top: var(--m20);
}
#about .aboutContent .aboutContentfeture {
	margin-top: var(--m40);
}
#about .aboutContent .aboutContentfeture ul {
	display: block;
}
#about .aboutContent .aboutContentfeture li {
	display: flex;
	width: 100%;
}
#about .aboutContent .aboutContentfeture li + li {
	margin-top: var(--m10);
}
#about .aboutContent .aboutContentfeture li .aboutContentfetureImage {
	width: 33.333%;
}
#about .aboutContent .aboutContentfeture li p {
	display: flex;
	align-items: center;
	width: 66.666%;
	padding: 0 var(--m20);
	line-height: var(--lineheight_s);
}

/* ---- influencer */

#influencer .wrap {

}
#influencer .influencerList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;

}
#influencer .influencerListItem {
	width: 49%;
	margin: 0 0.5%;
}
#influencer .influencerSliderFollower {
	margin-top: -0.8em;
	font-size: 0.9em;
}


#influencer .influencerSliderThumb {

	width: 100%;
	margin-bottom: var(--m10);
	overflow: hidden;
}
#influencer .influencerSliderThumb img {
	width: 100%; max-width: 150px!important;
}


#influencer .influencerSliderHeader .influencerSliderSns {
	line-height: var(--lineheight_1);

}
#influencer .influencerSliderHeader .influencerSliderSns ul li {
	width: 5vw;
	margin-right: 1vw;
}

#influencer .influencerSliderTag li {
	margin-top: 0.25em;
	margin-right: 0.5em;
	padding: 0.5em 0.25em;
	background: var(--lightgray);
	border-radius: 100px;
}

/* ---- case */

#case .caseSliderHeader .caseSliderSns {
	width: 6vw;
}

#case ul li {width: 50%; height: 100px; float: left; text-align: center; margin: auto;}

/* ---- modal */

#japaninsiders .remodal-close {
	top: 0;
	bottom: auto;
	right: 0;
	left: auto;
	width: 4em;
	height: 4em;
	margin-top: -2em;
	margin-right: -2em;
}

.caseModalContent {
	display: block;
}
.caseModalContent .caseModalImage {
	width: 100%;
	margin-bottom: var(--m20);
}
.caseModalContent .caseModalInfo {
	width: 100%;
}
.caseModalContent .caseModalHeader {
	margin-bottom: var(--m10);
}
.caseModalContent .caseModalHeader .caseModalSns {
	width: 6vw;
	line-height: var(--lineheight_s);
}
.caseModalContent .caseModalTag {
	margin-bottom: var(--m20);
}

/* ---- value */

#value .valueContent {
	display: block;
}
#value .valueContent .circle1 {
	display: none;
	top: 2.5em;
	left: 0.1em;
	width: 4vw;
	height: 4vw;
	margin-top: -2vw;
}
#value .valueContent .circle2 {
	display: none;
	top: 50%;
	left: 0.1em;
	right: auto;
	width: 4vw;
	height: 4vw;
	margin-top: -2vw;
}
#value .valueContent .line {
	display: none;
	position: absolute;
	top: 2.5em;
	left: 2.2vw;
	width: 2px;
	height: 47%;
	margin-top: -1px;
	margin-left: 0;
	background: #dddddd;
}
#value .valueContent .circle1:after,
#value .valueContent .circle2:after {
	width: 2vw;
	height: 2vw;
	margin: 1vw;
}
#value .valueContent h3 {
	margin-bottom: 1em;
	font-size: var(--fontsize_ll);
}
#value .valueContent .valueContentPerson h3 {
	text-align: left;
}
#value .valueContent .valueContentExperience {
	width: 100%;
	padding-right: 0;
	background: none;
}
#value .valueContent .valueContentPerson {
	width: 100%;
	margin-top: var(--m40);
	padding-left: 0;
	background: none;
}
#value .valueContent .valueContentBox {
	width: 94%;
	height: auto !important;
	margin-left: 6%;
	padding: var(--m20);
}
#value .valueContent .valueContentBox + .valueContentBox {
	margin-top: var(--m20);
}
#value .valueContent .valueContentBox h4 {
	font-size: var(--fontsize_l);
}

/* ---- issue */

#issue .issueContent .issueContentItem {
	width: 48%;
	padding-right: 0;
}
#issue .issueContent .issueContentItem:nth-child(n+3) {
	padding-top: var(--m60);
}
#issue .issueContent .issueContentItem .issueContentIndex {
	width: 34%;
	padding-left: var(--m10);
	padding-right: var(--m10);
}
#issue .issueContent .issueContentItem h3 {
	min-height: 3.2em;
	margin-top: -0.35em;
	font-size: var(--fontsize_l);
}
#issue .issueContent .issueContentItem .issueContentImage {
	width: 16vw;
}

/* ---- flow */

#flow .box {float: none; width: 100%;min-height: 150px;}

#flow .arrow{float: none; width: 100%; min-height:0px; line-height:1; text-align: center;}






/* ---- client */

#client li {
	width: 30.333%;
	margin: 0 1.5%;
}
#client li:nth-child(n+4) {
	margin-top: 3%;
}

}






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

#contact form * {
	-webkit-appearance: none;
	border-radius: 0;
}
#contact form {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
#contact form dt,
#contact form dd {
	width: 100%;
}
#contact form dt {
	margin-bottom: 10px;
}
#contact form dd {
	margin-bottom: 20px;
}
#contact form dd .select_outer {
	position: relative;
	overflow: hidden;
	display: inline-block;
	width: 100%;
	background: #ffffff;
	border: 1px solid #aaaaaa;
}
#contact form dd .select_outer select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 36px 10px 10px;
	background: transparent;
	border: 0;
	outline: none;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: '';
}
:root #contact form dd .select_outer select {
	width: 104%\0/;
	padding-right: 0\0/;
}
#contact form dd .select_outer select::-ms-expand {
	display: none;
}
#contact form dd .select_outer:before{
	position: absolute;
	content: '';
	z-index: 2;
	top: 50%;
	right: 10px;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: url(../../image/common/i_pulldown.png) no-repeat 0 0;
	background-size: 16px;
}
#contact form dd input {
	width: 100%;
	padding: 10px;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
}
#contact form dd textarea {
	width: 100%;
	padding: 10px;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
}
#contact form dd .select_outer:active,
#contact form dd input:focus,
#contact form dd textarea:focus { 
	border: 1px solid #56c17c;
}
#contact form .agreement {
	margin-bottom: 40px;
	line-height: 20px;
	color: var(--white);
	text-align: center;
}
#contact form .agreement * {
	line-height: 20px;
	vertical-align: top;
}
#contact form .agreement label.checkbox {
	cursor: pointer;
	width: 20px;
	height: 20px;
	margin-right: 6px;
	border: 1px solid #aaaaaa;
	background: #fff;
	overflow: hidden;
	position: relative;
	display: inline-block;
	box-sizing: border-box;
}
#contact form .agreement label.checkbox input[type="checkbox"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	position: absolute;
	left: 20px;
	width: 20px;
	height: 20px;
	left: -40px;
	box-shadow: 40px 0px #ffffff;
	z-index: 2;
}
#contact form .agreement label.checkbox input[type="checkbox"]:checked {
	box-shadow: none;
}
#contact form .agreement label.checkbox input[type="checkbox"]:checked:focus {
	box-shadow: 40px 0px #666;
	opacity: 0.1;
}
#contact form .agreement label.checkbox input[type="checkbox"]:focus {
	box-shadow: 40px 0px #ffffff;
}
#contact form .agreement label.checkbox:after {
	content: '';
	position: absolute;
	top: 0;
	left: 5px;
	display: block;
	margin-top: 1px;
	width: 6px;
	height: 10px;
	border-right: 2px solid #56c17c;
	border-bottom: 2px solid #56c17c;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	z-index: 1;
}
#contact form .agreement a {
	color: var(--white);
	text-decoration: underline;
}
#contact form .agreement a:hover {
	text-decoration: none;
}
#contact form .button {
	text-align: center;
}
#contact form .button input {
	margin-top: -5%;
	margin-bottom: 5%;
	padding: 5%;
	font-size: 3vw;
	line-height: 1;
	color: #ffffff;
	background: var(--blue);
	border: none;
	cursor: pointer;
	border-radius: 100px;
}
#contact form .button input:hover {
	opacity: 1;
}
#contact form .errormessage {
	display: none;
}
#contact form .error {
	display: inline-block;
	margin: 0 5px 0 0;
	font-size: 100%;
	color: var(--blue);
}
#contact form .form_error dd input,
#contact form .form_error dd textarea,
#contact form .agreement.form_error label.checkbox {
	border: 1px solid var(--blue);
}





}