@charset "UTF-8";

:root {
      --easing: cubic-bezier(0.2, 1, 0.2, 1);
      --transition: 0.8s var(--easing);
      --color-base: #fff;
      --color-gray: #ddd;
      --color-theme: #000;
      --color-theme-darken: #f12617;
      --box-shadow: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05), -0.8rem -0.8rem 1.2rem #fff;
      --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, 0.08), -1rem -1rem 1.5rem #fff;
      --box-shadow-inset: inset 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05), inset -0.8rem -0.8rem 1.2rem #fff;
      --box-shadow-dark: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.1), -0.8rem -0.8rem 1.2rem rgba(#fff, 0.2);
}
html{
	margin: 0;
	padding: 0;
}
body{
      font-family: 'Noto Sans JP', system-ui;
      font-size: 14px;
      letter-spacing: 0.08rem;
      line-height: 1.8;
      height: 100%;
      word-break: break-word;
      color: #333;
      background-color: var(--color-base);
      -webkit-appearance: none;
      /* -webkit-tap-highlight-color: transparent; */
      overflow-x:hidden;
      position: relative;
    }
#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
}

    *,
    *::before,
    *::after {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
    }

    ::-moz-selection {
      color: #fff;
      background: var(--color-theme);
    }

    ::selection {
      color: #fff;
      background: var(--color-theme);
    }

	/* ::-webkit-scrollbar {
	  display: none;
	   -webkit-appearance: none;
	} */

	.loading {
	  position: fixed;
	  inset: 0;
	  z-index: 30;
	  height: 100svh;
	  background-color: #123269;
	}

	.loading__inner {
	  width: 100%;
	  height: inherit;
	  display: grid;
	  place-content: center;
	  row-gap: 10px;

	  
	}

	.loading__text {
	  font-size: max(16px, 1rem);
	  /* font-size: clamp(14px, 1vw, 18px); */
	  font-weight: 500;
	  letter-spacing: 0.2em;
	  text-align: center;
	  color: #fff;
	  font-family: 'Shippori Mincho', serif;
	  opacity: 0;
	}

	.loading__logo {
	  margin: 0 auto;
	  width: min(200px, 100%);
	  opacity: 0;
	}

	/* .loading__logo img {
	filter: invert(100%) sepia(5%) saturate(7500%) hue-rotate(293deg) brightness(109%) contrast(99%);
	} */
	
	#container {
	  min-height: 100svh;
	  /* display: grid;
	  place-items: center;
	  font-size: max(22px, 3vw); */
	  z-index: 5;
	}
	.wrapper {
		width: 100%;
	}
	
	a {text-decoration: none;}

/* hamburger
.hamburger {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 20;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 50px;
    height: 50px;
    border: none;
    border-radius: 100vmax;
    background-color: #000;
    cursor: pointer;
}
.hamburger::before, .hamburger::after, .hamburger .hamburgerLine {
    position: absolute;
    display: block;
    width: 50%;
    height: 1px;
    border-radius: 100vmax;
    background-color: white;
}
.hamburger::before, .hamburger::after {
    content: "";
}
.hamburger::before {
    transform: translateY(-8px);
}
.hamburger::after {
    transform: translateY(8px);
}
.hamburger[aria-expanded="true"] .hamburgerLine {
    opacity: 0;
}
.hamburger[aria-expanded="true"]::before {
    transform: rotate(30deg);
}
.hamburger[aria-expanded="true"]::after {
    transform: rotate(-30deg);
}
.nav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.nav[aria-hidden="true"] {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}
.nav[aria-hidden="false"] {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}
.menu {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2em;
    width: 100%;
    height: 100%;
    background: #000;
    color: white;
    font-size: max(16px, 1vw);
	font-weight: 500;
	letter-spacing: 0.2em;
}
.menu li {
    list-style: none;
}
.menu li a{
    color: #FFF;
}
 */


header {
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	aspect-ratio: 49 / 8;
	z-index: 20;
}

header h1 {
	position: relative;
	left: 2.5%;
	width: 200px;
	aspect-ratio: 49 / 8;
	top: 20px;
}

.lang {
	position: absolute;
	top: 20px;
	right: 2.5%;
}

header h1 a {
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position:relative;
	width: 200px;
	aspect-ratio: 49 / 8;
	background-size: contain;
	margin: 0 auto 0;
	box-sizing: border-box;
	background-image: url(../../images/ordermade/logoW.svg);
	transition: background-image .3s;
}

header.headerColorScroll h1 a {
	background-image: url(../../images/ordermade/logo.svg);
	transition: background-image .3s;
}

.contactMail header h1 a {
	background-image: url(../../images/ordermade/logo.svg);
	transition: background-image .3s;
}

.main {
    /* font-size: max(14px, 1vw);
	font-weight: 500;
	letter-spacing: 0.2em; */
	position: relative;
}

.ggmap {
	position: relative;
	width: 100%;
	padding-top: 30%;
	height: 0;
	overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

footer {
	position: relative;
	width: 100%;
	padding: 80px 55px 160px;
	box-sizing:  border-box;
	background-color: #123269;
}

.contactMail footer {
	padding: 80px 55px 80px;
}

.footerCompany dl { box-sizing: border-box; text-align: center; margin-bottom: 20px;}
.footerCompany dt {
	width: 242px;
	height: 33px;
	margin: 0px auto 5px;
	box-sizing: border-box;
}
.footerCompany dt a{
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	background-image: url(../../images/ordermade/logoW.svg);
	background-repeat: no-repeat;
	width: 242px;
	height: 33px;
}
.footerCompany dd {text-align: center; font-size: 11px; color: #FFF;}

.footerCompany ul {text-align: center;}
.footerCompany ul li {display: inline-block; padding: 0 10px 20px; box-sizing: border-box; color: #FFF; font-weight: 700;}
.footerCompany ul li a {color: #FFF; font-family: "Roboto", sans-serif;}
.footerCompany ul li:nth-of-type(1) {font-size: 25px;}
.footerCompany ul li:nth-of-type(2) {font-size: 20px;}
.footerCompany ul li img {vertical-align: middle;}
.footerCompany ul li:nth-of-type(1) .f10 {font-size: 10px;}


/* copyright
----------------------------------------------- */
.copyright {
	font-size: 10px;
	text-align: center;
	padding: 10px 0;
	position: relative;
	box-sizing: border-box;
	color: #FFF;
	font-family: "Roboto", sans-serif;
}

@media all and (max-width: 960px) {
	.footerCompany ul {margin-bottom: 20px;}
	.footerCompany ul li {display: block; padding: 0 10px 2px; line-height: 1.1;}
	
	.ggmap {
	height: 200px;
	}
}
@media all and (max-width: 428px) {
	footer {
		padding: 80px 55px 120px;
	}
	
	.contactMail footer {
		padding: 80px 55px 80px;
	}
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100vh;
    pointer-events: none;
}



/* main */
.container{
    width: 100%;
    height: auto;
    padding: 0px;
}
.box {
	padding: 80px 0;
	position: relative;
}
.boxL {
	padding: 80px 0 80px 2.5%;
	position: relative;
	box-sizing:  border-box;
}
.boxC {
	padding: 80px 2.5%;
	position: relative;
	box-sizing:  border-box;
}
.boxR {
	padding: 80px 0 80px 2.5%;
	position: relative;
	box-sizing:  border-box;
}

.serviceLp001,
.serviceLp003,
.serviceLp005,
.serviceLp002,
.serviceLp004,
.serviceLp006 {position: relative; box-sizing: border-box;}
/* .serviceLp001 {padding: 0 0 100px;} */
.serviceLp002,
.serviceLp004 {padding: 100px 0 100px;}
.serviceLp003 {padding: 100px 0 0;}
.serviceLp002::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /* background-color: #eee; */
    background-repeat: no-repeat;
    background-size: cover;
    /* opacity: 0.6; */
	background-position: center center;
    background-image: url(../../images/ordermade/23606918_m.jpg);
    /* transform: skewY(10deg); */
    clip-path: polygon(0 0, 100% 150px, 100% 100%, 0 calc(100% - 150px));
    z-index: -1;
    box-sizing: border-box;
}

.serviceLp004::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #eee;
    clip-path: polygon(0 0, 100% 150px, 100% 100%, 0 calc(100% - 150px));
    /* transform: skewY(10deg); */
    z-index: -1;
}

@media screen and (orientation: portrait) and (min-width: 428px) {
.serviceLp002,
.serviceLp004 {padding: 25px 0 25px;}
.serviceLp003 {padding: 25px 0 0;}

	.serviceLp002::before {
	clip-path: polygon(0 0, 100% 100px, 100% 100%, 0 calc(100% - 100px));
	background-image: url(../../images/ordermade/23606918_m--h.jpg);
	}
	.serviceLp004::before {
	clip-path: polygon(0 0, 100% 100px, 100% 100%, 0 calc(100% - 100px));
	}
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation:portrait) {
.serviceLp002,
.serviceLp004 {padding: 25px 0 25px;}
.serviceLp003 {padding: 25px 0 0;}

	.serviceLp002::before {
	clip-path: polygon(0 0, 100% 100px, 100% 100%, 0 calc(100% - 100px));
	background-image: url(../../images/ordermade/23606918_m--h.jpg);
	}
	.serviceLp004::before {
	clip-path: polygon(0 0, 100% 100px, 100% 100%, 0 calc(100% - 100px));
	}
}

.serviceLp006 {background-color: #f1f1f1;}


.bgTtl {
	position: absolute;
	top: -5vw;
	right: 0;
	font-size: clamp(150px, 15vw, 200px);
	font-family: "Anton", sans-serif;
	line-height: 1.0;
	/* color: rgba(0,160,233,0.5);
	z-index: 5; */
	z-index: 10;
	font-weight: 400;
	/* text-shadow: 2px 2px 1px #000,
             -2px 2px 1px #000,
             2px -2px 1px #000,
             -2px -2px 1px #000; */
    -webkit-text-stroke: 2px rgba(0,160,233,0.5);
 -webkit-text-fill-color:transparent;
 color: transparent;
}

.serviceLp002 .bgTtl,
.serviceLp004 .bgTtl{top: -7vw;}
.serviceLp003 .bgTtl{top: -7vw; left: 0; right: inherit;}

@media all and (max-width: 960px) {
.bgTtl {
	top:0;
	font-size: clamp(130px, 13vw, 150px);
}

.serviceLp002 .bgTtl,
.serviceLp004 .bgTtl,
.serviceLp003 .bgTtl{ top: -5vw;}
}

@media all and (max-width: 768px) {
.serviceLp001,
.serviceLp003,
.serviceLp005 {padding-bottom: 0px;}
.serviceLp002,
.serviceLp004,
.serviceLp006 {padding-bottom: 0px;}

.bgTtl {
	top:2vw;
	font-size: clamp(100px, 10vw, 130px);
}

.serviceLp002 .bgTtl,
.serviceLp004 .bgTtl,
.serviceLp003 .bgTtl{ top: -2vw;}
}

@media all and (max-width: 428px) {
.bgTtl {
	top:4vw;
	font-size: clamp(80px, 8vw, 100px);
}

.serviceLp002 .bgTtl,
.serviceLp004 .bgTtl,
.serviceLp003 .bgTtl{ top: 0vw;}

}

.title{
	font-family: 'Shippori Mincho', serif;
	font-size: clamp(25px, 2.5vw, 35px);
	margin-bottom: 40px;
	font-weight: 700;
	line-height: 1.4;
	color: #00a0e9;
	text-align: center;
}

.serviceLp002 .title {color: #fff;}
.cards{
    width: 100%;
    max-width: 1024px;
    display: flex;
    justify-content: space-between;
    margin: 80px auto 0;
}
.card{
    width: 48%;
    border-radius: 10px;
    background-color: #fff;
    padding: 20px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing:  border-box;
}
.heading{
    font-size: 32px;
    color: #3CB371;
    text-align: center;
}
.text{
    font-size: 18px;
    line-height: 1.8;
    font-weight: 500;
    margin: 20px 0;
}
.btn{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 200px;
    padding: 10px;
    box-sizing:  border-box;
    background-color: #3CB371;
    color: white;
    margin: 20px auto 0;
    font-size: 18px;
    border-radius: 4px;
    margin-top: auto;
}
.media{
    width: 100%;
    max-width: 1024px;
    height: auto;
    padding: 20px;
    box-sizing:  border-box;
    background-color: #fff;
    margin: 80px auto 0;
    border-radius: 10px;
    display: flex;
}
.media__img{
    display: block;
    width: 50%;
    height: auto;
    object-fit:cover;
}
.media__text{
    width: 50%;
    padding: 10px;
    box-sizing:  border-box;
    line-height: 2;
}
.btns{
    max-width: 1024px;
    display: flex;
    gap:40px;
    margin: 80px auto 0;
    justify-content: center;
}
.btn--larger{
    width: 100%;
    padding: 20px;
    box-sizing:  border-box;
    max-width: initial;
}
.items{
    max-width: 1024px;
    width: 100%;
    margin: 80px auto;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.items .item:nth-of-type(odd){
    background-color: #3CB371;
}
.items .item:nth-of-type(even){
    background-color: #fff;
    color: #3CB371;
}
.item{
    width: 100%;
    color: white;
    border-radius: 5px;
    height: auto;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 18px;
}

section img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* section */
.firstTxtBox {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
}
.firstTxtBox figure{
	width: 60%;
	aspect-ratio: 5 / 3;
	overflow: hidden;
	position: relative;
	border-radius: 20px 0 0 20px;
}

.firstTxtBox div {
	width: 40%;
	display: flex;
	align-items: center;
	flex-wrap:wrap;
}


.firstTxtBox dl {
	background-color: rgba(255,255,255,1.0);
	padding: 30px 30px 30px 0;
	box-sizing: border-box;
	position: relative;
	left: 20%;
}

.firstTxtBox dt {
	font-family: 'Shippori Mincho', serif;
	font-size: clamp(23px, 2.3vw, 30px);
	margin-bottom: 20px;
	font-weight: 700;
	line-height: 1.4;
	color: #00a0e9;
}
.firstTxtBox dd {
	text-align: justify;
	text-justify: inter-ideograph;
}


@media all and (max-width: 1280px) {
	.firstTxtBox figure{
		aspect-ratio: 4 / 3;
	}
}
@media all and (max-width: 960px) {
	.firstTxtBox figure{
		width: 80%;
		aspect-ratio: 5 / 3;
	}

	.firstTxtBox div {
		width: 80%;
		display: flex;
		align-items: center;
	}

	.firstTxtBox dl {
		background-color: rgba(255,255,255,1.0);
		padding: 30px 30px 0px 0;
		box-sizing: border-box;
		position: relative;
		left: -20%;
		top: -40px;
	}

}
@media all and (max-width: 428px) {
	.firstTxtBox div {
		width: 90%;
	}
	.firstTxtBox dl {
		top: -20px;
		left: -10%;
	}

}


.serviceList {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.serviceList li {
	width: calc(100% / 3);
	max-width: 400px;
	padding: 20px;
	box-sizing: border-box;
}

@media all and (max-width: 960px) {
	.serviceList li {
		padding: 0 10px;
	}
	.serviceLp001 .boxC {padding: 0 2.5% 80px;}
}
@media all and (max-width: 768px) {
	.serviceList li {
		padding: 0 5px;
	}
}
@media all and (max-width: 428px) {
	.serviceList li {
		padding: 0 2px;
	}
}

.serviceList li figure{
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}


.bgOpacigy{
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-color: rgba(18,50,105,0.5);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}

.serviceList li figure p {text-align: center;}
.number {
	line-height: 1.0;
	display: inline-block;
	margin-bottom: 15px;
	font-family: "Roboto", sans-serif;
	letter-spacing: 0.09rem;
	padding: 5px;
	box-sizing: border-box;
	font-size: clamp(10px, 1.0vw, 120px);
	position: relative;
}
.number:before {
	position: absolute;
	bottom: -5px;
	left:0;
	right:0;
	margin: auto;
	background-color: #FFF;
	height: 1px;
	width: 20px;
	content:"";


}
.productsText {
	font-size: clamp(20px, 2vw, 25px);
	font-family: 'Shippori Mincho', serif;
	line-height: 1.0;
	display: inline-block;
	font-weight: 700;
}

.productsText span {
	font-size: clamp(13px, 2vw, 15px);
	display: inline-block;
}


/* 02 */
.flowLpBox {
	display: flex;
	/* justify-content: center;
	flex-wrap: wrap; */
	justify-content: space-around;
}
.flowLpBox li {
	width: calc(100% / 5);
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
  display: flex;
  flex-direction: column;
}

.flowLpBox dl {
	background-color: #FFF;
	border-radius: 10px;
	padding: 5px 20px 10px;
	box-sizing: border-box;
	flex-grow: 1;
}

.flowLpBox dt {
	font-size: clamp(18px, 1.8vw, 25px);
	font-family: 'Shippori Mincho', serif;
	line-height: 1.0;
	color: #00a0e9;
	position: relative;
	font-weight: 700;
}

.flowLpBox dt span{
	display: inline-block;
	background-color: #00a0e9;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	color: #FFF;
	font-family: "Roboto", sans-serif;
	font-size: 30px;
	line-height: 1.0;
	font-weight: 700;
	padding: 5px 0 0;
	margin-bottom: 5px;
	position: absolute;
	top: -25px;
	left: 50%;
	margin-left: -20px;
	font-size: 30px;
}
.flowLpBox dt figure{display: block;}

.flowLpBox dt img {
	filter: invert(15%) sepia(34%) saturate(3966%) hue-rotate(204deg) brightness(90%) contrast(93%);
	width: 60%;
	margin: 0 auto;
}
.flowLpBox dd p{
	text-align: left;
	position: relative;
	padding-left: 15px;
	box-sizing: border-box;
	margin-bottom: 10px;
}
.flowLpBox dd p:before{
	position: absolute;
	top:4px;
	left:0;
	content:"●";
	font-size: 10px;
}

.arrow {
  position: relative;
  display: inline-block;
}

.arrow::before,
.arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: -18px;
  width: 30px;
  height: 4px;
  border-radius: 9999px;
  background-color: #aaa;
  transform-origin: calc(100% - 2px) 50%;
}

.arrow::before {
  transform: rotate(45deg);
}

.arrow::after {
  transform: rotate(-45deg);
}

@media all and (max-width: 960px) {
	.flowLpBox {
		flex-wrap: wrap;
		/* justify-content: space-around; */
	}
	.flowLpBox li {
		width: 100%;
		text-align: left;
	}


	.flowLpBox dl {
		background-color: #FFF;
		border-radius: 10px;
		padding: 20px 20px 10px;
		box-sizing: border-box;
		flex-grow: 1;
		display: flex;
	}

	.flowLpBox dt{
		width: 180px;
	}
	.flowLpBox dd{
		width: calc(100% - 180px);
	}
	.flowLpBox dt br {display: none;}
	.flowLpBox dt span{
		width: 30px;
		height: 30px;
		padding: 5px 0 0;
		margin-bottom: 5px;
		box-sizing:  border-box;
		position: inherit;
		top: inherit;
		left: inherit;
		margin-left: inherit;
		font-size: 20px;
		margin-right: 5px;
		text-align: center;
	}
	.flowLpBox dt figure{text-align: center;}
	.flowLpBox dt img {width: 50%;}


	.arrow::before,
	.arrow::after {
	  top: inherit;
	  right: inherit;
	  width: 4px;
	  height: 30px;
	  left: calc(50% - 2px);
	  bottom: -18px;
	  transform-origin: 50% calc(100% - 2px);
	}

}
@media all and (max-width: 428px) {
	.flowLpBox dl {
		flex-wrap: wrap;
	}

	.flowLpBox dt{
		width: 100%;
	}
	.flowLpBox dd{
		width: 100%;
	}
}

/* タブ */
.tabBox .tabArea {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 40px;
	font-size: clamp(18px, 1.8vw, 25px);
	font-family: 'Shippori Mincho', serif;
}
.tabBox .tabArea .one_tab {
  margin: 0 5px;
}
.tabBox .tabArea .one_tab a {
  display: block;
  text-decoration: none;
  transition-duration: 0.3s;
  text-align: center;
  color: #fff;

}
.tabBox .tabArea .one_tab a span span{
 display: inline-block;
font-size: clamp(13px, 1.8vw, 15px);
}
.tabBox .tabArea .one_tab .tab_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 40px;
  box-sizing: border-box;
  transition-duration: 0.3s;
  border-radius: 15px;
  font-weight: 700;
}

@media all and (max-width: 428px) {
.tabBox .tabArea {
font-size: clamp(15px, 1.8vw, 18px);
}
.tabBox .tabArea .one_tab a span span{
font-size: clamp(11px, 1.8vw, 13px);
}
.tabBox .tabArea .one_tab .tab_inner {
  padding: 10px 25px 10px 10px;
}

.tabBox .tabArea .one_tab {
  margin: 2px;
}

}


.tabBox .tabArea .one_tab .tab_inner {
  position: relative;
}

.tabBox .tabArea .one_tab .tab_inner::before,
.tabBox .tabArea .one_tab .tab_inner::after {
  content: "";
  position: absolute;
  top: 0;
  bottom:0;
  margin: auto;
  right: 15px;
  width: 2px;
  height: 10px;
  border-radius: 9999px;
  background-color: #fff;
  transform-origin: 50% calc(100% - 1px);
}

.tabBox .tabArea .one_tab .tab_inner::before {
  transform: rotate(45deg);
}

.tabBox .tabArea .one_tab .tab_inner::after {
  transform: rotate(-45deg);
}


.tabBox .tabArea .one_tab:nth-child(1) .tab_inner {
  background-color: #aaa;
}
.tabBox .tabArea .one_tab:nth-child(2) .tab_inner {
  background-color: #aaa;
}
.tabBox .tabArea .one_tab:nth-child(3) .tab_inner {
  background-color: #aaa;
}
.tabBox .tabArea .one_tab a.select .tab_inner {
  background-color: #123269;
}

.boxSub {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}

.contents .tab_main {
  display: none;
  padding: 25px 0 120px;
  box-sizing: border-box;
  text-align: center;
  min-height: 280px;
  transition-duration: 0.3s;
}
.tab_main.is_show {
  display: block;
}

.tabList001,
.tabList002 {
	display: flex;
	flex-wrap: wrap;
}
.tabList001 li{
	width: calc(100% / 5);
	padding: 5px 5px 20px;
	box-sizing: border-box;
	font-size: clamp(12px, 1.2vw, 14px);
	line-height: 1.4;
}

.tabList002 li{
	width: calc(100% / 4);
	padding: 5px 5px 20px;
	box-sizing: border-box;
	font-size: clamp(12px, 1.2vw, 14px);
	line-height: 1.4;
}

.tabList003 {
	column-count: 3;
	height: auto !important;
	font-size: clamp(12px, 1.2vw, 14px);
}
.tabList003 > dl {
	height: auto !important;
	break-inside: avoid;
	margin: 0 0 10px;
	padding: 0.5em 1em;
	box-sizing:  border-box;
	display: table;
	align-items: center;
	width: 100%;
}

.tabList003 dl dt{
	width: 130px;
	background-color: #eee;
	padding: 10px;
	box-sizing: border-box;
	display: table-cell;
	vertical-align:middle;
}
.tabList003 dl dd{
	width: calc(100% - 130px);
	border: 1px solid #eee;
	display: table-cell;
}

.tabList003 dl dd p{
	padding: 5px;
	box-sizing: border-box;
	border-bottom: 1px solid #eee;
	text-align: left;
	width: 100%;
}
.tabList003 dl dd p:last-child{
	border-bottom: none;
}


@media all and (max-width: 960px) {
.tabList003 {
	column-count: 2;
}
}

@media all and (max-width: 768px) {
.tabList001 li{
	width: calc(100% / 4);
}

.tabList003 {
	column-count: 1;
}
}
@media all and (max-width: 428px) {
.tabList001 li{
	width: calc(100% / 3);
}
.tabList002 li{
	width: calc(100% / 3);
}
.contents .tab_main .tabList001 li{ text-align: left; }
}


/* スライド */
.mv__wrapper{
    width: 100%;
    padding: 0;
    /* pointer-events: none; */
}
.mv-swiper-container{
    width: 100%;
    height: 100svh;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}

.maskBg {
	position: absolute;
	bottom: 0;
	left: 0;
	border-bottom: 15vw solid #fff;
	border-left: 100vw solid transparent;
	z-index:10;
	box-sizing: border-box;
}

.swiper-wrapper {
	position: relative;
}

.mv-swiper-container .swiper-wrapper:before {
	content:"";
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 5;
	background-color: rgba(0,0,0,0.4);
	/* background-color: rgba(18,50,105,0.5); */
}


.mv-swiper-container .swiper-wrapper img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mv-swiper-pagination{
    width: fit-content;
    margin: 25.5px auto 0;
    display: flex;
    align-items: center;
    color: #FFF;
}

.swiper-sub-box {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
	color: #FFF;
	text-align: center;
	/* background-color: rgba(0,0,0,0.4); */

}
.swiper-sub-box div {margin-top: -60px;}


@media screen and (orientation: portrait) and (min-width: 428px) {
	/* .mv-swiper-container{
	    height: 100vh;
	} */
	.swiper-sub-box div {margin-top: 0px;}
	.maskBg {border-bottom: 20vw solid #fff;}
}

.swiper-sub-box h2 {
	font-size: clamp(30px, 3vw, 60px);
	font-weight: 500;
	letter-spacing: 0.1rem;
	line-height: 1.4;
	text-align: center;
	color: #fff;
	font-family: 'Shippori Mincho', serif;
	margin-bottom: 30px;
	/* transform: rotate( -5deg ); */
}

.swiper-sub-box h2 span{
	font-size: clamp(50px, 5vw, 120px);
	display: inline-block;
	/* background: linear-gradient(90deg, #BDC3C9 0%, #ffffff 50%, #BDC3C9 100%);
	background: linear-gradient(90deg, #b39855 0%, #fff9e6 50%, #b39855 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent; */
	font-weight: 700;
}

.swiper-sub-box p {
	font-size: clamp(18px, 1.5vw, 23px);
	letter-spacing: 0.1rem;
	margin-bottom: 10px;
	/* transform: rotate( -5deg ); */
}

.swiper-sub-box p span {
	display: inline-block;
	position: relative;
	padding: 0px 25px 5px;
	box-sizing: border-box;
	font-family: 'Shippori Mincho', serif;
	line-height: 1.0;
	font-weight: 500;

}

.swiper-sub-box p span:before,
.swiper-sub-box p span:after {
	position: absolute;
	top:0;
	bottom:0;
	background-color: rgba(255,255,255,1);
	height: 1px;
	width: 25px;
	content:"";
	margin: auto;
}
.swiper-sub-box p span:before {left:0;transform: rotate(60deg);}
.swiper-sub-box p span:after {right:0;transform: rotate(-60deg);}


.mainBtn {
	display: flex;
	justify-content: center;
	z-index: 30;
	position: fixed;
	bottom: 5%;
	left:0;
	right:0;
	margin:auto;
}

.mainBtn li {
	margin: 5px;
	opacity: 0;
}
.mainBtn li a{
	display: block;
	padding: clamp(15px, 1.5vw, 25px) clamp(10px, 1vw, 30px);
	box-sizing: borer-box;
	font-size: clamp(13px, 1.3vw, 18px);
	line-height: 1.0;
	border-radius: 100vh;
	color: #FFF;
	transition: background-color .3s, border .3s;
	box-shzdow: 0 2px 2px rgba(0,0,0,0.2);
	vertical-align: middle;
}

.mainBtn li:nth-of-type(1) a{
	background-color: #00a0e9;
	padding: clamp(20px, 2.0vw, 30px) clamp(10px, 1vw,  30px);
	border: 2px solid #00a0e9;
	letter-spacing: 0.08rem;
	line-height: 1.7;
	font-weight: 700;
	color: #ff0;
	font-size: clamp(14px, 1.3vw, 16px);
}
.mainBtn li:nth-of-type(2) a{
	background-color: #999;
	font-family: "Roboto", sans-serif;
	letter-spacing: 0.1rem;
	border: 2px solid #999;
}

.mainBtn li a:hover{
	transition: background-color .3s, border .3s;
	
}
.mainBtn li:nth-of-type(1) a:hover{background-color: #123269; border: 2px solid #FFF;}
.mainBtn li:nth-of-type(2) a:hover{background-color: #333333; border: 2px solid #FFF;}
.mainBtn li a img {width: 35px; vertical-align: middle;}


@media all and (max-width: 428px) {
.mainBtn {
	bottom: 6.5%;
}

	.mainBtn li:nth-of-type(2) img {display: none;}
	.mainBtn li:nth-of-type(2) a{
		padding: clamp(25px, 2.5vw, 35px) clamp(10px, 1vw, 30px);
	}
	.mainBtn li {
		margin: 2px;
	}
}


@media all and (max-width: 768px) {
.swiper-sub-box p {
	font-size: clamp(15px, 1vw, 18px);
}

.swiper-sub-box h2 {
	font-size: clamp(18px, 1.8vw, 30px);
}
.swiper-sub-box h2 span{
	font-size: clamp(30px, 3vw, 50px);
}

}

/* slider */
.l-inner {
  position: relative;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin: 0 auto;
  padding: 0 10rem;
  box-sizing:  border-box;
}
@media only screen and (max-width: 1024px) {
  .l-inner {
    padding: 0 4rem;
  }
}

.l-section {
	padding-bottom: 80px;
}

.card02 [class*=swiper]:focus {
  outline: none;
}

.card02 .slide-media,
.card02 .thumb-media {
  position: relative;
  overflow: hidden;
}
.card02 .slide-media img,
.card02 .thumb-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 前へ / 次へボタン */
.card02 .swiper-button-prev, .card02 .swiper-button-next {
  display: grid;
  place-content: center;
  width: 30px;
  height: 30px;
  cursor: pointer;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
@media only screen and (min-width: 1025px) {
  .card02 .swiper-button-prev::before, .card02 .swiper-button-next::before {
    -webkit-transition: var(--transition);
    transition: var(--transition);
  }
  .card02 .swiper-button-prev:hover::before, .card02 .swiper-button-next:hover::before {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
.card02 .swiper-button-prev::before, .card02 .swiper-button-next::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  border-radius: 50%;
  /* -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow); */
}
.card02 .swiper-button-prev::after, .card02 .swiper-button-next::after {
  width: 10px;
  height: 10px;
  content: "";
  border: solid var(--color-gray);
  border-width: 3px 3px 0 0;
}
.card02 .swiper-button-prev::after {
  margin-left: 0.4rem;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.card02 .swiper-button-next::after {
  margin-right: 0.4rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.card02 .swiper-button-disabled {
  pointer-events: none;
  opacity: 0;
}


.card02 {
  /* コンテナ */
  overflow: hidden;
  /* 前へ / 次へボタン */
  /* スライド */
  /* スライド アクティブ時 */
}
.card02 .swiper {
  overflow: visible;
}
@media only screen and (max-width: 1024px) {
  .card02 .swiper {
    padding: 0 3.2rem;
    box-sizing:  border-box;
  }
}
.card02 .swiper-button-prev, .card02 .swiper-button-next {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  margin: auto;
}
.card02 .swiper-button-prev::before, .card02 .swiper-button-next::before {
  background-color: rgba(0, 160, 233, 1.0);
  /* -webkit-box-shadow: var(--box-shadow-dark);
          box-shadow: var(--box-shadow-dark); */
}
.card02 .swiper-button-prev::after, .card02 .swiper-button-next::after {
  border-color: #fff;
}
.card02 .swiper-button-prev {
  right: calc(100% - 1.6rem);
}
@media only screen and (max-width: 1024px) {
  .card02 .swiper-button-prev {
    right: calc(100% - 5.2rem);
  }
}
.card02 .swiper-button-next {
  /* left: calc(100% - 1.6rem); */
  left: calc(100% - 3.2rem);
}
@media only screen and (max-width: 1024px) {
  .card02 .swiper-button-next {
    left: calc(100% - 5.2rem);
  }
}
.card02 .slide {
  overflow: hidden;
  -webkit-transition: var(--transition), opacity 1s;
  transition: var(--transition), opacity 1s;
   background-color: #FFF;
  /* border-radius: 4px;
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow); */
}
@media only screen and (min-width: 1025px) {
  .card02 .slide img {
    -webkit-transition: var(--transition);
    transition: var(--transition);
  }
}
.card02 .slide-media {
  padding-top: 62.5%;
}

.card02 .slide-content {
  padding: 15px;
  box-sizing: border-box;
}
.card02 .slide-date {
  font-size: clamp(12px 1.2vw 14px);
  margin-bottom: 5px;
  line-height: 1.6;
  display: block;
}
.card02 .slide-title {
  line-height: 1.6;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: clamp(11px 1.1vw 12px);
}
.card02 .swiper-slide:not(.swiper-slide-visible) .slide {
  pointer-events: none;
  opacity: 0.3;
}

/* contact */
.table {
	max-width: 960px;
	margin: 0 auto;
}
.contactbox {border-top: 1px solid #eee;}
.contactbox li {padding: 15px; box-sizing: border-box; border-bottom: 1px solid #eee;}
.contactbox dl{display: flex; flex-wrap: wrap;}
.contactbox dt {width: 200px;}
.contactbox dt span {display: inline-block; color: #F00; font-size: 10px;}
.contactbox dd {width: calc(100% - 200px); font-weight: 500;}

.agree {text-align: center; margin: 40px auto;}
.agree a{color: #00a0e9; display: inline-block;}
.privacyBox {margin: 0 auto 0; font-weight: 500;}
.privacyBox h3 {margin-bottom: 20px; font-size: clamp(16px, 1.6vw, 18px); font-weight: 700;}
.privacyBox p {font-size: clamp(10px, 1.0vw, 12px);}
.privacyBox dl {margin-top: 20px; font-size: clamp(10px, 1.0vw, 12px);}
.privacyBox dt {padding: 5px; box-sizing: border-box; font-weight: 700; background-color: #fff;}
.privacyBox dd {padding: 5px; box-sizing: border-box;}

.privacyBox dd ul {padding: 5px; box-sizing: border-box;}


input[type=text],textarea,input[type=password] {
	background-color: #fff;
	padding: 8px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #ddd;
	margin: 1px 0;
}
input.boxShort,input.box60 {width: 40%;}
input.box120 {width: 60%;}
input.box140 {width: 80%;}

input.boxMiddle,input.box380,input.box300 {width: 100%;}
input.boxLong {width: 100%;}
.box95,textarea.box380 {width: 100%;}
input[type=checkbox] {width: 25px; height: 25px; background-color: #fff; }
/* .agree input[type=radio]{vertical-align:middle; display: none;}
.agree label,
.radiobtn label {
	position: relative;
	cursor: pointer;
	padding-left: 30px;
	box-sizing: border-box;
	display: inline-block;
}
.agree label::before,
.agree label::after,
.radiobtn label::before,
.radiobtn label::after {
	content: "";
	display: block; 
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}
.agree label::before,
.radiobtn label::before {
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	left: 5px;
}

.agree label::after,
.radiobtn label::after {
	background-color: #00a0e9;
	border-radius: 50%;
	opacity: 0;
	width: 16px;
	height: 16px;
	left: 7px
}
.agree input:checked + label::after,
.radiobtn input:checked + label::after {opacity: 1;}
.agree .visually-hidden,
.radiobtn .visually-hidden {
	position: absolute;
	white-space: nowrap;
	border: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	overflow: hidden;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
} */


.radio__btn {
    appearance: none;
}

.mwform-radio-field-text {
    padding-left: 30px;
    position: relative;
    cursor: pointer;
}

.mwform-radio-field-text::before {
    content: '';
    display: block; 
    border-radius: 50%; 
	background-color: #fff;
	border: 1px solid #ddd;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
}

.radio__btn:checked +.mwform-radio-field-text::after {
    content: '';
    display: block;
    border-radius: 50%;
	width: 16px;
	height: 16px;
	background-color: #00a0e9;
    position: absolute;
    top: 50%;
    left: 7px;
    transform: translateY(-50%);
}


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	select:not(:target) {
		padding-right:0;
		background-image: none;
	}
}

.btnContact { text-align: center; margin: 0px auto 0; display: block;}

.contactMail .btnContact {margin-top: 40px;}

.btnContact a,
.btnContact input[type=submit],
.btnContact input[type=button],
.btnContact button {
	display: block;
	box-sizing: border-box;
	color: #fff;
	background-color:#00a0e9;
	position: relative;
	text-align: center;
	font-weight: 700;
	line-height: 1.0;
	vertical-align: middle;
	border: 1px solid #FFF;
	border-radius: 100vh;
	padding: clamp(15px, 1.5vw, 25px) clamp(20px, 1vw, 40px);
	box-sizing: borer-box;
	font-size: clamp(13px, 1.3vw, 18px);
	transition: background-color .3s;
}

.btnContact input[type=submit],
.btnContact input[type=button],
.btnContact button {
font-size: clamp(13px, 1.3vw, 18px);
padding: clamp(15px, 1.5vw, 25px) clamp(20px, 1vw, 40px);
display: inline-block;
cursor:pointer;
box-sizing:  border-box;
}

.btnContact a:hover,
.btnContact input[type=submit]:hover,
.btnContact input[type=button]:hover,
.btnContact button:hover {
background-color:#123269;
transition: background-color .3s;
}


@media only screen and (max-width: 428px) {
	.contactbox dt {width: 100%;}
	.contactbox dd {width:  100%; font-weight: 500;}
}

	input[type="submit"],input[type=text],textarea,select,button,input[type=button]{
	-webkit-appearance: none;
	}


/* pageTop
----------------------------------------------- */
#pageTop {
	position: fixed;
	bottom: 36px;
	right: 2.5%;
	width: 50px;
	height: 40px;
	font-size: 10px;
	z-index: 40;
	text-align: center;
	line-height: 1.1;
}
#pageTop a{
	position: relative;
	width: 50px;
	height: 40px;
	display: block;
	box-sizing: border-box;
	padding-top: 25px;
	color: #FFF;
	font-family: "Roboto", sans-serif;
}
#pageTop a:after {
	position: absolute;
	background-image: url(../../images/ordermade/pagetop.png);
	width: 41px;
	height: 22px;
	left: 0;
	right:0;
	margin: 0 auto;
	top: 5px;
	content: "";
	transition:top .3s,height .3s;
}

#pageTop a:hover:after {
	 top: 0px;
	 transition:top .3s,height .3s;
}

@media only screen and (max-width: 428px) {
#pageTop {
	bottom: 2px;
}
}


.loading2 {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: var(--bs-white);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  transition: all 0.5s linear;
}


.secFormBox p {
text-align: center;

}