@charset "utf-8";

/* CSS Document */

/*-------------------------
- reset
- base
- header
- footer
- btn
- main
- fix_btn
- color
- txt
- font
- fade-in
- dropshadow
-------------------------*/


/*=======================================
　reset
=======================================*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	box-sizing: border-box;
}
body {
	/*font-family: 'Noto Sans JP', sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif , "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic Pro W3", "ヒラギノ角ゴ Pro W3", sans-serif;
	overflow-x: hidden;
	font-feature-settings: "palt";
	/*font-size: 14px;*/
	color: #363636;
	letter-spacing: 0;
	font-weight: 400;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
img {
	max-width: 100%;
	height: auto;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #333;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #333;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
ul, li {
	list-style: none;
}
main {
	overflow-x: hidden;
}
@media only screen and (max-width: 767px) {
body {
	font-size: 13px;
}
}



/*=======================================
　base
=======================================*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
a {
	color: #373737;
	text-decoration: none;
	transition: all 0.2s ease-in-out;
}
a:hover {
	/*opacity: 0.7;*/
}
.pc {
	display: block !important;
}
.sp {
	display: none !important;
}
.link_none {
	pointer-events: none;
}
.flex_area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.inner {
	width: 90%;
	margin: 0 auto;
	max-width: 1000px;
}
.anchor {
    display: block;
    padding-top: 150px;
    margin-top: -150px;
    z-index: 0;
    position: relative;
}
@media only screen and (max-width: 768px) {
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.flex_area {
	display: block;
}
.anchor {
    padding-top: 80px;
    margin-top: -80px;
	pointer-events: none;
}
}



/*=======================================
　header
=======================================*/
header {
	width: 100%;
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	background: #fff;
	z-index: 3;
}
header .hd_logo {
	max-width: 107.8346px;
	width: 7.48%;
	margin-left: 2.22%;
}
@media only screen and (max-width: 768px){
header {
	height: 54.6047px;
	/* background: transparent; */
}
}



/*========= PCナビゲーション =========*/
header .pc > .flex_area {
	align-items: center;
	justify-content: space-between;
	height: 100px;
}
header .pc nav {
	margin-right: 5.34%;
	width: calc(100% - 7.48% - 2.22% - 5.34%);
	height: 100%;
}
header .pc nav > ul > li {
	position: relative;
	width: fit-content;
	height: 100%;
}
header .pc nav > ul > li.site_link a {
	color: var(--main_color);
	font-size: calc(15/1440*100vw);
	position: relative;
	padding-left: 30px;
}
header .pc nav > ul > li.site_link a::before {
    content: "";
    position: absolute;
    background: url("../images/common/arrow01.svg") no-repeat;
    background-size: cover;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 12.0964px;
    height: 10.8868px;
}
@media only screen and (min-width: 1440px){
header .pc nav > ul > li.site_link a {
	font-size: 15px;
}
}



/* カレント */
header .pc nav > ul > li {
    position: relative;
}
header .pc nav > ul > li:not(:last-child)::after {
    content:  "";
    width: 100%;
    height:  4px;
    display:  inline-block;
    background: var(--main_color);
	position: absolute;
	bottom: 0;
	/*left: 50%;*/
	/*-webkit-transform : translateX(-50%);*/
	/*transform : translateX(-50%);*/
    transition: all .3s;
    transform: scale(0, 1);
    transform-origin: left bottom;
}
header .pc nav > ul > li:hover:not(:last-child)::after {
    transform: scale(1, 1);
}



/* ナビゲーションドロップダウンのためのCSS */
header .pc nav > ul {
	list-style: none;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 4.51%;
	height: 100%;
}
header .pc nav > ul > li > a {
	display: block;
	font-family: 'Inter', sans-serif;
	font-weight: 600;
	font-size: calc(19/1440*100vw);
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	transition: color 0.2s ease-in-out;	
}
header .pc nav > ul > li > a:hover {
	opacity: 1;
}
header .pc nav > ul > li.has-child {
	position: relative;
}
header .pc nav > ul > li.has-child ul {
	position: absolute;
	left: 50%;
	-webkit-transform : translateX(-50%);
	transform : translateX(-50%);
	bottom: -90px;
	z-index: 4;
	visibility: hidden;
	opacity: 0;
	border-radius: 4.08px;
	transition: all 0.2s ease-in-out;
}
header .pc nav > ul > li.has-child:hover>ul,
header .pc nav > ul > li.has-child ul li:hover>ul,
header .pc nav > ul > li.has-child:active>ul,
header .pc nav > ul > li.has-child ul li:active>ul {
	visibility: visible;
	opacity: 1;
}
header .pc nav > ul > li.has-child ul {
	width: 69.44vw;
	max-width: 1000px;
	background: #fff;
	border: 2px solid var(--main_color);
	justify-content: center;
	align-items: center;
	height: 67.5341px;
}
header .pc nav > ul > li.has-child ul::before {
  content: "";
  position: absolute;
  top: -22px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform : translateX(-50%);
  border: 8px solid transparent;
  border-bottom: 14px solid #FFF;
  z-index: 2;
}
header .pc nav > ul > li.has-child ul::after {
  content: "";
  position: absolute;
  top: -28px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform : translateX(-50%);
  border: 10px solid transparent;
  border-bottom: 17px solid var(--main_color);
  z-index: 1;
}
header .pc nav > ul > li.has-child ul li {
	width: calc(100%/3);
	height: 65%;
}
header .pc nav > ul > li.has-child ul li:not(:last-child) {
	border-right: 2px solid var(--main_color);
}
header .pc nav > ul > li.has-child ul li a {
	font-size: calc(18/1440*100vw);
	font-weight: 700;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}
@media only screen and (min-width: 1440px){
header .pc nav > ul > li > a {
	font-size: 19px;
}
header .pc nav > ul > li.has-child ul li a {
	font-size: 18px;
}
}



/*========= SPナビゲーション =========*/
@media only screen and (max-width: 768px){
header .sp .header__inner {
	position: relative;
	height: 54.6047px;
	display: flex;
	/* flex-direction: column; */
	/* justify-content: center; */
}
header .sp .header__inner > .hd_logo {

	max-width: 80.87595px;
	width: 21.56%;
	width: 20%;
	/* margin: 20px auto 0; */
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
header .sp .humberger {
	display: block;
	height: 40px;
	margin-left: auto;
	position: absolute;
	z-index: 10;
	width: 40px;
	border: none;
	/* background-color: transparent; */
	background: linear-gradient(35deg, #29C0FF 0%, #5E4CFF 100%);
	border-radius: 200px;
	right: 2.5%;
	top: 8px;
	/* -webkit-transform : translateY(-50%); */
	/* transform : translateY(-50%); */
}
header .sp .humberger.-active {
	background: transparent;
}
header .sp .humberger.-active .humberger__line {
	background-color: transparent;
}
header .sp .humberger.-active .humberger__line::before {
	top: 0;
	transform: rotate(45deg);
}
header .sp .humberger.-active .humberger__line::after {
	top: 0;
	transform: rotate(-45deg);
}
header .sp .humberger.-active .humberger__text::before {
	content: '閉じる';
}
header .sp .humberger__line {
	display: block;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform : translate(-50%,-50%);
	width: 20px;
	background-color: #fff;
	transition: 0.4s;
}
header .sp .humberger__line:before, .humberger__line:after {
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	width: 100%;
	background-color: #fff;
	transition: inherit;
}
header .sp .humberger__line:before {
	top: -8px;
}
header .sp .humberger__line:after {
	top: 8px;
}
header .sp .humberger__text {
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
header .sp .humberger__text::before {
	content: "メニュー";
	text-align: center;
	color: #172e59;
	font-size: 10px;
	font-weight: 900;
}
header .sp .header__nav-area {
	position: fixed;
	top: 0;
	right: -100%;
	z-index: 9;
	height: calc(100vh - 20px);
	/* height: auto; */
	width: 86.09%;
	visibility: hidden;
	/* padding-top: 60px; */
	background-color: #EEEEEF;
	transition: 0.4s;
	border-bottom-left-radius: 25px;
	overflow-y: scroll;
}
header .sp .header__nav-area.-active {
	right: 0;
	visibility: visible;
}
header .sp .global-navigation {
	/* padding-top: 40px; */
	/* padding-right: 25px; */
	/* padding-bottom: 120px; */
	/* padding-left: 25px; */
}
header .sp .global-navigation__list {
	width: 76%;
	margin: 0 auto 40px;
}
header .sp .global-navigation__list>li {
	/* padding-bottom: 20px; */
	/* border-bottom: 2px solid #e7e9ee; */
	margin-bottom: 25px;
	line-height: 1;
}
header .sp .global-navigation__list>li+li {
	/* margin-top: 20px; */
}
header .sp .global-navigation__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: var(--main_color);
	font-weight: 700;
	/* transition: color 0.4s; */
	font-size: 20px;
	padding: 0 0 0 1em;
	position: relative;
	line-height: 1;
	font-family: 'Inter', sans-serif;
}
header .sp .global-navigation__link.-accordion {
	position: relative;
	background: none;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	/* padding: 0 0 0 1.2em; */
}
header .sp .global-navigation__link.-accordion::after {
	/* content: ''; */
	/* display: block; */
	/* height: 12px; */
	/* position: absolute; */
	/* top: 50%; */
	/* right: 5px; */
	/* width: 2px; */
	/* background-color: #ed3242; */
	/* transform: translateY(-50%); */
	/* transition: transform 0.4s; */
}
header .sp .global-navigation__link::before,
header .sp .global-navigation__link.-accordion::before {
	content: "";
	position: absolute;
	top: 0.8em;
	left: 0;
	border: 5px solid transparent;
	border-left: 8px solid var(--main_color);
	transition: 0.4s;
}
header .sp .global-navigation__link.-active.-accordion::before {transform: rotate( 90deg );}
header .sp .global-navigation__link.-active::after {
	transform: translateY(-50%) rotate(-90deg);
}
header .sp .accordion {
	height: 0;
	overflow: hidden;
	visibility: hidden;
	transition: 0.4s;
	padding: 0 4em 0 2em;
}
header .sp .accordion.-active {
	/* height: auto; */

	height: 129px;
	visibility: visible;
	padding: 15px 4em 0 2em;
}
header .sp .accordion__list li {
	font-size: 14px;
	font-weight: 700;
}
header .sp .accordion__list li+li {
	/* margin-top: 21px; */
}
header .sp .accordion__link {
	padding-bottom: 10px;
	display: block;
	border-bottom: 1px solid var(--main_color);
}
header .sp .accordion__list li:not(:last-child) {
	margin-bottom: 18px;
}
header .sp .nav_ttl {
	background: var(--main_color);
	color: #fff;
	font-size: 18.634px;
	height: 54.6047px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0 0 0 7%;
	margin-bottom: 40px;
}
header .sp .site_link {
	width: 76%;
	/* max-width: 245.4914px; */
	margin: 0 auto 50px;
}
header .sp .site_link a {
	background: linear-gradient(35deg, #477EFF 0%, #5E4CFF 100%);
	border-radius: 100px;
	height: 55.5px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding-left: 3em;
	position: relative;
}
header .sp .site_link a::before {
    content: "";
    position: absolute;
    background: url(../images/common/arrow03.png) no-repeat;
    background-size: cover;
    top: 50%;
    left: 1em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 14.8773px;
    height: 13.38955px;
}
header .sp .header__nav-area .hd_logo {
	max-width: 64.367px;
	width: 19.92%;
	margin: 0 auto 10px;
}
header .sp .copyright {
	font-size: 10px;
	font-weight: 500;
	text-align: center;
	margin-bottom: 40px;
}
header .sp ruby rt {
	text-align: left;
	color: #999;
	font-size: 10px;
	letter-spacing: 0.2em;
}
}



/*=======================================
　footer
=======================================*/
footer {
	position: relative;
	/* z-index:-1; */
}
footer .contact_area {
	background: linear-gradient(90deg, #29C0FF 0%, #5E4CFF 100%);
	padding: 55px 5%;
}
footer .contact_area .txt {
	color: #fff;
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin: 0 auto 20px;
	width: fit-content;
	padding: 0 2em;
	position: relative;
}
footer .contact_area .txt::before,
footer .contact_area .txt::after {
    content: "";
    position: absolute;
    bottom: 0;
    /* -webkit-transform: translateY(-50%); */
    /* transform: translateY(-50%); */
    width: 33.6619px;
    height: 35.3928px;
}
footer .contact_area .txt::before {
    background: url(../images/common/c_img_left.png) no-repeat;
    background-size: cover;
    left: 0;
}
footer .contact_area .txt::after {
    background: url(../images/common/c_img_right.png) no-repeat;
    background-size: cover;
    right: 0;
}
@media only screen and (max-width: 768px){
footer {
}
footer .contact_area {
	background: linear-gradient(45deg, #408DFF 0%, #5E4CFF 100%);
	padding: 55px 5% 75px;
}
footer .contact_area .txt {
	font-size: 19.5px;
	margin-bottom: 35px;
}
footer .contact_area .txt::before,
footer .contact_area .txt::after {
}
footer .contact_area .txt::before {
    background: url(../images/common/c_img_left.png) no-repeat;
    background-size: cover;
    left: 0;
}
footer .contact_area .txt::after {
    background: url(../images/common/c_img_right.png) no-repeat;
    background-size: cover;
    right: 0;
}
footer .contact_area .btn01 {
	width: 100%;
	height: 67.7658px;
}
footer .contact_area .btn01 a {
	font-size: 20px;
	line-height: 67.7658px;
}
footer .contact_area .btn01 a::after {
	width: 24.70765px;
	/* width: 20px; */
	height: 22.2369px;
	/* height: 17px; */
}
}



footer .footer_inn {
	height: 225px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
footer .footer_inn .ft_logo {
	max-width: 163.6021px;
	width: 11.36%;
}
@media only screen and (max-width: 768px){
footer .footer_inn {
}
footer .footer_inn .ft_logo {
	max-width: inherit;
	width: 32.72%;
}
}



/*=======================================
　btn
=======================================*/
.btn01 {
	max-width: 259.5639px;
	margin: 0 auto;
	height: 55.2949px;
	position: relative;
}
/*.btn01:hover {
	top: -2px;
}*/
.btn01 a {
	color: var(--main_color);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	background: #fff;
	border-radius: 100px;
	position: relative;
	padding-left: 10%;
	-webkit-filter:drop-shadow(0 3.7148px 3.7148px rgba(0, 0, 0, 0.13));
	-moz-filter:drop-shadow(0 3.7148px 3.7148px rgba(0, 0, 0, 0.13));
	-ms-filter:drop-shadow(0 3.7148px 3.7148px rgba(0, 0, 0, 0.13));
	filter:drop-shadow(0 3.7148px 3.7148px rgba(0, 0, 0, 0.13));
	will-change: filter;
	height: 100%;
	display: block;
	line-height: 55.2949px;
}
.btn01 a::after {
    content: "";
    position: absolute;
    background: url("../images/common/arrow01.svg") no-repeat;
    background-size: cover;
    top: 50%;
    right: 10%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20.1607px;
    height: 18.1447px;
    image-rendering: -webkit-optimize-contrast;
}
.btn01 a:hover {
	/*opacity: 1;*/
	background: #29C0FF;
	/*-webkit-filter:drop-shadow(0 3.7148px 3.7148px rgba(0, 0, 0, 0.13));
	-moz-filter:drop-shadow(0 6px 6px rgba(0, 0, 0, 0.2));
	-ms-filter:drop-shadow(0 6px 6px rgba(0, 0, 0, 0.2));
	filter:drop-shadow(0 6px 6px rgba(0, 0, 0, 0.2));*/
}
/*.btn01 a:hover::after {
    width: 20px;
    height: 18px;
}*/
.btn01 a span {
	display: inline-block;
}
/*.btn01 a:hover span {
	animation: move 0.4s linear alternate;
	-webkit-filter:drop-shadow(0 2px 2px rgba(0, 0, 0, 0.2));
	-moz-filter:drop-shadow(0 2px 2px rgba(0, 0, 0, 0.2));
	-ms-filter:drop-shadow(0 2px 2px rgba(0, 0, 0, 0.2));
	filter:drop-shadow(0 2px 2px rgba(0, 0, 0, 0.2));
}
.btn01 a:hover span:nth-child(2) {
	animation-delay: 0.05s;
}
.btn01 a:hover span:nth-child(3) {
	animation-delay: 0.1s;
}
.btn01 a:hover span:nth-child(4) {
	animation-delay: 0.15s;
}
.btn01 a:hover span:nth-child(5) {
	animation-delay: 0.2s;
}
.btn01 a:hover span:nth-child(6) {
	animation-delay: 0.25s;
}
.btn01 a:hover span:nth-child(7) {
	animation-delay: 0.3s;
}
@keyframes move {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -5px);
  }
  100% {
    transform: translate(0, 0);
  }
}*/




@media only screen and (max-width: 768px){
.btn01 {
	max-width: inherit;
	margin: 0 auto;
	width: 51.91%;
}
.btn01 a {
	/* height: 41.4712px; */
	background: #fff;
	font-size: 15px;
}
.btn01 a::after {
    width: 15.12055px;
    height: 13.6085px;
}
}



/*=======================================
　main
=======================================*/
main {
	margin-top: 100px;
}
@media only screen and (max-width: 768px){
main {
	margin-top: 0;
}
}



/*=======================================
　fix_btn
=======================================*/
.fix_btn {
	position: fixed;
	right: 0;
	top: 100px;
	/*max-width: 60px;*/
	/* width: 4.16%; */
	width: 48px;
	z-index: 2;
}
.fix_btn .btn {
	width: 100%;
	height: auto;
	aspect-ratio: 120 / 528;
	transition: all 0.2s ease-out;
	cursor:pointer;
}
.fix_btn .btn:not(:last-child) {
	margin-bottom: 14px;
}
.fix_btn .btn:nth-child(1) {
	background: url("../images/common/fix_btn01.png?1");
	background-size: cover;
}
.fix_btn .btn:nth-child(2) {
	background: url("../images/common/fix_btn02.png");
	background-size: cover;
}
.fix_btn .btn:nth-child(3) {
	background: url("../images/common/fix_btn03.png");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(1) {
	background: url("../images/common/fix_btn01_on.png?1");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(2) {
	background: url("../images/common/fix_btn02_on.png");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(3) {
	background: url("../images/common/fix_btn03_on.png");
	background-size: cover;
}
.fix_btn .btn a {
	display: block;
	width: 100%;
	height: 100%;
}
/*.fix_btn .btn a {
	-webkit-appearance: none;
	border-style: none;
	display: flex;
	align-items: center;
	color: #fff;
	font-size: 18px;
	width: 100%;
	font-weight: 700;
	letter-spacing: 0.04em;
	will-change: filter;
	cursor: pointer;
	border-bottom-left-radius: 50px;
	border-top-left-radius: 50px;
	text-decoration: none;
	outline: none;
	transition: all 0.3s ease-out;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}*/
/*.fix_btn .btn a:hover {
	opacity: 1;
}*/
/*.fix_btn .btn:nth-child(1) a {
	background: linear-gradient(0deg, #00F7FF 0%, #F580FF 40%, #ff37a3 100%);
	background-position: 50% 100%;
	background-size: auto 200%;
	padding-top: 2em;
	height: calc(100% - 2em);	
}
.fix_btn .btn:nth-child(2) a {
	background: linear-gradient(180deg, #00F7FF 0%, #F580FF 60%, #ff37a3 100%);
	background-position: 50% 0;
	background-size: auto 200%;
	padding-top: 1.5em;
	height: calc(100% - 1.5em);	
}
.fix_btn .btn:nth-child(1) a:hover {
	background-position: 80% 50%;
}
.fix_btn .btn:nth-child(2) a:hover {
	background-position: 100% 50%;
}
.fix_btn .btn a span {
	position: relative;
	padding-bottom: 1.5em;
}
.fix_btn .btn a span::after {
	content: "";
	position: absolute;
	background: url(../images/common/arrow05.png) no-repeat;
	background-size: cover;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 10.8868px;
	width: 13px;
	height: 12.0964px;
	height: 15px;
}*/
@media only screen and (max-width: 768px){
.fix_btn {
	display: none;
	right: auto;
	top: auto;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform : translateX(-50%);
	width: 95.38%;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	max-width: inherit;
	gap: 1.5%;
}
.fix_btn .btn {
	/* height: 40.0971px; */
	height: 10vw;
}
.fix_btn .btn:not(:last-child) {
	margin: 0;
}
.fix_btn .btn:nth-child(1) {
	background: url("../images/common/fix_btn01_sp2.png?2");
	background-size: cover;
}
.fix_btn .btn:nth-child(2) {
	background: url("../images/common/fix_btn02_sp2.png");
	background-size: cover;
}
.fix_btn .btn:nth-child(3) {
	background: url("../images/common/fix_btn03_sp2.png");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(1) {
	background: url("../images/common/fix_btn01_sp2.png?2");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(2) {
	background: url("../images/common/fix_btn02_sp2.png");
	background-size: cover;
}
.fix_btn .btn:hover:nth-child(3) {
	background: url("../images/common/fix_btn03_sp2.png");
	background-size: cover;
}
/*.fix_btn .btn a {
	-ms-writing-mode: inherit;
	writing-mode: inherit;
	height: auto;
	border-bottom-left-radius: 0;
	border-top-left-radius: 40px;
	border-top-right-radius: 40px;
	justify-content: center;
	font-size: calc(27/750*100vw);
}*/
/*.fix_btn .btn:nth-child(1) a {
	height: 100%;
	padding: 0;
	background: linear-gradient(90deg, #29C0FF 0%, #5E4CFF 100%);
}
.fix_btn .btn:nth-child(2) a {
	height: 100%;
	background: linear-gradient(270deg, #29C0FF 0%, #5E4CFF 100%);
	padding: 0;
}
.fix_btn .btn:nth-child(1) a:hover {
	background-position: 80% 50%;
}
.fix_btn .btn:nth-child(2) a:hover {
	background-position: 100% 50%;
}
.fix_btn .btn a span {
	padding-bottom: 0;
}
.fix_btn .btn a span::after {
	display: none;
}*/
}



/*=======================================
　color
=======================================*/
:root {
--main_color: #5E4CFF;
}



/*=======================================
　txt
=======================================*/
.txt_C {
	text-align: center;
}
.txt_R {
	text-align: right;
}



/*=======================================
　font
=======================================*/
.inter {
	font-family: 'Inter', sans-serif;
}



/*=======================================
　fade-in
=======================================*/
.fadeIn_left {
	opacity: 0;
	transform: translate(-50px, 0);
}
.fadeIn_left.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn_right {
	opacity: 0;
	transform: translate(50px, 0);
	transition: 0.4s;
}
.fadeIn_right.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn_up {
	opacity: 0;
	transform: translate(0, 50px);
	transition: 0.4s;
}
.fadeIn_up.is-show {
	transform: translate(0, 0);
	opacity: 1;
}
.fadeIn {
	opacity: 0;
	transition: 0.4s
}
.fadeIn.is-show {
	opacity: 1;
}



/*=======================================
　dropshadow
=======================================*/
.dropshadow01 {
	-webkit-filter:drop-shadow(0 4px 4px rgba(0, 0, 0, 0.2));
	-moz-filter:drop-shadow(0 4px 4px rgba(0, 0, 0, 0.2));
	-ms-filter:drop-shadow(0 4px 4px rgba(0, 0, 0, 0.2));
	filter:drop-shadow(0 4px 4px rgba(0, 0, 0, 0.2));
	will-change: filter;
}