@charset "utf-8";
/* -------------------------------------------------- */
/* RESET*/
/* -------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}

li {
	list-style-type: none;
}

blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	vertical-align: bottom;
}

textarea,select,option {
	font: inherit;
}

/* -------------------------------------------------- */
/* WP*/
/* -------------------------------------------------- */
/* 投稿の画像配置 */
.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */
/* .alignright { float: right; padding: 0px 0 10px 10px; } *//* 後続のテキスト左回り込み */
/*.alignleft { float: left; padding: 0px 10px 10px 0; }*//* 後続テキスト右回り込み */

/* -------------------------------------------------- */
/* LINK */
/* -------------------------------------------------- */
a:link,
a:visited { text-decoration: none; color: #333333; }
a:hover  { text-decoration: none; color: #0d499e; }
a:active { text-decoration: none; color: #0d499e; }

/* -------------------------------------------------- */
/* COMMON */
/* -------------------------------------------------- */
html {
	font-size: 62.5%;/* 10px */
}

body {
	background: #FFFFFF;
	color: #333333;
	font-size: 14px;
	font-size: 1.4rem;
	-webkit-text-size-adjust: 100%
}

#container {
	width: 100%;
	position: relative;
	font-family: "Noto Sans JP","游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.5;
	overflow: hidden;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	transition: all 0.3s ease-in-out 0s;
}

.brSp {
	display: none;
}

.brTab {
	display: none;
}

.brPc {
	display: inline-block;
}

.on {
	transition: all 0.3s ease-in-out 0s;
}

.on:hover {
	opacity: 0.7;
}

.en {
	font-family: "Roboto Condensed", sans-serif;
}

.inner {
	width: 1000px;
	margin: 0 auto;
}

/* -------------------------------------------------- */
/* PC*/
/* -------------------------------------------------- */
/* header */
/* ----------------------------------- */
#headerWrap {
	width: 92%;
	margin: 0 auto;
	padding: 20px 0;
	background: #FFF;
	border-radius: 0 0 10px 10px;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 8000;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

#headerLogo {
	padding-bottom: 20px;
	text-align: center;
}

#headerLogo img {
	width: 290px;
	height: auto;
}

#gNav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 1.6rem;
	gap: 60px;
}

#gNav li {
	font-weight: bold;
}

#gNav li a:hover {
	color: #0d499e;
}

#gNav li a.active {
	color: #0d499e;
}

#serviceMenu {

}

.subMenu {
	overflow: hidden;
	pointer-events: none;
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.5s ease-out;
}

.subMenu.active {
	grid-template-rows: 1fr;
	pointer-events: visible;
}

.subMenu .inner {
	overflow: hidden;
	padding: 30px 0 40px;
	margin-top: 30px;
	border-top: 1px solid #a6bedf;
}

.subMenuMain {
	padding-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.subMenuTit {
	font-size: 1.6rem;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 40px;
}

.subMenuTit::after {
	content: "";
	width: 65px;
	height: 65px;
	background: url(../img/common/icon_arrow3.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.subMenuTit span {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}

.subMenuTit span::before {
	content: attr(data-en);
	display: block;
	font-size: 4.4rem;
	font-weight: bold;
	font-style: italic;
	font-weight: 400;
	font-family: "Roboto Condensed", sans-serif;
	display: inline-block;
}

.serviceMenuLink {
	padding-bottom: 10px;
}

.serviceMenuList {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 3%;
}

.serviceMenuList li {
	width: 48.5%;
}

.serviceMenuList li a {
	height: 100%;
	padding: 20px 40px 20px 20px;
	background: url(../img/common/icon_arrow1.svg) right 15px center no-repeat #f4f9f7;
	background-size: 30px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	gap: 20px;
}

#mainMenu .serviceMenuList li a {
	height: 100%;
	padding: 10px 10px 10px 10px;
	background: url(../img/common/icon_arrow1.svg) right 15px center no-repeat #f4f9f7;
	background-size: 30px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	gap: 20px;
}

.serviceMenuList li a:hover {
	opacity: 0.7;
}

.serviceMenuImg {
	width: 90px;
}

.serviceMenuImg img {
	width: 100%;
	height: auto;
}

.serviceMenuTit {
	width: calc(100% - 170px);
	font-size: 1.8rem;
	font-weight: 600;
}

.serviceMenuTit .detail {
	font-size: 1.3rem;
	font-weight: 400;
}

#aboutusMenu {
}

.aboutusMenuList {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 4%;
}

.aboutusMenuList li {
	width: 22%;
}

.aboutusMenuList li a:hover {
	opacity: 0.7;
}

.aboutusMenuImg img {
	width: 100%;
	height: auto;
}

.aboutusMenuTit {
	font-weight: 600;
}

/* メニュー */
/* ----------------------------------- */
#mainNav {
	display: flex;
	gap: 2px;
	position: fixed;
	bottom: 20px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	z-index: 9999;
}

#menuBtn {
	height: 65px;
	padding: 0 30px;
	background: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	cursor: pointer;
	border-radius: 5px 0 0 5px;
	transition: all 0.3s ease-in-out 0s;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.1);
}

#menuBtn:hover {
	opacity: 0.7;
}

.bar {
	width: 30px;
	height: 25px;
	position: relative;
}

/*ボタン内側*/
.bar  span {
	width: 100%;
	height: 3px;
	display: inline-block;
	transition: all 0.4s; /*アニメーションの設定*/
	position: absolute;
	left: 0;
	border-radius: 2px;
	background: #1f2964;
}

.bar  span:nth-of-type(1) {
	top: 0;
}

.bar span:nth-of-type(2) {
	top: 10px;
}

.bar  span:nth-of-type(3) {
	top: 20px;
}

/*activeクラスが付与されると線が回転して×に*/

#menuBtn.active .bar span:nth-of-type(1) {
	top: 6px;
	left: 0;
	transform: translateY(6px) rotate(-45deg);
}

#menuBtn.active .bar  span:nth-of-type(2) {
	opacity: 0; /*真ん中の線は透過*/
}

#menuBtn.active .bar  span:nth-of-type(3) {
	top: 18px;
	left: 0;
	transform: translateY(-6px) rotate(45deg);
}

#menuBtnTxt {
	color: #1f2964;
	font-size: 1.8rem;
	font-weight: 500;
	white-space: nowrap;
}

#searchBtn {
	height: 65px;
	padding: 0 30px;
	background: #FFF;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.1);
}

#searchBtn img {
	height: 100%;
	height: auto;
}

#searchBtn:hover {
	opacity: 0.7;
}

#telBtn {
	height: 65px;
	background: #1f2964;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.1);
}

#telBtn a {
	width: 100%;
	height: 100%;
	padding: 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	pointer-events: none;
}

#fixedTelNum {
	font-size: 2.6rem;
	color: #fbfaaf;
	font-style: italic;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	line-height: 1;
}

#fixedTelNum::before {
	content: "";
	width: 18px;
	height: 20px;
	background: url(../img/common/cta_tel.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

#telBtn .time {
	font-size: 1rem;
	display: block;
	color: #fbfaaf;
	text-align: center;
}

#mailBtn {
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.1);
}

#mailBtn a {
	height: 65px;
	padding: 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border-radius: 0 5px 5px 0;
	transition: all 0.3s ease-in-out 0s;
	background: #1f2964;
}

#mailBtn a:hover {
	opacity: 0.7;
}

#mailBtn img {
	width: 30px;
	height: auto;
}

/* メニュー中身 */
/* ----------------------------------- */

#mainMenu {
	height: calc(100vh - 140px);
	position: fixed;
	bottom: 100px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: #FFF;
	z-index: 9999;
	overflow: auto;
	opacity: 0;
	pointer-events: none;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	transition: all 0.3s ease-in-out 0s;
}

#mainMenu.active {
	opacity: 1;
	pointer-events: visible;
}

#container.active::after {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
}

#mainMenuIn {
	padding: 20px;
}

#mainMenuHome {
	padding-bottom: 10px;
	margin-bottom: 20px;
	font-size: 1.8rem;
	font-weight: 500;
	border-bottom: 1px solid #d1d1d1;
}

#mainMenuService {
	padding-bottom: 15px;
}

#mainMenu .serviceMenuList {
	gap: 10px 1%;
}

#mainMenu .serviceMenuList li {
	width: 49.5%;
}

#mainMenu .serviceMenuTit {
	font-size: 1.6rem;
}

.serviceMenuTit .detail {
	font-size: 1rem;
}

#mainMenuOther {
	display: flex;
	flex-wrap: wrap;
	gap: 1%;
}

#mainMenuOther dl {
	width: 49%;
}

#mainMenuOther ul {
	width: 49%;
}

#mainMenuOther li a,
#mainMenuOther dt a {
	padding: 8px 30px 8px 0;
	border-bottom: 1px solid #d1d1d1;
	display: block;
	background: url(../img/common/icon_arrow2.svg) right 10px center no-repeat;
}

#mainMenuOther dd:nth-of-type(1) {
	margin-top: 10px;
}

#mainMenuOther dd a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 7px 0;
	position: relative;
}

#mainMenuOther dd a::before {
	content: "";
	width: 10px;
	height: 1px;
	background: #CCC;
	display: inline-block;
}

#mainMenuClose {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 10px;
	right: 15px;
	cursor: pointer;
}

#mainMenuClose span {
	width: 40px;
	height: 2px;
	background: #000;
	position: absolute;
}

#mainMenuClose span:nth-of-type(1) {
	top: 13px;
	left: 0;
	transform: translateY(6px) rotate(-45deg);
}

#mainMenuClose span:nth-of-type(2) {
	top: 26px;
	left: 0;
	transform: translateY(-6px) rotate(45deg);
}

/* フリーワード検索 */
/* ----------------------------------- */
#menuSearch {
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 9999;
	opacity: 0;
	pointer-events: none;
}

#menuSearch.active {
	opacity: 1;	
	pointer-events: visible;
}

.searchBox {
	padding: 30px 80px;
	background: #0d499e;
	border-radius: 10px;
}

.searchTit {
	font-size: 2.4rem;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

.searchTxt {
	padding-bottom: 20px;
	font-size: 1.4rem;
	color: #FFF;
	text-align: center;
}

.freeword {
	margin-bottom: 30px;
	position: relative;
}

.freeword input {
	width: 100%;
	padding: 15px 50px 15px 15px;
	font-size: 1.8rem;
	background: #FFF;
	border-radius: 100vw;
	border: none;
}

.freeword button {
	padding: 10px 20px;
	background: #09bcff;
	border-radius: 100vw;
	color: #FFF;
	font-weight: bold;
	font-size: 1.8rem;
	position: absolute;
	top: 50%;
	right: 5px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
}

.freeword button:hover{
	opacity: 0.7;
}

.freeword button::before {
	content: "";
	width: 16px;
	height: 16px;
	background: url(../img/common/icon_freeword.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.popularWord {
	padding: 20px 40px;
	background: #edfaff;
	border-radius: 10px;
}

.popularWord h3 {
	padding-bottom: 20px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.popularWord ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 30px ;
}

.popularWord a {
	font-size: 1.8rem;
	font-weight: 400;
	color: #0d499e;
}

.popularWord a:hover {
	text-decoration: underline;
}

#menuSearchClose {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 10px;
	right: 15px;
	cursor: pointer;
}

#menuSearchClose span {
	width: 40px;
	height: 2px;
	background: #FFF;
	position: absolute;
}

#menuSearchClose span:nth-of-type(1) {
	top: 13px;
	left: 0;
	transform: translateY(6px) rotate(-45deg);
}

#menuSearchClose span:nth-of-type(2) {
	top: 26px;
	left: 0;
	transform: translateY(-6px) rotate(45deg);
}

/* title */
/* ----------------------------------- */
/* サークル白　白文字　英字 */
.tit1 {
	padding-left: 60px;
	font-size: 2rem;
	font-weight: bold;
	color: #FFF;
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 0px;
}

.tit1::before {
	content: "";
	width: 67px;
	height: 67px;
	background: url(../img/common/icon_tit1.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	top: -17px;
	left: 0px;
	z-index: 1;
}

.tit1::after {
	content: attr(data-en);
	margin-left: -60px;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 10rem;
	font-style: italic;
	font-weight: 500;
	display: inline-block;
}

/* サークル青　青文字 */
.tit2 {
	padding-bottom: 40px;
	font-size: 3.4rem;
	font-weight: bold;
	color: #0d499e;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}

.tit2::before {
	content: "";
	width: 65px;
	height: 65px;
	background: url(../img/common/icon_tit2.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

/* サークル白　白文字 */
.tit3 {
	padding-bottom: 40px;
	font-size: 3.4rem;
	font-weight: bold;
	color: #FFF;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}

.tit3::before {
	content: "";
	width: 65px;
	height: 65px;
	background: url(../img/common/icon_tit1.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

/* サークル青　青文字　英字付き */
.tit4 {
	padding-bottom: 40px;
	font-size: 2.4rem;
	font-weight: bold;
	color: #0d499e;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}

.tit4::before {
	content: "";
	width: 48px;
	height: 48px;
	background: url(../img/common/icon_tit2.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.tit4::after {
	width: 100%;
	content: attr(data-en);
	font-family: "Roboto Condensed", sans-serif;
	font-size: 8.6rem;
	color: #0d499e;
	font-weight: 400;
	display: block;
	line-height: 1;
	font-style: italic;
}

/* 黒文字 */
.tit5 {
	padding-bottom: 20px!important;
	font-size: 2.6rem!important;
	font-weight: bold!important;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	color: #333!important;
}

/* サークル白　青文字 */
.tit6 {
	padding-bottom: 40px;
	font-size: 3.4rem;
	font-weight: bold;
	color: #0d499e;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}

.tit6::before {
	content: "";
	width: 65px;
	height: 65px;
	background: url(../img/common/icon_tit3.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

/* 青文字 */
.tit7 {
	padding-bottom: 20px;
	font-size: 2.6rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	color: #0d499e;
}


/* btn */
/* ----------------------------------- */
.btn1 {
	width: max-content;
	padding: 20px 60px;
	background: #FFF;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #0d499e!important;
	border-radius: 100vw;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
	position: relative;
}

.btn1.movie {
	padding: 20px 60px 20px 80px;
}

#cta .btn1 {
	padding: 20px 30px;
	color: #1f2964!important;
}

.btn1::after {
	content: "";
	width: 29px;
	height: 10px;
	background: url(../img/common/icon_arrow2.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 5%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.btn1.movie::after {
	content: "";
	width: 30px;
	height: 22px;
	background: url(../img/common/icon_movie.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 10%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.btn1:hover {
	opacity: 0.7;
}

.btn1.faq::before {
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/common/cta_faq.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn1.faq::after {
	display: none;
}

.btn1.search::before {
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/common/cta_search.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn1.search::after {
	display: none;
}

.btn2 {
	width: max-content;
	padding: 20px 20px;
	background: #fbfaaf;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #1f2964!important;
	border-radius: 100vw;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
}

.btn2:hover {
	opacity: 0.7;
}

.btn2.mail::before {
	content: "";
	width: 18px;
	height: 13px;
	background: url(../img/common/cta_mail.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}


.btn2.line::before {
	content: "";
	width: 27px;
	height: 26px;
	background: url(../img/common/cta_line.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn3 {
	padding: 20px 90px 20px 40px;
	border-radius: 10px;
	border: 1px solid #0d499e;
	font-size: 1.8rem;
	font-weight: 500;
	background: url(../img/common/icon_arrow5.svg) right 20px center no-repeat;
	display: inline-block;
}

.btn3:hover {
	background: url(../img/common/icon_arrow5.svg) right 20px center no-repeat #0d499e;
	color: #FFF;
}

.btn4 {
	padding: 25px 70px 25px 20px;
	border-radius: 10px;
	font-size: 1.6rem;
	font-weight: 500;
	background: url(../img/common/icon_arrow2.svg) right 20px center no-repeat #e8f4fd;
	display: inline-block;
}

.btn4:hover {
	opacity: 0.7;
}

.btn5 {
	padding: 40px 90px 40px 40px;
	border-radius: 10px;
	font-size: 2.8rem;
	font-weight: 500;
	background: url(../img/common/icon_arrow3.svg) right 20px center no-repeat #FFF;
	display: inline-block;
}

.btn5:hover {
	background: url(../img/common/icon_arrow3.svg) right 20px center no-repeat #0d499e;
	color: #FFF;
}

.btn6 {
	width: max-content;
	padding: 30px 80px 30px 60px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 30px;
	font-size: 2rem;
	font-weight: 500;
	color: #FFF!important;
	border-radius: 100vw;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
	position: relative;
	background: #0d499e;
}

.btn6:hover {
	opacity: 0.7;
}

.btn6::after {
	content: "";
	width: 29px;
	height: 10px;
	background: url(../img/common/icon_arrow6.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 5%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.btn7 {
	width: max-content;
	height: 90px;
	padding: 10px 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	font-size: 1.6rem;
	font-weight: 500;
	color: #fbfaaf!important;
	border-radius: 100vw;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
	position: relative;
	background: #0d499e;
}

.btn7 .fd {
	font-size: 2.4rem;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.btn7 .fd::before {
	content: "";
	width: 25px;
	height: 16px;
	background: url(../img/common/icon_fd.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn7 .tel {
	font-size: 2.4rem;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.btn7 .tel::before {
	content: "";
	width: 17px;
	height: 20px;
	background: url(../img/common/icon_tel.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn7.mail {
	font-size: 1.8rem;
	font-weight: normal;
	display: flex;
	align-items: center;
	flex-direction: row;
	gap: 10px;
}

.btn7.mail::before {
	content: "";
	width: 21px;
	height: 16px;
	background: url(../img/common/icon_mail.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

.btn7:hover {
	opacity: 0.7;
}

/* table */
/* ----------------------------------- */
.table1 {
	width: 100%;
}

.table1 th {
	padding: 20px;
	font-size: 1.6rem;
	background: #e6ecf5;
	border: 1px solid #a6bedf;
	font-weight: 500;
	white-space: nowrap;
}

.table1 td {
	padding: 20px;
	font-size: 1.6rem;
	background: #FFF;
	border: 1px solid #a6bedf;
}

.table1 .border th,
.table1 .border td {
	border-top: 3px solid #a6bedf;
}

.table1.cen td {
	text-align: center;
}

.table2 {
	width: 100%;
}

.table2 th {
	padding: 20px;
	font-size: 2rem;
	background: #0d499e;
	border: 1px solid #0d499e;
	font-weight: 500;
	color: #FFF;
}

.table2 th.sub {
	padding: 20px;
	font-size: 1.6rem;
	background: #e6ecf5;
	border: 1px solid #a6bedf;
	font-weight: 500;
	color: #333;
}

.table2 td {
	padding: 20px;
	font-size: 1.6rem;
	background: #FFF;
	border: 1px solid #a6bedf;
}

/* テキスト */
/* ----------------------------------- */
.txt1 {
	font-size: 1.6rem;
	line-height: 2;
}

.txt2 {
	font-size: 1.8rem;
	line-height: 2;
}

/* テーブル */
/* ----------------------------------- */
.table1List dt {
	padding: 15px 20px;
	font-size: 2rem;
	font-weight: 500;
	background: #0d499e;
	color: #FFF;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 30px;
}

.table1List dt span {
	font-size: 1.4rem;
	font-weight: normal;
}

.table1List dd {
	width: 100%;
	padding-bottom: 60px;
}

.table1List .subTxt {
	font-size: 1.4rem;
	font-weight: normal;
}

.table1 {
	width: 100%;
	border: 1px solid #0d499e;
}

.table1 th {
	padding: 20px 30px;
	background: #e6ecf5;
	border: 1px solid #a6bedf;
	font-size: 1.6rem;
	font-weight: 500;
	vertical-align: middle;
	text-align: center;
}

.table1 td {
	padding: 20px 30px;
	background: #FFF;
	border: 1px solid #a6bedf;
	font-size: 1.6rem;
	vertical-align: middle;
}

.table1 td span {
	font-weight: 500;
}


.table1 .anno {
	color: #c62a1c;
	font-size: 1.6rem;
}

.table1 .cen {
	text-align: center;
}

.table2List dt {
	padding: 15px 20px;
	font-size: 2rem;
	font-weight: 500;
	background: #0d499e;
	color: #FFF;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 30px;
}

.table2List dd {
	width: 100%;
	padding-bottom: 60px;
}

.table2List dd:last-child {
	padding-bottom: 0;
}

.table2 {
	min-width: 100%;
	border: 1px solid #0d499e;
}

.table2 th {
	padding: 20px 30px;
	background: #0d499e;
	color: #FFF;
	border: 1px solid #a6bedf;
	font-size: 1.6rem;
	font-weight: 500;
	vertical-align: middle;
	text-align: center;
	white-space: nowrap;
}

.table2 td.name {
	color: #333;
	background: #c6d9f6;
	font-weight: bold;
	text-align: center;
}

.table2 td {
	padding: 20px 30px;
	background: #FFF;
	border: 1px solid #a6bedf;
	font-size: 1.6rem;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

.table2 td.none {
	background: #dfdfdf;
}


/* 共通レイアウト */
/* ----------------------------------- */
.layout1 {
	padding: 50px;
	margin-bottom: 50px;
	background: #FFF;
	border-radius: 10px;
}

.layout1 h2 {
	padding-bottom: 20px;
	font-size: 2.8rem;
	font-weight: 500;
	color: #0d499e;
}
.layout2 {
	padding: 50px;
	margin-bottom: 50px;
	background: #edf3fc;
	border-radius: 10px;
}

.layout1 h2 {
	padding-bottom: 20px;
	font-size: 2.8rem;
	font-weight: 500;
	color: #0d499e;
}



/* cta */
/* ----------------------------------- */
#ctaWrap {
	z-index: 1;
	margin-bottom: -200px;
	background: #FFF;
}

#cta {
	width: 96%;
	padding: 50px 0;
	margin: 0 auto;
	background: #1f2964;
	border-radius: 10px;
	border: 1px solid #FFF;
	position: relative;
	top: -200px;
}

#ctaIn {
	padding: 0 20px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
}

#ctaTit {
	padding-bottom: 20px;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
}

#ctaIntro {
	width: 49%;
}

#ctaTxt {
	padding-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2%;
	font-size: 1.6rem;
	color: #FFF;
}

#ctaTxt p {
	width: 100%;
}

#ctaImg {
	width: 25%;
}

#ctaImg img {
	width: 100%;
}

#relatedLink ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

#ctaMain {
	width: 49%;
	padding: 20px 30px;
	border: 1px solid #FFF;
	border-radius: 10px;
}

#ctaMain h3 {
	padding-bottom: 10px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
}

#ctaTel {
	font-size: 4.5rem;
	color: #fbfaaf;
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	line-height: 1;
}

#ctaTel a {
	color: #fbfaaf;
}

#ctaTel::before {
	content: "";
	width: 28px;
	height: 30px;
	background: url(../img/common/cta_tel.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

#ctaTime {
	padding-bottom: 20px;
	color: #FFF;
	text-align: center;
}

#ctaMainBtn {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.brCta {
	display: none;
}

/* footer */
/* ----------------------------------- */
footer {
	padding-top: 100px;
	background: #FFF;
	position: relative;
}

footer.ctaNone {
	padding-top: 100px;
}

#footerAddressWrap {
	padding-bottom: 80px;
}

#footerLogo {
	padding-bottom: 40px;
	text-align: center;
}

#footerLogo img {
	width: 370px;
	height: auto;
}

#footerAddressList {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 2%;
}

.footerAddress {
	width: 48%;
	padding: 20px;
	background: #edf3fc;
	border-radius: 10px;
}

.footerAddress .name {
	padding-bottom: 5px;
	font-size: 1.8rem;
	font-weight: bold;
}

.footerAddress .address {
	padding-bottom: 5px;
	font-size: 1.6rem;
}

.footerAddress .tel {
	display: flex;
	flex-wrap: wrap;
	gap: 0 20px;
	font-size: 1.6rem;
}

.freedial {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
}

.freedial::before {
	content: "";
	width: 25px;
	height: 16px;
	background: url(../img/common/icon_freedial.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

/* 古着 */
/* ----------------------------------- */
#oldClothesWrap {
	padding: 80px 0;
	background: #edf3fc;
}

#oldClothesTit {
	padding-bottom: 20px;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
}

#oldClothesList {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 2%;
}

.oldClothes {
	width: 32%;
	padding: 20px;
	background: #FFF;
	border-radius: 5px;
}

.oldClothes .shopName {
	padding-bottom: 10px;
	font-size: 1.6rem;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.oldClothes .shopInfo {
	display: flex;
	gap: 5%;
}

.oldClothes .shopLogo {
	width: 20%;
}

.oldClothes .shopLogo img {
	width: 100%;
	height: auto;
}

.oldClothes ul {
	width: 75%;
}

/* SSL */
/* ----------------------------------- */
#footerSsl {
	padding: 80px 0 100px;
	text-align: center;
}

.footerSslTxt {
	padding: 10px 0 40px 0;
	text-align: center;
}

#copyright {
	color: #666;
	text-align: center;
}

#pageTop {
	position: absolute;
	bottom: 100px;
	right: 20px;
}

/* 下層ページMV */
/* ----------------------------------- */
#underFvWrap {
	padding-top: 150px;
	height: 520px;
}

#underFv {
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: column;
	position: relative;
}

.underFvTit {
	font-size: 5.2rem;
	font-weight: bold;
	color: #FFF;
	letter-spacing: 0.1em;
	gap: 10px;
}

.underFvTit::before {
	content: attr(data-en);
	display: block;
	font-size: 2.2rem;
	font-weight: 400;
	color: #FFF;
	font-family: "Roboto Condensed", sans-serif;
	letter-spacing: 0.05em;
}

.underFvTit .subTitWrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.underFvTit .subTit {
	padding: 5px 20px;
	font-size: 2rem;
	border: 1px solid #FFF;
	display: inline-block;
}

/* アニメーション初期状態 */
.underFvTit {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.underFvTit::before {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s ease, transform 0.8s ease;
	transition-delay: 0.2s; /* 英字を少し遅らせる */
}

/* アニメーション表示状態 */
.underFvTit.active {
	opacity: 1;
	transform: translateY(0);
}

.underFvTit.active::before {
	opacity: 1;
	transform: translateY(0);
}

#license {
	padding-bottom: 100px;
}

/* ぱんくず */
/* ----------------------------------- */
#bc {
	padding: 50px 0;
	background: #edf3fc;
}

#bc ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: right;
	align-items: center;
	gap: 10px;
}

#bc li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

#bc li:not(:last-child)::after {
	content: "";
	width: 5px;
	height: 5px;
	background: #93afd6;
	display: inline-block;
	vertical-align: middle;
	border-radius: 100vh;
}

#bc li a {
	height: 30px;
	padding: 0 10px;
	background: #0d499e;
	border-radius: 100vw;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	color: #FFF;
}

#bc li a:hover {
	opacity: 0.7;
}

#bc li span {
	height: 30px;
	padding: 0 10px;
	background: #FFF;
	border-radius: 100vw;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}


/* 下層ページレイアウト */
/* ----------------------------------- */
/* キーワード */
#relatedKeywords {
	margin-bottom: 300px;
}

#relatedKeywordsIn {
	width: 800px;
	padding: 30px 50px;
	margin: 0 auto;
	background: #edfaff;
}

#relatedKeywords h2 {
	padding-bottom: 20px;
	font-size: 2rem;
	text-align: center;
}

#keywordList {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px 30px;
}

#keywordList a {
	font-size: 1.6rem;
	font-weight: 500;
	color: #0d499e;
}

#keywordList a:hover {
	text-decoration: underline;
}

/* 流れ1 */
/* ----------------------------------- */
#flowWrap {
	padding: 100px 0 20px;
	margin-bottom: 100px;
	background: #0d499e;
}

.flow {
	padding: 50px;
	margin-bottom: 80px;
	background: #265ca8;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 5%;
	position: relative;
}

.flow::after {
	content: "";
	width: 105px;
	height: 53px;
	background: url(../img/common/icon_flow.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	bottom: -53px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.flow:last-child:after {
	display: none;
}

.flow.imgLeft {
	flex-flow: row-reverse;
}

.flowTitWrap {
	width: 55%;
}

.flowTit {
	padding-bottom: 30px;
	font-size: 2.8rem;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	color: #FFF;
	font-feature-settings: "palt";
}

.flowTit .num {
	width: 110px;
	height: 110px;
	font-size: 3rem;
	font-weight: 500;
	font-family: "Roboto Condensed", sans-serif;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	border-radius: 100vw;
	border: 1px solid #FFF;
}

.flowTxt {
	font-size: 1.8rem;
	color: #FFF;
	line-height: 2;
}

.flowImg {
	width: 40%;
}

.flowImg img {
	width: 100%;
	height: auto;
}

.flowIntroTxt {
	padding-bottom: 30px;
	font-size: 1.6rem;
	color: #FFF;
}

.flowSubTxtWrap {
	margin-top: 20px;
	padding: 20px;
	border: 1px solid #FFF;
}

.flowSubTit {
	padding-bottom: 1em;
	font-size: 1.6rem;
	font-weight: bold;
	color: #FFF;
}

.flowSubTxt {
	color: #FFF;
}

/* 流れ2 */
/* ----------------------------------- */
#flow2Wrap {
	padding: 100px 0 40px;
	background: #edf3fc;
}

.flow2 {
	width: 93%;
	padding: 30px 30px 30px 100px;
	margin: 0 0 60px auto;
	background: #FFF;
	border: 1px solid #c0d1e9;
	border-radius: 20px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
}

.flow2::after {
	content: "";
	width: 50px;
	height: 24px;
	background: url(../img/common/icon_flow_w.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	bottom: -24px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.flow2:last-child::after {
	display: none;
}

.flow2TxtWrap {
	flex: 1;
}

.flow2Txt {
	font-size: 2.8rem;
	font-weight: 500;
	color: #0d499e;
}

.flow2 .step {
	width: 110px;
	height: 110px;
	background: #0d499e;
	font-size: 1.2rem;
	color: #FFF;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-family: "Roboto Condensed", sans-serif;
	border-radius: 100vw;
	position: absolute;
	top: 50%;
	left: -7%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.flow2 .step span {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1;
}

/* 流れ3 */
/* ----------------------------------- */
#flow3Wrap {
	padding-bottom: 100px;
	background: #edf3fc;
}

#flow3Wrap .txt2 {
	padding-bottom: 80px;
}

#flow3In {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 5%;
}

.flow3 {
	padding: 50px 20px 20px 20px;
	background: #FFF;
	border-radius: 10px;
	position: relative;
	border: 1px solid #c0d1e9;
}

.flow3:not(:last-child)::after {
	content: "";
	width: 29px;
	height: 58px;
	background: url(../img/common/icon_flow_side.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: -29px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.flow3 .step {
	width: 90px;
	height: 90px;
	background: #0d499e;
	font-size: 1.2rem;
	color: #FFF;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-family: "Roboto Condensed", sans-serif;
	border-radius: 100vw;
	position: absolute;
	top: -50px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.flow3 .step span {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1;
}

.flow3Img {
	padding-bottom: 20px;
}

.flow3Img img {
	width: 100%;
	height: auto;
}

.flow3Tit {
	font-size: 2.4rem;
	color: #0d499e;
	font-weight: 500;
	text-align: center;
}



/* FAQ */
/* ----------------------------------- */
#faq {
	padding: 0 0 100px;
}

#faqList li {
	border-bottom: 1px solid #cfcfcf;
}

#faqList li:first-child {
	border-top: 1px solid #cfcfcf;
}

.question {
	padding: 20px;
	font-size: 1.8rem;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	position: relative;
	cursor: pointer;
	transition: all 0.3s ease-in-out 0s;
}

.question:hover {
	color: #0d499e;
}

.question::after {
	content: "";
	width: 20px;
	height: 10px;
	background: url(../img/common/icon_accordion.svg) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	transform: rotate(180deg);
	transition: all 0.3s ease-in-out 0s;
}

.question.active::after {
	transform: rotate(0deg);
}

.question .icon {
	height: 55px;
	width: 55px;
	color: #0d499e;
	font-size: 2.4rem;
	font-family: "Roboto Condensed", sans-serif;
	font-style: italic;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.queDetail {
	flex: 1;
}

.answerWrap {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.5s ease-out;
}

.answerWrap.active {
	grid-template-rows: 1fr;
}

.answerIn {
	overflow: hidden;
}

.answer {
	padding: 20px;
	font-size: 1.6rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	background: #fff8f8;
}

.answer .icon {
	height: 55px;
	width: 55px;
	color: #e53d03;
	font-size: 2.4rem;
	font-family: "Roboto Condensed", sans-serif;
	font-style: italic;
	background: #FFF;
	border-radius: 100vw;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.ansDetail {
	flex: 1;
}

/* 会社案内リンク */
/* ----------------------------------- */
#aboutusLink {
	padding: 100px 0 300px;
	background: #FFF;
}

#aboutuslinkList {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px 3%;
}

#aboutuslinkList a {
	width: 100%;
	padding: 20px 60px 20px 20px;
	border: 1px solid #0d499e;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
	background: url(../img/common/icon_arrow1.svg) right 5% center no-repeat;
	background-size: 40px;
}

#aboutuslinkList a:hover,
#aboutuslinkList a.active {
	background: url(../img/common/icon_arrow1.svg) right 5% center no-repeat #edf3fc;
	background-size: 40px;
}

#aboutuslinkList img {
	width: 120px;
	height: auto;
}

.aboutuslinkTit {
	flex: 1;
	font-size: 2rem;
	font-weight: 500;
}

/* Page Navigation */
/* -------------------------------------------------- */
#pageNavWrap {
    margin-top: 10px;
    text-align: center;
}

#pager {
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

#pageNavWrap a, #pageNavWrap span {
    width: 60px;
    height: 60px;
    line-height: 40px;
    display: inline-block;
    color: #0051a8;
    background-color: #FFF;
    margin: 0 2px;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
	border-radius: 100vw;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
}

#pageNavWrap span.current,
#pageNavWrap a.next,
#pageNavWrap a.prev,
#pageNavWrap a:hover {
    color: #fff;
    background-color: #0051a8;
    transition: all 0.3s ease-in-out 0s;

}

#pageNavWrap span.dots {
    width: 1em;
    background-color: transparent;
	color: #000;
}

.next, .prev {
	transition: all 0.3s ease-in-out 0s;
}

.next:hover, .prev:hover {
	opacity: 0.7;
}

@media screen and (min-width: 1000px) and (max-width: 1100px) {
	.subMenu .inner {
		width: 100%;
		padding: 20px;
	}

	#ctaIn {
		width: 100%;
	}
}

/* -------------------------------------------------- */
/* TAB&SP */
/* -------------------------------------------------- */
@media screen and (max-width: 1024px) {
	.brTab {
		display: inline-block;
	}

	.inner {
		width: 92%;
	}

	/* header */
	/* ----------------------------------- */
	#gNav {
		display: none;
	}

	#headerWrap {
		width: 100%;
		padding: 10px 0;
		border-radius: 0;
	}

	#headerLogo {
		padding-bottom: 0;
	}

	#headerLogo img {
		width: 260px;
		height: auto;
	}

	/* menu */
	/* ----------------------------------- */
	#mainMenu {
		height: 100vh;
		width: 100vw;
		position: fixed;
		bottom: auto;
		left: 0;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
		background: #FFF;
		z-index: 9999;
		overflow: auto;
		opacity: 0;
		pointer-events: none;
		border-radius: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}

	#menuSearch {
		width: 100%;
	}

	#menuSearchClose {
		right: 5%;
	}

	/* title */
	/* ----------------------------------- */
	.tit1 {
		margin-left: 4%;
	}

	.tit1::after {
		font-size: 7rem;
	}

	/* btn */
	/* ----------------------------------- */
	.btn5 {
		padding: 40px 90px 40px 40px;
		border-radius: 10px;
		font-size: 2.4rem;
		font-weight: 500;
		background: url(../img/common/icon_arrow3.svg) right 20px center no-repeat #FFF;
		background-size: 50px;
		display: inline-block;
	}

	.btn6 {
		padding: 20px 80px 20px 60px;
	}


	/* footer */
	/* ----------------------------------- */

	/* cta */
	/* ----------------------------------- */
	#relatedLink li {
		width: 100%;
	}

	#ctaWrap {
		margin-bottom: -270px;
	}

	#cta {
		top: -270px;
	}

	#ctaMainBtn {
		flex-direction: column;
	}

	#ctaMainBtn li {
		width: 100%;
	}

	#cta .btn1 {
		width: 100%;
		padding: 20px 30px;
		color: #1f2964!important;
	}

	#cta .btn2 {
		width: 100%;
	}

	#ctaTel {
		font-size: 5.2vw;
	}

	.brCta {
		display: inline-block;
	}

	/* 下層MV */
	/* ----------------------------------- */
	#underFvWrap {
		padding-top: 85px;
		height: 400px;
	}

	.underFvTit {
		font-size: 4rem;
	}

	/* keyword */
	/* ----------------------------------- */
	#relatedKeywords {
		margin-bottom: 360px;
	}

	#relatedKeywordsIn {
		width: 92%;
		padding: 30px 50px;
		margin: 0 auto;
		background: #edfaff;
	}

	/* 流れ */
	/* ----------------------------------- */
	
	.flow {
		padding: 50px;
		margin-bottom: 80px;
		background: #265ca8;
		border-radius: 10px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		gap: 20px 5%;
		position: relative;
	}

	.flow3Tit {
		font-size: 2rem;
	}


	#flow3Wrap {
		padding-bottom: 80px;
		background: #edf3fc;
	}

	#flow3In {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 80px 5%;
	}

	.flow3:not(:last-child)::after {
		content: "";
		width: 50px;
		height: 24px;
		background: url(../img/common/icon_flow_w.svg) 0 0 no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
		position: absolute;
		top: auto;
		right: auto;
		bottom: -24px;
		left: 50%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}

	/* 会社案内リンク */
	/* ----------------------------------- */
	.aboutuslinkTit {
		font-size: 1.6rem;
	}

	#aboutuslinkList img {
		width: 100px;
		height: auto;
	}
	
}


/* -------------------------------------------------- */
/* TAB(調整) */
/* -------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {

}
/* -------------------------------------------------- */
/* SP(調整) */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
	.brSp {
		display: inline-block;
	}
	
	.brPc {
		display: none;
	}
	/* header */
	/* ----------------------------------- */
	#headerLogo img {
		width: 200px;
		height: auto;
	}

	#mainNav {
		width: 100%;
		bottom: 0;
		left: 0;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
		z-index: 9999;
	}

	#fixedTelNum,
	#telBtn .time {
		display: none;
	}

	#menuBtn {
		width: 55%;
		height: 50px;
		padding: 0 10px;
		gap: 10px;
		border-radius: 0;
	}

	#searchBtn {
		width: 15%;
		height: 50px;
		padding: 0;
	}

	#telBtn {
		width: 15%;
		height: 50px;
		padding: 0;
	}

	#telBtn a {
		pointer-events: visible;
		padding: 0;
	}

	#telBtn a::before {
		content: "";
		width: 20px;
		height: 23px;
		background: url(../img/common/cta_tel.svg) 0 0 no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
	}

	#mailBtn {
		width: 15%;
		height: 50px;
	}

	#mailBtn a {
		width: 100%;
		height: 100%;
		padding: 0;
		border-radius: 0;
	}

	/* menu */
	#mainMenu .serviceMenuList li {
		width: 100%;
	}

	.serviceMenuList li a {
		border-radius: 10px;
	}

	#mainMenuOther dl {
		width: 100%;
	}

	#mainMenuOther ul {
		width: 100%;
	}

	.serviceMenuTit {
		width: calc(100% - 120px);
		font-size: 1.4rem;
	}

	#menuSearchClose {
		top: -50px;
		right: 5%;
	}

	/* title */
	/* ----------------------------------- */
	.tit1::after {
		font-size: 5rem;
		padding-top: 10px;
	}

	.tit2 {
		padding-bottom: 20px;
		font-size: 2.4rem;
		flex-wrap: nowrap;
		gap: 10px;
		line-height: 1.2;
	}

	.tit2::before {
		content: "";
		width: 50px;
		height: 50px;
		background: url(../img/common/icon_tit2.svg) 0 0 no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
		flex: 0 0 50px;
	}

	.tit2 span {
		flex: 1;
	}

	.tit3 {
		padding-bottom: 20px;
		font-size: 2.4rem;
		font-weight: bold;
		color: #FFF;
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		gap: 10px;
		line-height: 1.2;
	}

	.tit3::before {
		content: "";
		width: 50px;
		height: 50px;
		background: url(../img/common/icon_tit1.svg) 0 0 no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
		flex: 0 0 50px;
	}

	.tit3 span {
		flex: 1;
	}

	.tit4 {
		padding-bottom: 20px;
		font-size: 2rem;
		gap: 10px;
	}

	.tit4::after {
		width: 100%;
		content: attr(data-en);
		font-family: "Roboto Condensed", sans-serif;
		font-size: 6rem;
		color: #0d499e;
		font-weight: 400;
		display: block;
		line-height: 1;
		font-style: italic;
	}

	.tit5 {
		font-size: 2.4rem !important;
	}

	.tit6 {
		padding-bottom: 20px;
		font-size: 2.4rem;
		gap: 10px;
		flex-wrap: nowrap;
	}

	.tit6::before {
		width: 50px;
		height: 50px;
		flex: 0 0 50px
	}

	/* txt */
	/* ----------------------------------- */
	.txt1 {
		font-size: 1.5rem;
		line-height: 1.7;
	}

	.txt2 {
		font-size: 1.6rem;
		line-height: 1.8;
	}

	/* layout */
	/* ----------------------------------- */
	.layout1 {
		padding: 20px;
		margin-bottom: 30px;
		background: #FFF;
		border-radius: 10px;
	}

	.layout1 h2 {
		padding-bottom: 10px;
		font-size: 2.4rem;
		font-weight: 500;
		color: #0d499e;
	}

	.layout2 {
		padding: 20px;
		margin-bottom: 50px;
		background: #edf3fc;
		border-radius: 10px;
	}

	/* btn */
	/* ----------------------------------- */
	.btn3 {
		padding: 15px 60px 15px 30px;
		border-radius: 10px;
		border: 1px solid #0d499e;
		font-size: 1.8rem;
		font-weight: 500;
		background: url(../img/common/icon_arrow5.svg) right 20px center no-repeat;
		background-size: 30px;
		display: inline-block;
	}

	.btn6 {
		padding: 20px 60px 20px 40px;
		gap: 30px;
		font-size: 1.8rem;
	}

	/* footer */
	/* ----------------------------------- */
	footer {
		padding-top: 80px;
	}

	#footerLogo {
		padding-bottom: 20px;
	}

	#footerLogo img {
		width: 280px;
		height: auto;
	}

	.footerAddress {
		width: 100%;
	}

	#footerAddressList {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 2%;
	}

	.footerAddress .name {
		padding-bottom: 5px;
		font-size: 1.6rem;
		font-weight: bold;
	}

	.footerAddress .address {
		padding-bottom: 5px;
		font-size: 1.4rem;
	}

	.footerAddress .tel {
		display: flex;
		flex-wrap: wrap;
		gap: 0 20px;
		font-size: 1.4rem;
	}

	.oldClothes {
		width: 100%;
		padding: 20px;
		background: #FFF;
		border-radius: 10px;
	}

	#pageTop {
		width: 50px;
	}

	#pageTop img {
		width: 100%;
	}

	.footerSslTxt {
		padding: 10px 4% 40px;
		text-align: center;
	}

	/* search */
	/* ----------------------------------- */
	.searchBox {
		padding: 20px;
	}

	.searchTit {
		font-size: 2rem;
	}

	.freeword input {
		font-size: 1.5rem;
	}

	.freeword button {
		padding: 10px;
		font-size: 1.2rem;
	}

	.popularWord {
		padding: 20px;
	}

	.popularWord h3 {
		font-size: 1.6rem;
	}

	.popularWord a {
		font-size: 1.4rem;
	}

	.popularWord ul {
		gap: 10px;
	}

	/* cta */
	/* ----------------------------------- */
	#cta {
		width: 92%;
		padding: 20px;
	}

	#ctaTit {
		font-size: 2rem;
		text-align: left;
	}

	#ctaIn {
		width: 100%!important;
		padding: 0;
		margin: 0 auto;
		flex-direction: column;
		gap: 30px;
	}

	#ctaIntro {
		width: 100%;
	}

	#ctaMain {
		width: 100%;
		padding: 20px;
		border: 1px solid #FFF;
		border-radius: 10px;
	}

	.brCta {
		display: none;
	}

	footer.ctaNone {
		padding-top: 80px;
	}

	/* 下層MV */
	/* ----------------------------------- */
	#underFvWrap {
		padding-top: 0;
		margin-top: 70px;
		height: 220px;
	}

	.underFvTit {
		font-size: 2.8rem;
	}

	.underFvTit::before {
		font-size: 1.8rem;
	}

	#bc {
		padding: 20px 0;
	}

	/* faq */
	/* ----------------------------------- */
	#faq {
		padding: 0 0 80px;
	}

	/* keyword */
	/* ----------------------------------- */
	#relatedKeywords {
		margin-bottom: 350px;
	}

	#relatedKeywordsIn {
		width: 92%;
		padding: 30px 20px;
		margin: 0 auto;
		margin-bottom: 350px;
		background: #edfaff;
	}

	/* 流れ */
	/* ----------------------------------- */
	.flow {
		padding: 20px;
		margin-bottom: 50px;
		background: #265ca8;
		border-radius: 10px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		gap: 20px 5%;
		position: relative;
	}

	.flowTxt {
		font-size: 1.6rem;
		line-height: 1.8;
	}

	.flowTit .num {
		width: 80px;
		height: 80px;
		font-size: 2.4rem;
	}

	.flowTit {
		flex-direction: column;
		align-items: center;
		padding-bottom: 20px;
		font-size: 2.4rem;
		text-align: center;
		gap: 15px;
	}

	#flowWrap {
		padding: 80px 0 20px;
		margin-bottom: 80px;
	}

	#flow2Wrap {
		padding: 80px 0 20px;
	}

	.flow::after {
		content: "";
		width: 80px;
		height: 53px;
		background: url(../img/common/icon_flow.svg) 0 0 no-repeat;
		background-size: contain;
		display: inline-block;
		vertical-align: middle;
		position: absolute;
		bottom: -53px;
		left: 50%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}

	.flowTitWrap {
		width: 100%;
	}

	.flowImg {
		width: 100%;
	}

	.flowImg img {
		width: 100%;
	}

	.flow.imgLeft {
		flex-flow: column;
	}

	.flow2 {
		width: 100%;
		padding: 20px;
		margin: 0 0 50px 0;
		background: #FFF;
		border: 1px solid #c0d1e9;
		border-radius: 20px;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		flex-direction: column;
		gap: 20px;
	}

	.flow2 .step {
		position: static;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}

	.flow2 .step span {
		font-size: 3rem;
		font-weight: 500;
		line-height: 1;
	}

	.flow2Img {
		width: 100%;
	}

	.flow2Img img {
		width: 100%;
	}

	.flow2Txt {
		font-size: 2.4rem;
	}

	/* bc */
	/* ----------------------------------- */
	#bc ul {
		justify-content: left;
		flex-wrap: nowrap;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	#bc li {
		flex: 0 0 auto;
	}

	/* table */
	/* ----------------------------------- */
	.table1List dd {
		width: 100%;
		padding-bottom: 0;
		margin-bottom: 30px;
	}

	.table1 {
		width: 1000px;
	}

	.table1.line1 td {
		padding: 50px 30px;
	}

	#license {
		padding-bottom: 80px;
	}

	/* faq */
	/* ----------------------------------- */
	.question {
		padding: 20px 30px 20px 0;
		font-size: 1.6rem;
		gap: 20px;
	}

	.question .icon {
		height: auto;
		width: auto;
	}

	.question::after {
		right: 0px;
	}

	.answer {
		padding: 10px;
		font-size: 1.4rem;
		gap: 10px;
	}

	.answer .icon {
		height: 40px;
		width: 40px;
	}

	/* 会社案内リンク */
	/* ----------------------------------- */
	
	#aboutusLink {
		padding: 80px 0 300px;
		background: #FFF;
	}

	#aboutuslinkList {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 10px 3%;
	}

	#aboutuslinkList a {
		width: 100%;
		padding: 10px 40px 10px 10px;
		background: url(../img/common/icon_arrow1.svg) right 5% center no-repeat;
		background-size: 30px;
	}

	#aboutuslinkList a:hover, #aboutuslinkList a.active {
		background-size: 30px;
	}

	#aboutuslinkList img {
		width: 80px;
		height: auto;
	}

	.aboutuslinkTit {
		font-size: 1.6rem;
	}

}

@media screen and (max-width: 374px) {
	html {
		font-size: 2.667vw;
	}
}
