@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) url(../../image/lp/ji2022/bg.webp.avif) no-repeat 0 -2vw;
	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(../../image/lp/ji2022/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_light);
}
.sectionTitle .sectionTitleIndex:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1em;
	height: 1px;
	background: var(--darkgray);
}
.bg_dark .sectionTitle .sectionTitleIndex:after {
	background: var(--white);
}
.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: 40px;
}
header nav {
	display: flex;
	align-items: center;
}
header nav .navMenu {
	display: flex;
	align-items: center;
	font-size: 0.75em;
	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: 100px;
}
header nav .navButton .navButtonContact a {
	background: #208db8;
}
header nav .navButton .navButtonDownload a {
	background: #013f58;
}
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: 300px;
}
#top h2 img {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}
#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(../../image/lp/ji2022/top_bg.webp.avif) no-repeat center center;
	background-size: cover;
	z-index: -1;
}
#top .topContent h3 {
	position: relative;
	margin-bottom: 0.25em;
	font-size: 2.25em;
	line-height: var(--lineheight_ss);
	font-weight: var(--fontweight_bold);
}
#top .topContent p {
	position: relative;
	font-size: var(--fontsize_s);
	line-height: var(--lineheight_s);
	font-weight: var(--fontweight_bold);
}

/* about */

#about {
	background: url(../../image/lp/ji2022/about_bg.webp.avif) no-repeat center center;
	background-size: cover;
}
#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 {
	margin-top: var(--m-160);
	padding-top: var(--m160);
	padding-bottom: 0;
}
#influencer .influencerList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: var(--m40) 0;
}
#influencer .influencerListItem {
	width: 30%;
	margin: 0 1.666%;
}
#influencer .influencerSliderThumb {
	position: relative;
	width: 100%;
	margin-bottom: var(--m10);
	padding-top: 66.666%;
	overflow: hidden;
}
#influencer .influencerSliderThumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#influencer .influencerSliderFollower {
	display: flex;
	align-items: center;
	position: absolute;
	bottom: 0;
	left: 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(0,0,0,0.8);
}
#influencer .influencerSliderFollower span {
	display: inline-block;
	margin-right: 0.5em;
	padding:  0.25em 0.5em;
	font-size: var(--fontsize_ss);
	border: 1px solid var(--white);
}
#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 1em;
	background: var(--lightgray);
	border-radius: 100px;
}
#influencer .influencerSliderTag li:last-child {
	margin-right: 0;
}

/* case */

#case a {
	display: block;
	text-decoration: none;
	color: var(--darkgray);
}
#case .caseSliderThumb {
	position: relative;
	width: 100%;
	margin-bottom: var(--m10);
	padding-top: 100%;
	overflow: hidden;
}
#case .caseSliderThumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#case .caseSliderHeader {
	display: flex;
	width: 100%;
	margin-bottom: var(--m10);
}
#case .caseSliderHeader h3 {
	width: 100%;
	line-height: var(--lineheight_ss);
}
#case .caseSliderHeader .caseSliderSns {
	flex-shrink: 0;
	width: 30px;
	margin-left: var(--m20);
	line-height: var(--lineheight_s);
}
#case .caseSliderTag {
	display: flex;
	flex-wrap: wrap;
	font-size: var(--fontsize_s);
	line-height: var(--lineheight_1);
	color: var(--gray);
}
#case .caseSliderTag li {
	margin-top: 0.5em;
	margin-right: 0.5em;
	padding: 0.5em 1em;
	background: var(--lightgray);
	border-radius: 100px;
}
#case .caseSliderTag li:last-child {
	margin-right: 0;
}

/* 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);
}

/* value */

#value {
	position: relative;
	background: url(../../image/lp/ji2022/value_bg.webp.avif) no-repeat center bottom;
	background-size: cover;
}
#value:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.01);
}
#value .sectionTitle,
#value .valueContent {
	position: relative;
}
#value .valueContent {
	display: flex;
}
#value .valueContent .circle1 {
	position: absolute;
	top: 1.25em;
	left: 14em;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #dddddd;
	border-radius: 100px;
	z-index: 1;
}
#value .valueContent .circle2 {
	position: absolute;
	top: 1.25em;
	right: 11em;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #dddddd;
	border-radius: 100px;
	z-index: 1;
}
#value .valueContent .line {
	position: absolute;
	top: 1.25em;
	left: 0;
	width: calc(100% - 25em);
	height: 2px;
	margin-top: -1px;
	margin-left: 14em;
	background: #dddddd;
}
#value .valueContent .circle1:after,
#value .valueContent .circle2:after {
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	margin: 5px;
	background: #bbbbbb;
	border-radius: 100px;
}
#value .valueContent h3 {
	margin-bottom: 2em;
	font-size: 2.5em;
	line-height: var(--lineheight_1);
	font-weight: var(--fontweight_bold);
}
#value .valueContent .valueContentPerson h3 {
	text-align: right;
}
#value .valueContent .valueContentExperience {
	width: 50%;
	padding-right: 80px;
	background-image: url(../../image/lp/ji2022/value_bgtext01.svg);
	background-repeat: no-repeat;
	background-position: top 10em right 10%;
	background-size: 11% auto;
}
#value .valueContent .valueContentPerson {
	width: 50%;
	padding-left: 80px;
	background-image: url(../../image/lp/ji2022/value_bgtext02.svg);
	background-repeat: no-repeat;
	background-position: top 10em left 10%;
	background-size: 11% auto;
}
#value .valueContent .valueContentBox {
	padding: var(--m20);
	background: var(--white);
	border-radius: 10px;
}
#value .valueContent .valueContentExperience .valueContentBox {
	box-shadow: 0 0 30px rgba(255,0,0,0.15);
}
#value .valueContent .valueContentPerson .valueContentBox {
	box-shadow: 0 0 30px rgba(0,216,255,0.15);
}
#value .valueContent .valueContentBox + .valueContentBox {
	margin-top: var(--m40);
}
#value .valueContent .valueContentBox h4 {
	margin-bottom: var(--m10);
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_s);
	font-weight: var(--fontweight_bold);
}
#value .valueContent .valueContentBox p {
	font-size: var(--fontsize_s);
}

/* issue */

#issue {
	background: url(../../image/lp/ji2022/about_bg.webp.avif) no-repeat center center;
	background-size: cover;
}
#issue .issueContent {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: var(--m80);
	line-height: var(--lineheight_1);
}
#issue .issueContent .issueContentItem {
	display: flex;
	align-items: flex-start;
	width: 33.333%;
	padding-right: var(--m40);
}
#issue .issueContent .issueContentItem:nth-child(n+4) {
	padding-top: var(--m80);
}
#issue .issueContent .issueContentItem .issueContentIndex {
	flex-shrink: 0;
	width: 35%;
	padding-left: var(--m20);
	padding-right: var(--m20);
	border-left: 2px solid var(--white);
}
#issue .issueContent .issueContentItem h3 {
	min-height: 3.2em;
	margin-top: -0.35em;
	margin-bottom: var(--m20);
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_s);
}
#issue .issueContent .issueContentItem .issueContentImage {
	width: 100px;
}

/* flow */

#flow {
	background: var(--lightgray);
}
#flow .flowSlider .swiper-slide {
	position: relative;
	color: var(--white);
}
#flow .flowSlider .flowSliderImage {
	position: relative;
	padding-top: 133.333%;
}
#flow .flowSlider .flowSliderImage img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#flow .flowSlider .flowSliderImage:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
}
#flow .flowSlider .flowSliderInfo {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: var(--m40) var(--m20);
}
#flow .flowSlider .flowSliderInfo .flowSliderHeader {
	display: flex;
	align-items: flex-start;
	margin-bottom: var(--m20);
}
#flow .flowSlider .flowSliderInfo .flowSliderHeaderIndex {
	flex-shrink: 0;
	width: 35%;
	margin-left: var(--m-20);
	padding-left: var(--m20);
	padding-right: var(--m20);
	border-left: 1px solid var(--white);
}
#flow .flowSlider .flowSliderInfo h3 {
	min-height: 3.2em;
	margin-top: -0.35em;
	font-size: var(--fontsize_ll);
	line-height: var(--lineheight_s);
}
#flow .flowSlider .flowSliderInfo p {
	padding: 0 var(--m20);
}

/* 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: #383838;
}

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

/* 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 #208db8;
}
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: #208db8;
}
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;
}



/* 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: 25vw;
}
#top .topContent {
	position: relative;
	height: 350px;
	padding-top: 40px;
	padding-left: 55%;
}
#top .topContent:before {
	height: 350px;
}

/* ---- influencer */

#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 .flowSlider .flowSliderImage {
	padding-top: 150%;
}
#flow .flowSlider .flowSliderInfo {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: var(--m40) var(--m20);
}
#flow .flowSlider .flowSliderInfo .flowSliderHeader {
	display: flex;
	align-items: flex-start;
	margin-bottom: var(--m20);
}
#flow .flowSlider .flowSliderInfo .flowSliderHeaderIndex {
	width: 33%;
	margin-left: var(--m-20);
	padding-left: var(--m10);
	padding-right: var(--m20);
}
#flow .flowSlider .flowSliderInfo p {
	padding: 0 var(--m20);
}

/* ---- 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(../../image/lp/ji2022/bg.webp.avif) 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: 35vw;
}
#top .topContent {
	position: relative;
	height: 90vw;
	padding-top: 8vw;
	padding-left: 55vw;
	padding-right: 5vw;
}
#top .topContent:before {
	height: 90vw;
	background-size: auto 145%;
	background-position: 51% 55%;
}
#top .topContent h3 {
	font-size: 1.5em;
}

/* ---- 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 {
	margin-top: var(--m-120);
	padding-top: var(--m120);
	padding-bottom: 0;
}
#influencer .influencerList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: var(--m40) 4%;
}
#influencer .influencerListItem {
	width: 48%;
	margin: 0;
}
#influencer .influencerSliderFollower {
	margin-top: -0.8em;
	font-size: 1em;
}
#influencer .influencerSliderHeader .influencerSliderSns {
	line-height: var(--lineheight_1);
}
#influencer .influencerSliderHeader .influencerSliderSns ul li {
	width: 5vw;
	margin-right: 1vw;
}

/* ---- case */

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

/* ---- 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 .flowSlider .flowSliderImage {
	padding-top: 150%;
}
#flow .flowSlider .flowSliderInfo .flowSliderHeaderIndex {
	width: 32%;
	padding-left: var(--m10);
	padding-right: var(--m20);
	line-height: var(--lineheight_1);
}
#flow .flowSlider .flowSliderInfo p {
	padding: 0 var(--m10);
}

/* ---- client */

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

}



/* contact */

#contact form * {
	-webkit-appearance: none;
	border-radius: 0;
}
#contact form {
	width: 100%;
	margin: 0 auto;
}
#contact form dt,
#contact form dd {
	width: 100%;
}
#contact form dt {
	margin-bottom: 5px;
	font-size: var(--fontsize_l);
	line-height: var(--lineheight_s);
	color: var(--white);
}
#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;
	border-radius: 4px;
}
#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: 1em 36px 1em 1em;
	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.avif) no-repeat 0 0;
	background-size: 16px;
}
#contact form dd input {
	width: 100%;
	padding: 1em;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
	border-radius: 4px;
}
#contact form dd textarea {
	width: 100%;
	padding: 1em;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
	border-radius: 4px;
}
#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: 30px;
	height: 30px;
	margin-right: 6px;
	margin-bottom: 1em;
	border: 1px solid #aaaaaa;
	background: #fff;
	overflow: hidden;
	position: relative;
	display: inline-block;
	box-sizing: border-box;
	border-radius: 4px;
}
#contact form .agreement label.checkbox input[type="checkbox"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	position: absolute;
	left: 30px;
	width: 30px;
	height: 30px;
	left: -40px;
	box-shadow: 40px 0px #ffffff;
	z-index: 2;
	border-radius: 4px;
}
#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: 8px;
	display: block;
	margin-top: 1px;
	width: 10px;
	height: 18px;
	border-right: 2px solid var(--blue);
	border-bottom: 2px solid var(--blue);
	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 .radiobutton {
	line-height: 30px;
	color: var(--white);
	text-align: left;
}
#contact form .radiobutton * {
	line-height: 30px;
	vertical-align: top;
}
#contact form .radiobutton > span {
	display: block;
	margin: 0;
}
#contact form .radiobutton > span + span {
	margin-top: 0.5em;
}
#contact form .radiobutton label {
	display: block;
	position: relative;
	box-sizing: border-box;
	border-radius: 100%;
	cursor: pointer;
}
#contact form .radiobutton label input[type="radio"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 30px;
	border: 1px solid #aaa;
	background: #fff;
	border-radius: 100%;
}
#contact form .radiobutton label input:checked ~ span::after {
	content: "";
	position: absolute;
	top: 7px;
	left: 7px;
	width: 16px;
	height: 16px;
	background: var(--blue);
	border-radius: 100%;
}
#contact form .radiobutton label span {
	padding-left: 40px;
}
/* ボタン */
#contact form .button {
	text-align: center;
}
#contact form .button input {
	margin: 0 10px;
	padding: 10px 40px;
	font-size: 24px;
	line-height: 1.2em;
	color: #ffffff;
	background: var(--blue);
	border: none;
	cursor: pointer;
	border-radius: 100px;
}
#contact form .button input:hover {
	opacity: 0.7;
}
#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(--red);
}



#contact .mw_wp_form_confirm form dl {
	border: 1px solid #aaaaaa;
	margin-top: -1px;
}
#contact .mw_wp_form_confirm form dt,
#contact .mw_wp_form_confirm form dd {
	width: 100%;
}
#contact .mw_wp_form_confirm form dt {
	padding: 10px 10px 5px 10px;
	margin-bottom: 0;
	color: var(--white);
}
#contact .mw_wp_form_confirm form dd {
	padding: 0 10px 10px 10px;
	margin-bottom: 0;
}
#contact .mw_wp_form_confirm form dd .select_outer {
	border: none;
	background: none;
}
#contact .mw_wp_form_confirm form dd .select_outer:before{
	display: none;
}
#contact .mw_wp_form_confirm form dd .select_outer:active { 
	border: none;
}
#contact .mw_wp_form_confirm form .agreement {
	display: none;
}
#contact .mw_wp_form_confirm form p.s.red,
#contact .mw_wp_form_confirm form span.red {
	display: none;
}
#contact .mw_wp_form_confirm form .button{
	margin-top: 40px;
}

#contact .captcha{
	margin: 0 auto 40px auto;
	font-size: 12px;
	line-height: 1.2;
	text-align: center;
}
#contact .captcha input{
	width: 200px;
	margin-top: 10px;
	padding: 5px;
	font-size: 14px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
}
#contact .captcha span{
	display: block;
	margin-top: 10px;
}
#contact .captcha img{
	width: 200px;
	margin-bottom: 10px;
}



@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.avif) 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);
}



#contact .mw_wp_form_confirm form dl {
	border: 1px solid #aaaaaa;
	margin-top: -1px;
}
#contact .mw_wp_form_confirm form dt,
#contact .mw_wp_form_confirm form dd {
	width: 100%;
}
#contact .mw_wp_form_confirm form dt {
	padding: 10px 10px 5px 10px;
	margin-bottom: 0;
	color: var(--white);
}
#contact .mw_wp_form_confirm form dd {
	padding: 0 10px 10px 10px;
	margin-bottom: 0;
}
#contact .mw_wp_form_confirm form dd .select_outer {
	border: none;
}
#contact .mw_wp_form_confirm form dd .select_outer:before{
	display: none;
}
#contact .mw_wp_form_confirm form dd .select_outer:active { 
	border: none;
}
#contact .mw_wp_form_confirm form .agreement {
	display: none;
}
#contact .mw_wp_form_confirm form p.s.red,
#contact .mw_wp_form_confirm form span.red {
	display: none;
}
#contact .mw_wp_form_confirm form .button{
	margin-top: 40px;
}

#contact .captcha{
	margin: 0 auto 40px auto;
	font-size: 12px;
	line-height: 1.2;
	text-align: center;
}
#contact .captcha input{
	width: 200px;
	margin-top: 10px;
	padding: 5px;
	font-size: 14px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #aaaaaa;
}
#contact .captcha span{
	display: block;
	margin-top: 10px;
}
#contact .captcha img{
	width: 200px;
	margin-bottom: 10px;
}

}