/*
Theme Name: RESART用テーマ
Author: 株式会社 長谷川美芸
Description: RESARサイト用テーマ
Version: 1.0
*/
@charset "utf-8";

/*-----------------------------------
				common
-----------------------------------*/
html{
	font-size: 14px;
  line-height: 1.6em;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: normal;
	font-optical-sizing: auto;
}
header{
	background-color: white;
}
header #header-content{
	display: block;
	margin: 0 auto;
	padding: 0 0;
	z-index: 9000;
	position: relative;
}
header,body,footer{
	width: 100%;
}
body{
	font-size: 14px;
  line-height: 1.6em;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: normal;
	font-optical-sizing: auto;
}
p{
	font-size: 1rem;
	line-height: 1.6em;
}
.clearfix{
	display: block;
}
.attention{
	color: #da0024;
}
.point{
	color: #DA0024;
	font-weight: bold;
}
.litepink-marker{
	display: inline;
	background: linear-gradient(transparent 60%, #FAB3C2 60%);
}
.annotation{
	display : block;
	line-height : 1.6em;
  margin: 0 1em 0 0em;
  padding-bottom: 0.7em;
}
.annotation li{
  list-style-type:'※';
  list-style-position: outside;
  margin: 1em 0 0;
}
.annotation2{
	display : block;
	line-height : 1.6;
  margin: 1em 0 0 1em;
  padding-bottom: 0.7em;
}
.annotation2 li{
  list-style-type:'※';
  list-style-position: outside;
  margin: 0.5em 0 0;
  font-size: 0.9em;
}
.textblock_example{
	display : block;
	line-height : 1.6em;
  margin: 0.5em 2.5em 0 ;
  padding-bottom: 0.7em;
  font-size: 1.1em;
}
.textblock_example li{
  list-style-type:'例）';
  list-style-position: outside;
}
.annotationdisc {
	display : block;
	line-height : 1.6em;
  margin: 0 1em 0 2em;
  padding-bottom: 0.7em;
  font-size: 1rem;
}
.annotationdisc li{
  list-style-type:disc;
  list-style-position: outside;
  margin: 1em 0 0;
  font-size: 0.9em;
}
.buttom_form{
       text-align: center;
       margin: 4em 0.5em 6em;
}
.buttom_form a{
       display: inline-block;
       position: relative;
       padding: 1em;
       width: 90%;
       margin: 0 auto;
       background-color: #DA0024;
       color: white;
       font-size: 1.1rem;
       border-radius: 1em;
       border: solid #DA0024 2px;
}
.buttom_form a:not(:first-child){
       margin: 1.2em 0 0;
}
.buttom_form a:click{
      color: #DA0024;
       background-color: white;
      border: solid #DA0024 2px;
}
.buttom_form a:hover{
      color: #DA0024;
       background-color: white;
      border: solid #DA0024 2px;
      text-decoration: none;
}
.buttom_form2{
       text-align: center;
       margin: 0em 0.5em 3em;
}
.buttom_form2 a{
       display: inline-block;
       position: relative;
       padding: 1em;
       width: 80%;
       margin: 0 auto;
       background-color: #DA0024;
       color: white;
       font-size: 18px;
       border-radius: 1em;
       border: solid #DA0024 2px;
}
.buttom_form2 a:not(:first-child){
       margin: 1.2em 0 0;
}
.buttom_form2 a:click{
      color: #DA0024;
       background-color: white;
      border: solid #DA0024 2px;
}
.buttom_form2 a:hover{
      color: #DA0024;
       background-color: white;
      border: solid #DA0024 2px;
      text-decoration: none;
}
.talk{
	display: flex;
	align-items: flex-start;
	margin: 1.5em 0;
	gap: 0.75em;
}
.talk.is-right {
  flex-direction: row-reverse;
}
.talk__icon{
	width: 56px;
	flex-shrink: 0;
}
.talk__icon img{
	width: 100%;
  height: auto;
  border-radius: 50%;
  display: block;
  border: solid 1px black;
}
.orderstepTextArea .talk__icon img{
  margin: 0;
}
.talk__body {
  max-width: 80%;
}
.talk__NA{
	text-align: center;
}
.talk__name {
  font-size: 0.75rem;
  margin-bottom: 0.25em;
  color: #666;
}
.talk__balloon {
  position: relative;
  background: #F8CCD3;
  padding: 0.75em 1em;
  border-radius: 12px;
  line-height: 1.6;
}
.talk.is-left .talk__balloon::before {
  content: "";
  position: absolute;
  top: 1em;
  left: -8px;
  border-width: 8px 8px 8px 0;
  border-style: solid;
  border-color: transparent #F8CCD3 transparent transparent;
}
.talk.is-right .talk__balloon::before {
  content: "";
  position: absolute;
  top: 1em;
  right: -8px;
  border-width: 8px 0 8px 8px;
  border-style: solid;
  border-color: transparent transparent transparent #F8CCD3;
}
@media screen and (min-width: 600px){
	html{
		font-size: 18px;
	  line-height: 1.6em;
	}
}
.rte-arrow {
  position: relative;
  display: block;
  width: var(--arrow-width, 40px);
  height: 4px;
  margin: 3em auto 1.5em;
  border-radius: 9999px;
  background-color: var(--arrow-color, #000);
}
.rte-arrow::before,
.rte-arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  width: 17.6px;
  height: 4px;
  border-radius: 9999px;
  background-color: var(--arrow-color, #000);
  transform-origin: calc(100% - 2px) 50%;
}
.rte-arrow::before {
  transform: rotate(36.05deg);
}

.rte-arrow::after {
  transform: rotate(-36.05deg);
}
.rte-arrow-left {
  transform: rotate(180deg);
}
.rte-arrow-bottom {
  transform: rotate(90deg);
}
.rte-arrow-top {
  transform: rotate(-90deg);
}


/*------------------------------------
  					リッチエディタ装飾
------------------------------------*/
.textblock{
	font-size: 1rem;
}
.textblock h2,.textblock h3,.textblock h4,.textblock h5,.textblock h6{
	font-weight: bold;
	line-height: 1.4;
}
.textblock h2{
	font-size: 1.8em;
}
.textblock h3{
	font-size: 1.5em;
}
.textblock h4{
	font-size: 1.25em;
}
.textblock h5{
	font-size: 1.1em;
}
.textblock h6{
	font-size: 1em;
}
.textblock img{
	display: block;
	margin: 0 auto;
}
.rteBox01{
	display: block;
	position: relative;
	background-color: white;
	border: solid 2px #E73881;
	border-radius: 1em;
	font-size: 1rem;
	overflow: hidden;
	box-sizing: border-box;
	margin: 1em 0;
}
.rteBox01 .rteBox01Title{
	font-size: 1.1em;
	background-color: #E73881;
	color: white;
	padding: 0.5em 1em;
	display: inline-block;
	border-radius: 0em 0 0.5rem 0;
}
.rteBox01pArea{
	font-size: 1em;
	padding: 0.5em 1em;
	position: relative;
}
.rteBox01pArea p{
	margin: 0.5em 0;
}
.rtedisclist:has( > ul > li){
	margin: 0em 1em;
}
.rtedisclist > ul{
	display : block;
	line-height : 1.6em;
  margin: 0 0 0 1em;
  padding-bottom: 0.7em;
}
.rtedisclist > ul > li{
	margin: 1em 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	line-height: 1;
}
.rtedisclist > ul > li::before{
	content: " ";
	position: absolute;
	left: 0;
	background-color: #E73881;
	color: #E73881;
	border-radius: 50%;
	width: 1.1em;
	height: 1.1em;
}
.rtedisclist > ul > li:has(a){
	text-decoration: underline;
}
.rtechecklist:has( > ul > li){
	margin: 0em 1em;
}
.rtechecklist > ul{
	display : block;
	line-height : 1.6em;
  margin: 0 0 0 1em;
  padding-bottom: 0.7em;
}
.rtechecklist > ul > li{
	margin: 1em 0;
}
.rtechecklist > ul > li::before{
	content: "\02713";
	position: absolute;
	left: 0;
	background-color: #E73881;
	color: white;
	border-radius: 50%;
	width: 1.5em;
	height: 1.5em;
	display: flex;
	justify-content: center;
}
.rtechecklist > ul > li:has(a){
	text-decoration: underline;
}
.rteBox01pArea:has( > ol > li){
	margin: 0 0.5em 0 1em;
}
.rteBox01pArea > ol{
	display : block;
	line-height : 1.6em;
  margin: 0 0 0 1em;
  padding-bottom: 0.7em;
  counter-reset: rteB01num;
}
.rteBox01pArea:has( > ol > li){
	margin: 0 0.5em 0 1em;
}
.rteBox01pArea > ol > li{
	margin: 1em 0;
	counter-increment: rteB01num;
	display: flex;
	align-items: center;
}
.rteBox01pArea > ol > li::before{
	content: counter(rteB01num, decimal)'';
	position: absolute;
	left: 0;
	background-color: #E73881;
	color: white;
	border-radius: 50%;
	width: 1.5em;
	height: 1.5em;
	display: flex;
	justify-content: center;
}
.attentionGrayBox{
	font-size: 1rem;
	margin: 2em 0 1em;
}
.attentionGrayBox .agbtitle{
	font-size: 0.9em;
	color: #6c6c6c;
}
.attentionGrayBox .agbTextarea{
	background-color: #eeeeee;
	padding: 0.5em 2em;
	font-size: 0.8em;
	color: #DA0024;
}
.attentionGrayBox .agbTextarea ul{
	display : block;
	line-height : 1.6em;
  margin: 0 0 0 1em;
  padding-bottom: 0.7em;
}
.attentionGrayBox .agbTextarea li{
	margin: 1em 0;
}
.attentionGrayBox .agbTextarea li:before{
	content: '※';
	position: absolute;
	left: 3em;
	color: #DA0024;
	width: 1.1em;
	height: 1.1em;
	display: flex;
	justify-content: center;
}
.rte_h3Title01{
	border: solid 2px #DA0024;
	padding: 0.5em 1em;
	display: flex;
	color: #DA0024;
	font-weight: bold;
	font-size: 1.2em;
	margin: 1em 0;
}
.rte_h3Title01_iconArea{
	border-right: solid 1px #DA0024;
	padding-right: 0.5em;
}
.rte_h3Title01_icon{
	width: 1.1em;
  height: 1.1em;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 0.4em;
  vertical-align: middle;
}
.rte_h3Title01_title{
	padding-left: 1em;
}
.rte_h3Title01_icon_tshirts-red{
	background-image: url(../img/decoration-icon/tshirts-red.png);
}
@media screen and (min-width: 962px){
	.rteBox01{
		border: solid 4px #E73881;
	}
}

/*-----------------------------------
				header
-----------------------------------*/
#header-blue{
	background-color:#263D90;
	color: white;
}
#header-blue .hdblue-content{
	max-width: 1030px;
	font-size: 0.8rem;
	padding: 0.4rem;
	text-align: center;
	margin: 0 auto;
}
#header-blue .hdblue-content img:hover{
	opacity: 0.7;
	transition: .25s ease;
}
p.hdblue-sp{
	display: block;
	font-size: 1em;
}
p.hdblue-pc{
	display: none;
}
#header-red{
	display: none;
}
#header-white{
	background-color: white;
}
#header-white .hdw-content{
	max-width: 1030px;
	margin: 0 auto;
	padding: 0.7rem 0;
}
.sitelogo-pc{
	display: none;
}
.sitelogo-sp{
	display: inline-block;
}
.hdw-mypagecontent{
	display: none;
}
h1#SiteLogo{
	margin: 0 1rem;
}
h1#SiteLogo img{
	width: 45%;
}
h1#SiteLogo img:hover{
	opacity: 0.5;
	transition: 0.3;
}
.hdw-sp-burgerMenu{
	display: block;
}
.hdw-sp-burgerMenu #sp-nav-toggle{
	display: block;
	position: absolute;
	right: 12px;
	top: 38px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}
.hdw-sp-burgerMenu #sp-nav-toggle div{
	position: relative;
}
.hdw-sp-burgerMenu #sp-nav-toggle span{
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background-color: #000000;
	left: 0;
	transition:  .35s ease-in-out;
}
.hdw-sp-burgerMenu #sp-nav-toggle span:nth-child(1){
	top: 0;
}
.hdw-sp-burgerMenu #sp-nav-toggle span:nth-child(2){
	top: 11px;
}
.hdw-sp-burgerMenu #sp-nav-toggle span:nth-child(3){
	top: 22px;
}
.hdw-sp-burgerMenu #sp-nav-toggle.is-open span:nth-child(1){
	top: 11px;
	transform: rotate(315deg);
	-webkit-transform: rotate(315deg);
	-ms-transform: rotate(315deg);
}
.hdw-sp-burgerMenu #sp-nav-toggle.is-open span:nth-child(2){
	width: 0;
	left: 50%;
}
.hdw-sp-burgerMenu #sp-nav-toggle.is-open span:nth-child(3){
	top: 11px;
	transform: rotate(-315deg);
	-webkit-transform: rotate(-315deg);
	-ms-transform: rotate(-315deg);
}
:root{
  --header-h: 77px;
  --footer-h: 72px;
}
#global-nav{
	position: fixed;
	top: var(--header-h);
	left: 0;
	width: 100%;
	max-height: 0;
  overflow: hidden;
  background-color: #565656d9;
	z-index: 100;
	transition: max-height .18s cubic-bezier(.2,.9,.2,1);
}
#global-nav.is-open{
	max-height: calc(100dvh - var(--header-h) - var(--footer-h));
}
#global-nav.is-open.is-scroll{
	overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
#global-nav > ul{
	position: static;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	padding: 0.5em;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
#global-nav > ul > li{
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	flex: 0 0 calc(25% - 0.5em);
	flex-direction: column;
	background-color: #0E2F84;
	color: white;
	text-align: center;
	font-size: 0.8em;
	padding: 0.7em 1em;
	align-items: center;
	justify-content: center;
	line-height: 1.4;
}
.global-nav-icon-sp,
.global-nav-text-sp{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: center;
}
#global-nav > ul > li img{
	width: auto;
	height: 45px;
	margin-bottom: 10px;
	display: block;
}
#gv-banner{
	margin: 1em 0.5em;
}
#gv-banner ul li{
	margin: 0.5em 0;
}
#gv-banner img{
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
}
@media screen and (min-width: 962px) {
	p.hdblue-sp{
		display: none;
	}
	p.hdblue-pc{
		display: inline-block;
	}
	#header-blue .hdblue-content{
		padding: 0;
	}
	#header-red{
		display: block;
		background-color: #DA0024;
		color: white;
	}
	#header-red .hdrd-content{
		max-width: 1030px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		padding: 0.5rem 0;
	}
	.hdrd-text{
		font-size: 0.8rem;
		font-weight: bold;
	}
	.hdrd-contacts ul{
		display: flex;
		gap: 0.4em;
	}
	.hdrd-contacts ul li{
		display: flex;
		flex: calc(33% - 0.5rem);
	}
	.hdrd-contacts ul li img:hover{
		opacity: 0.7;
		transition: .25s ease;
	}
	.sitelogo-pc{
		display: inline-block;
	}
	.sitelogo-sp{
		display: none;
	}
	h1#SiteLogo{
		margin: 0;
	}
	h1#SiteLogo img{
		width: auto;
	}
	.hdw-mypagecontent{
		display: flex;
	}
	.hdw-mypagecontent ul{
		display: flex;
		gap: 2em;
	}
	.hdw-mypagecontent ul li{
		display: flex;
		flex: 0 0 calc(25% - 2em);
		flex-wrap: wrap;
	}
	.hdw-sp-burgerMenu{
		display: none;
	}
	.hdw-content{
		display: flex;
		justify-content: space-between;
	}
}

/* スマホ版ヘッダー固定&めくれ */
@media screen and (max-width: 961px) {
  #header-content {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 99999 !important;

    transform: translateY(0);    
    transition: transform .12s ease-out;
  }
  #header-content.is-hidden {
    transform: translateY(-100%);
  }
}


/*-----------------------------------
			header Menu
-----------------------------------*/
#header-menuArea{
	color: white;
}
.header-menu-pc {
    display: none;
}
.header-menu-sp {
    display: block;
}
/*------------------------------------
				SP用					
------------------------------------*/
.header-nav-sp{
	font-size: 0.75rem;
	font-weight: bold;
	text-align: center;
}
.header-nav-sp > ul{
	display: flex;
}
.header-nav-sp > ul > li{
	display: flex;
	flex: calc(20% - 0.5rem);
	flex-direction: column;
	padding: 0.5em 0 0.2em;
	text-align: center;
	background-color: #E90017;
}
.header-nav-sp > ul > li:not(:last-child){
	border-right: 1px solid white;
}
.header-nav-sp > ul > li a::hover{
	color:#f60;
}
.header-nav-sp > ul > li span.menu-icon img{
	height: 2rem;
	width: auto;
}
.header-nav-sp > ul > li span.menu-label{
	display: block;
}
.header-nav-sp .menu-list-sp > .menu-item {
    position: relative;
}
.header-nav-sp .sub-menu-wrap {
	position: absolute;
	top: 100%;
	left: 0;
	width: 150px;
    max-height: 0;
    overflow: hidden;
    transition: max-height .25s ease;
    text-align: left;
    z-index: 9999;
}
.header-nav-sp .sub-menu-wrap > ul > li{
	font-size: 0.9rem;
	font-weight: normal;
	background-color: #EB4026;
	padding: 1rem 0.5rem;
}
.header-nav-sp .sub-menu-wrap > ul > li a:hover{
	color:#f60;
}
.header-nav-sp .sub-menu-wrap.is-open {
    max-height: 500px;
}
.header-nav-sp .sub-menu-wrap.is-open li{
	background-color: #EB4026;
	padding: 1rem 0.5rem;
	font-size: 0.9rem;
	font-weight: normal;
}
/*------------------------------------
				PC用					
------------------------------------*/
@media screen and (min-width: 962px) {
	#header-menuArea{
		background-color: white;
		color: #DA0024;
		border-bottom: 1px solid #cccccc;
		padding: 0.5rem 0;
	}
	.hdmenu-content{
		max-width: 1030px;
		margin: 0 auto;
	}
    .header-menu-pc {
        display: block;
    }
    .header-menu-sp {
        display: none;
    }
    .menu-list-pc{
    	text-align: center;
    }
    .header-nav-pc > ul{
    	display: flex;
    }
    .header-nav-pc > ul > li{
    	display: flex;
    	flex: calc(14% - 0.5rem);
    	padding: 0.3rem 0;
			align-items: center;
			justify-content: center;
			border-right: 1px dotted #cccccc;
			font-weight: bold;
			font-size: 1.1em;
    }
    .header-nav-pc > ul > li:first-child{
			border-left: 1px dotted #cccccc;
	}
	.header-nav-pc .menu-list-pc > .menu-item {
      	position: relative;
	 }
	 .header-nav-pc .sub-menu-wrap {
	    position: absolute;
	    top: calc(100% + 0.5rem);
	    left: 0;
	    min-width: 220px;
	    color: black;
	    max-height: 0;
	    overflow: hidden;
	    transition: max-height .25s ease;
	    z-index: 9999;
	}
	.header-nav-pc .menu-item:hover > .sub-menu-wrap {
	    max-height: 500px;
	}
	.header-nav-pc .sub-menu{
	    background: #EEEEEE;
	    font-weight: normal;
	    text-align: left;
	}
	.header-nav-pc .sub-menu .menu-item a {
	    display: block;
	    white-space: nowrap;
	    font-size: 0.7rem;
	    border-bottom: solid 1px white;
	    padding: 0.8rem;
	    width: 240px;
	    font-size: 0.9em;
	 }
	.header-nav-pc .sub-menu .menu-item a:hover {
	    background: #fdd3d3;
	}
}

/*-----------------------------------
				main
-----------------------------------*/
.noheader-mode #main{
	margin: 0 auto;
}
#main{
	margin: 150px auto 150px;
	position: relative;
}
#main .main-content{
	max-width: 820px;
	margin: 1rem auto;
}
#main .sidebarContentleft,#main .sidebarContentright{
	display: none;
}
@media screen and (min-width: 1080px){
	#main{
		display: flex;
		flex-wrap: wrap;
		gap: 4em;
		max-width: 1300px;
	}
	#main .main-content{
		flex: 6;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
	}
	#main .sidebarContentleft,#main .sidebarContentright{
		flex: 0.5;
		max-width: 300px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		box-sizing: border-box;
		overflow: hidden;
	}
	#main .sidebarContentleft{
		align-items: flex-end;
	}
	#main .sidebarContentright{
		align-items: flex-start;
	}
	.sidebararea{
		margin: 1em 0;
		width: 100%;
		position: relative;
	}
}
#title_red{
	margin-bottom: 30px;
  border-bottom: 1px solid #DA0024;
  border-top: 1px solid #DA0024;
  color: #DA0024;
  font-size: 1.6rem;
  padding-top: 0.71em;
  padding-bottom: 0.71em;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 962px) {
	#main{
		margin: 0 auto;
	}
	#title_red{
		font-size: 1.3rem;
	}
}

.BreadcrumbList{
	display: block;
	margin: 0 0 0.5em 0.5em;
}
.BreadcrumbList li{
	display: inline-block;
}
.BreadcrumbList li + li::before{
	content: '>';
	color: black;
	margin: 0 0.5em;
}
.BreadcrumbList li a{
	color: #4682b4;
}
.BreadcrumbList li a:hover{
	color: #39c;
	text-decoration: underline;
}
@media screen and (min-width: 962px) {
	.BreadcrumbList{
		margin: 0 0 0.5em;
	}
}
.PageMenuBtn{
	margin: 0 1em;
}
.PageMenuBtn ul{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
}
.PageMenuBtn li{
	display: flex;
	flex: 0 1 calc(50% - 0.5em / 2);
	background-color: #002076;
	border: solid 1px #002076;
	padding: 0.5em 1em;
	color: white;
	font-weight: bold;
	font-size: 1.1em;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}
.PageMenuBtn li a{
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	color: inherit;
}
.PageMenuBtn li.is-current{
	background-color: white;
	color: #002076;
}
.pageheadTextArea{
	margin: 2em 1em;
}
.pagebody{
	margin: 0 1em;
}
.pagebody img{
	max-width: 100%;
	width: auto;
	height: auto;
}
@media screen and (min-width: 962px) {
	.PageMenuBtn{
		margin: 0 auto;
	}
	.PageMenuBtn li{
		font-size: 1.2em;
		flex: 0 1 calc(33% - 0.5em);
	}
	.PageMenuBtn li:hover{
		background-color: white;
		color: #002076;
		transition: .3s;
	}
	.pageheadTextArea{
		margin: 2em 0;
		font-size: 1em;
	}
}

/*------------------------------------
						エラーページ				
------------------------------------*/
.errorArea{
	margin: 0 !important;
}
.error-content{
	max-width: 820px;
	font-size: 1rem;
	text-align: center;
	margin: 3rem 0;
}
.error-content h2{
	color: #DA0024;
	font-size: 1.3em;
	font-weight: bold;
}
.error-content p{
	margin: 1rem 0;
}
.errorbox{
	margin: 6rem 0;
	display: inline-block;
}
/*-----------------------------------
							footer
-----------------------------------*/
footer{

}
.footer-nav{
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #fff;
	line-height: 1.1;
	z-index: 9000;
}
.footer-nav > ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.footer-nav > ul > li{
	display: flex;
	background-color: #1e3e95;
	flex: calc(25% - 0.1em);
	color: white;
	text-align: center;
	font-size: 0.7em;
	padding: 1.2em 0.2em 0.7em;
	flex-direction: column;
}
.footer-nav > ul > li:not(:last-child){
	border-right: solid 1px white;
}
.footer-nav > ul > li a{
	display: block;
	text-align: center;
	box-sizing: border-box;
}
.footer-nav > ul > li .menu-icon{
	display: block;
}
.footer-nav > ul > li .menu-icon img{
	vertical-align: bottom;
	height: 3vh;
}
.footer-nav > ul > li .menu-label{
	margin-top: 0.7em;
	display: block;
}
.footer-nav .sub-menu-wrap{
	display: none;
}
.footer-content .footer-submenu-modal{
	position: fixed;
	inset: 0;
	z-index: 9999 !important;
	visibility: hidden;
	pointer-events: none;
}
.footer-content .footer-submenu-modal .footer-submenu-modal__inner{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	box-sizing: border-box;
	background: #fff;
	transform:  translateX(100%);
	transition: transform .5s;
}
.footer-content .footer-submenu-modal.is-open,
.footer-content .footer-submenu-modal.is-closing{
  visibility: visible;
  pointer-events: auto;
}
.footer-content .footer-submenu-modal.is-open .footer-submenu-modal__inner{
	transform: translateX(0);
}
.footernav-modal-text{
	color: white;
	background-color: #263D90;
	font-size: 0.8rem;
	text-align: center;
	padding: 0.4rem;
	margin: 0 auto;
}
.footer-submenu-modal__inner img{
	max-width: 95%;
}
.footer-submenu-body{
	margin: 5em auto 0;
}
.footer-submenu-body .menu-icon{
	display: block;
	text-align: center;
}
.footer-submenu-body li{
	margin: 1.5em 0;
}
.footer-submenu-close{
	position: absolute;
	top: 0.8em;
	right: 10px;
	font-size: 45px;
	font-weight: bold;
	padding: 10px;
}
.footer-content-pc{
	display: none;
}
body.footer-is-open #header-content{
	z-index: 0 !important;
}
.footer_botom_left img{
	display: none;
}
.footer_sp_wrap{
	display: block;
	width: 100%;
	overflow: hidden;
	border-top: solid 5px #DA0024;
	margin: 3em 0 0;
	padding: 1em 0;
}
.footer_sp_wrap img{
	max-width: 100%;
	width: auto;
}
.businessCalendar_sp{
	width: 100%;
}
@media screen and (max-width: 961px) {
	.businessCalendar_sp {
    background-color: transparent;
    border: none;
    color : #000;
    margin: 0 auto;
    padding: 0 2em;
	}
	.businessCalendar_sp div:first-child img {
		margin-bottom : 0.5em;
	}
	.businessCalendar_sp .calendar-body {
		margin: 0.5em 0 1.5em;
	}
	.businessCalendar_sp .calender {
	    width: 100%;
	    margin-bottom: 24px;
	}
	.businessCalendar_sp .businessCalendar_head{
		width: 100%;
		text-align: center;
	}
	.businessCalendar_sp table {
	    border: none;
	    width: 100%;
	}
	.businessCalendar_sp .businessCalendar_month{
		width: 100%;
		display: block;
	}
	.businessCalendar_sp .businessCalendar_month,
	.businessCalendar_sp table th,
	.businessCalendar_sp table td,
	.businessCalendar_sp table caption {
	    border : 1px #dddddd solid;
	    padding: 1px 3px;
	    text-align: center;
	    background: #fff;
	    font-size: 1.3em;
	}

	.businessCalendar_sp table caption {
	    font-size: 20px;
	    border-bottom : none;
	}

	.businessCalendar_sp table td {
	}
	.businessCalendar_sp table th {
	    background-color : #cccccc;
	}

	.businessCalendar_sp .is-weekend,.businessCalendar_sp .is-holiday,
	.businessCalendar_sp .is-closed,.businessCalendar_sp .is-extra-closed {
	    background-color: #ffcccb;
	}
	.businessCalendar_sp .is-today {
	    font-weight: bold;
	}
	.businessCalendar_sp .holidays-cap {
	    margin-bottom: 10px;
	    background-color: #ffcccb;
	    padding : 2px 5px;
	    float : right;
	}
	.footer_bottom_right{
		order: 1;
		font-size: 0.8em;
	}
	.footer_bottom_right a{
		color: #39c;
	}
	.footer_bottom_right a:hover{
		color: #ff741f;
		text-decoration: underline;
	}
	.footer_botom_left{
		order: 2;
		font-size: 0.8em;
		margin: 1em 0 0;
	}
	.footer_content_pc{
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		text-align: center;
	}
	.footer_bottom_wrap{
		margin: 0 2em 150px;
	}
}
@media screen and (min-width: 962px) {
	.footer-content{
		display: none;
	}
	.footer-content-pc{
		display: block;
		border-top: solid 1px #DA0024;
		padding: 3em 0;
	}
	.footer-content-pc .footer-content-inner{
		max-width: 1000px;
		margin: 0 auto;
		display: flex;
		gap: 3em;
	}
	.footer-content-inner-left{
		display: flex;
		flex-direction: column;
	}
	.footer-content-inner-right{
		display: flex;
		flex-direction: column;
	}
	.footer-content-inner-left a{
		margin: 0.5em 0;
	}
	.CalendarArea{
		display: flex;
		gap: 1em;
	}
	.calendarTi img{
		max-width: 100%;
		width: 100%;
	}
	.holidays-cap{
		margin-top: 10px;
		background-color: #ffcccb;
		padding: 0.1em 0.2em;
		float: right;
	}
	.calendar-body{
	  width: 100%;
	}
	.businessCalendar {
    background-color: transparent;
    border: none;
    color : #000;
	}
	.businessCalendar div:first-child img {
		margin-bottom : 15px;
	}
	.businessCalendar .block_body {
	}
	.businessCalendar .calender {
    float : left;
    width: 47.5%;
	}
	.businessCalendar .calender:last-child {
    margin-left : 5%;
	}
	.businessCalendar table {
    border: none;
    width: 100%;
	}
	.businessCalendar .businessCalendar_month{
		display: block;
	}
	.businessCalendar .businessCalendar_month,
	.businessCalendar table th,
	.businessCalendar table td,
	.businessCalendar table caption {
    border : 1px #dddddd solid;
    padding: 1px 3px;
    text-align: center;
    background: #fff;
    font-size: 13px;
	}
	.businessCalendar table caption {
    font-size: 13px;
    border-bottom : none;
	}
	.businessCalendar table td {
	}
	.businessCalendar table th {
    background-color : #cccccc;
	}
	.businessCalendar .is-weekend,.businessCalendar .is-holiday,.businessCalendar .is-closed,.businessCalendar .is-extra-closed{
    background-color: #ffcccb;
	}
	.businessCalendar .is-today {
    font-weight: bold;
	}
	.businessCalendar .information {
    margin-top : 10px;
    background-color: #ffcccb;
    padding : 2px 5px;
    float : right;
	}
	.footer_bottom_wrap{
		background-color: #DA0024;
		color: white;
		padding: 1em 1em;
		margin: 0 0;
	}
	.footer_bottom_wrap .footer_content_pc{
		display: flex;
		gap: 1em;
		max-width: 1040px;
		margin: 0 auto;
	}
	.footer_bottom_wrap .footer_content_pc > div{
		flex: 0 0 calc(50% - 1em);
		flex-wrap: wrap;
	}
	.footer_botom_left{
		display: flex;
		flex-direction: column;
	}
	.footer_botom_left img{
		max-width: 160px;
		width: auto;
		display: block;
	}
	.footer_bottom_right{
		display: flex;
		gap: 0 0.5em;
		justify-content: end;
		font-size: 0.8em;
	}
	.footer_bottom_right a:hover{
		text-decoration: underline;
	}
	#copyright{
		margin: 0.5em 0 0 0;
	}
	.footer_sp_wrap{
		display: none;
	}
}


/* LINE簡単お問合せ 202402
----------------------------------------------- */
#line-Area{
	display: block;
	position: relative;
	background-color: #F7F6F1;
	overflow: hidden;
	font-size: 16px;
}
#line-Area a{
	text-decoration: none;
}
#line-Area img{
	width: 100%;
}
.line-categoryArea{
	margin: 3em 0;
}
.line-categoryArea .line-h2Ti{
	position: relative;
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	border-bottom: 0.2em solid #06C755;
	padding-bottom: 0.8em;
	margin-bottom: 1.5em;
}
span.lineTi-marker{
	background: linear-gradient(transparent 65%, #EEE021 65%);
	padding: 0 0.5em;
}
.line-categoryArea .line-h2Ti::before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	border-top: 1em solid #06C755;
	border-right: 0.8em solid transparent;
	border-left: 0.8em solid transparent;
	bottom: -1em;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.line-categoryArea .line-h2Ti::after{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	border-top: 1em solid #F7F6F1;
	border-right: 0.8em solid transparent;
	border-left: 0.8em solid transparent;
	bottom: -0.7em;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.lineCaArea{
	display: flex;
	position: relative;
}
.lineCaArea p.lineCaText{
	display: inline-block;
	position: relative;
	font-size: 0.9em;
	width: 60vw;
}
.lineCaicon-01::after,.lineCaicon-02::after{
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	vertical-align: top;
	position: absolute;
	right: -5em;
	top: 0;
}
.lineCaicon-01::after{
	background: url(../img/lineestimate/lineCaicon-01.png) no-repeat;
	background-size: contain;
}
.lineCaicon-02::after{
	background: url(../img/lineestimate/lineCaicon-02.png) no-repeat;
	background-size: contain;
}
.lineCastepArea{
	margin: 2em 1em;
	counter-reset: number 0;
}
.lineCaText{
	margin: 0 auto;
}
.lineCastepArea li{
	background-color: #DA0024;
	position: relative;
	padding: 1em 2em;
	color: white;
	border-radius: 0.5em;
	margin: 0em auto 5em;
	font-size: 0.85em;
}
.lineCastepArea li p{
	display: inline-block;
}
.lineCastepArea li::before{
	counter-increment: number 1;
	content: "Step" counter(number);
	margin-right: 0.5em;
	vertical-align: top;
}
.lineCastepArea li:not(:last-child)::after{
	content: "";
	background: #06B455;
  	height: calc(tan(60deg) * 3em / 2);
  	width: 3em;
  	clip-path: polygon(0 0, 100% 0, 50% 100%);
  	position: absolute;
  	left: 50%;
  	transform: translateX(-50%);
  	-webkit-transform: translateX(-50%);
  	-ms-transform: translateX(-50%);
  	bottom: -4em;
}
#lineCan .lineCaboxA{
	margin: 1em 0em;
}
.lineBtnArea{
	background-color: white;
	padding: 1em 1em;
	display: flex;
	border-radius: 0.5em;
	margin: 1em auto;
	width: 90%;
	align-items: center;
	color: black;
}
a::hover .lineBtnArea{
	text-align: black;
	opacity: 0.5;
}
#line-Area .lineBtnArea .lineBtnicon img{
	max-width: 6em;
	max-height: 4em;
	width: auto;
	height: auto;
}
.LineBtntitle{
	color: #06C755;
	font-weight: bold;
	font-size: 0.9em;
	margin: 0.5em 0 0;
}
.LineBtntext{
	font-size: 0.9em;
	line-height: 1.4rem;
}
.lineBtnL{
	float: left;
	width: 40%;
	text-align: center;
}
.lineBtn{
	float: right;
	margin-left: 1em;
	width: 80%;
}
.lineBtnCamenu{
	margin: 0 auto;
	text-align: center;
}
.lineBtnCamenu li{
	display: inline-block;
	width: calc(73%/3);
	padding: 0.5em 0.5em ;
	margin: 0.5em 0.2em;
	color: white;
	border-radius: 0.7em;
	font-size: 0.7em;
	text-align: center;
	line-height: 1.7em;
}
li.lineBtnPurpose{
	background-color: #06C755;
}
li.lineBtnItem{
	background-color: #DA0024;
}
li.lineBtnMessage{
	background-color: #E98B19;
}
.lineCantext{
	font-size: 1.6em;
	font-weight: bold;
	margin: 1.5em 1em;
}
.lineCanBox{
	display: block;
	margin: 0 auto 8em;
	text-align: center;
	position: relative;
	padding: 0 1em;
}
.lineCaSlideArea{
	background-color: #06C755;
	position: relative;
	width: 100%;
	display: inline-block;
	border-radius: 0.5em;
}
.lineCaSlideBtn{
	margin: 0.5em;
	text-align: center;
	border-radius: 0.5em;
	overflow: hidden;
	background-color: white;
}
.lineCaSlideBtn ul{
	display: flex;
	flex-wrap: wrap;
}
.lineCaSlideBtn li{
	display: flex;
	flex: calc(33% - 0rem);
	flex-direction: column;
	justify-content: center;
	position: relative;
	text-align: center;
	cursor: pointer;
	padding: 0.5rem;
	overflow: hidden;
	border: #06C755 1px solid;
}
#line-Area .lineBtnicon img{
	padding: 0.5em 0.5em 0;
	width: auto;
	height: auto;
	max-width: 90px;
	max-height: 60px;
}
.lineCaSlideBtn li .LineBtntitle{
	color: #06C755;
	font-size: 0.6em;
}
.lineCaSlideBtn li.lineCa-active{
  background-color: #06C755;
  color: white;
  overflow: hidden;
}
.lineCaSlideBtn li.lineCa-active .LineBtntitle{
	color: white;
}
.lineCaSlider .lineslide-content{
	background-color: #06C755;
	display: none;
	overflow: hidden;
	position: relative !important;
	border-radius: 1rem;
}
.lineCaSlider .is-lineSlide-active{
	display: block;
}
.lineslide-content .swiper-inner{
	background-color: white;
	margin: 4rem 0.5rem 1rem;
	padding: 4rem 0 1rem;
	overflow: hidden;
	border-radius: 0.5rem;
}
.lineCaSlider .swiper-controls{
	display: grid;
	grid-template-columns: 40px minmax(0,1fr) 40px;
	align-items: center;
	width: 100%;
	margin: 0 0 0.5rem;
}
.lineCaSlider .swiper-pagination{
	grid-column: 2;
	justify-self: center;

	position: static !important;
	inset: auto !important;
	width: auto !important;

	display: flex;
	align-items: center;
	justify-content: center;

	margin: 0;
	line-height: 1;
	transform: translateY(6px); 
}
.lineCaSlider .swiper-button-prev,.lineCaSlider .swiper-button-next{
	position: static !important;
	color: white;
	font-size: 1.5em;
	cursor: pointer;
}
.lineCaSlider .swiper-button-prev:after,.lineCaSlider .swiper-button-next:after{
	display: none;
}
.lineCaSlider .swiper-button-prev{
	grid-column: 1;
	justify-self: start;
}
.lineCaSlider .swiper-button-next{
	grid-column: 3;
	justify-self: end;
}
.lineCaSlider .swiper-pagination-bullet{
	width: 13px !important;
  height: 13px !important;
  margin: 0 6px !important;
  background: white !important;
}
.linecancircleTi{
	background: #06C755;
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	padding: 0.5rem 0;
	position: absolute !important;
	z-index: 10;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
#line-Area .linecancircleIMG{
	text-align: center;
	margin: 0 0 0;
}
#line-Area .linecancircleIMG img{
	width: auto;
	height: 4rem;
}
h2.slidetabTitle{
	text-align: center;
	font-size: 0.8em;
	padding: 0.25em 0 0em;
	color: white;
	line-height: 1.3;
}
.lineCaicon{
	display: block;
	position: relative;
	margin: 1rem 0;
}
.lineBoxBlueArea,.lineBoxRedArea{
	padding: 1.5em 1.5em;
}
.lineBoxBlueArea{
	background-color: #005980;
}
.lineBoxRedArea{
	background-color: #DA0024;
}
.lineBoxBlueArea .lineBoxWH,.lineBoxRedArea .lineBoxWH{
	background-color: white;
	padding: 1em 2em;
	text-align: center;
	border-radius: 2em;
}
.lineBoxBlueArea .lineBoxWH{
	color: #005980;
}
.lineBoxRedArea .lineBoxWH{
	color: #DA0024;
}
.lineBoxWH p{
	font-size: 0.8em;
	line-height: 1.3em;
}
.LineBoxText{
	font-size: 0.8em;
	padding: 0.5em 1em;
	color: white;
	margin: 1em 0em;
	font-weight: bold;
}
.lineBoxBlue{
	background-color: #005980;
}
.lineBoxRed{
	background-color: #DA0024;
}
.lineBoxTi{
	position: relative;
	display: block;
	font-size: 0.9em;
	line-height: 1.3em;
}
.lineBoxicon{
	position: absolute;
	top: -2em;
	left: 0;
}
#line-Area .lineBoxicon img{
	width: 4em;
}
@media screen and (min-width: 962px) {
  .line-categoryArea .line-h2Ti {
    font-size: 2em;
  }
  .lineCaArea p.lineCaText {
    font-size: 1em;
    width: 70%;
  }
  .lineCaicon-01::after,
  .lineCaicon-02::after {
    top: -1em;
  }
  .lineCastepArea {
    margin: 3em 1em;
  }
  .lineCastepArea li {
    width: 70%;
  }
  .lineCastepArea li p{
  	line-height: 1.3;
  }
  #lineCan .lineCaboxA {
    margin: 4em 8em;
  }
  .lineBtnArea{
  	width: 100%;
  }
  .lineBtnL{
  	width: 30%;
  }
  .lineBtn {
    margin: 0 1rem 0 1rem;
  }
  .LineBtntext{
  	font-size: 1em;
  }
  .lineBtnCamenu li {
    font-size: 1.1em;
  }
  .lineCantext {
    margin: 1.5em 2em;
  }
  .lineCanBox {
    padding: 0 3.5em;
  }
  .lineCaSlideBtn li .LineBtntitle {
    font-size: 1em;
    margin: 0.5em 0;
    line-height: 1.3;
  }
  .lineCaSlideBtn .lineCa-active::after {
    bottom: -2.5em;
  }
  .lineBoxBlueArea,
  .lineBoxRedArea {
    margin: 0 8em;
  }
  .lineBoxWH p {
    font-size: 0.9em;
    line-height: 1.4em;
  }
  .LineBoxText {
    font-size: 1em;
  }
  .lineBoxTi {
    font-size: 1em;
    line-height: 1.5em;
  }
  .lineBoxicon {
    left: 6em;
  }
  #line-Area .lineBtnicon img{
  	max-width: 100px;
  	max-height: 70px;
  	height: auto;
  }
  .linecancircleTi{
  	width: 17vmin;
  	height: 17vmin;
  	padding: 0.7rem 0 0;
  }
  #line-Area .linecancircleIMG img{
  	height: 70px;
  }
  h2.slidetabTitle{
  	font-size: 1.1em;
  }
  .lineslide-content .swiper-inner{
  	text-align: center;
  	padding: 5rem 0 1rem;
  }
  #line-Area .lineslide-content .swiper-inner img{
  	width: 90%;
  }
  #line-Area .lineBoxicon img{
		width: 3em;
	}
}




/*-----------------------
  	新規ご注文方法(LINE)
------------------------*/
.LINEhowtoArea{
	max-width: 820px;
	margin: 0 auto;
}
.LINEhowtoArea img{
	max-width: 100%;
	width: auto;
	text-align: center;
}
.LINEhowtoArea p{
	margin: 1em 0;
	padding: 0.5em 1em;
}
.howto_order_area{
     counter-reset: h2;
}
.howto_order_area p.text_block{
     position: relative;
     padding: 0.5em 1em;
}
.howto_order_stepbox{
     margin: 3em 0;
}
.howto_order_stepbox:not(:last-child) {
     border-bottom: #DA0024 dashed 0.2em;
     padding: 0.3em 0 3em;
}
.howto_order_stepbox:last-child {
     margin: 6em 0;
}
h2.howto_order_step_title{
    color: #DA0024;
    font-weight: bold;
    text-align: center;
    font-size: 1.5rem;
    padding-bottom: 1em;
    margin: 2em 0;
    line-height: 1.3;
    position: relative;
     background-image: linear-gradient(90deg, black 0 25%, white 25% 37.5%,#E73881 37.5% 62.5%,white 62.5% 75%, black 75% 100%);
     background-repeat: no-repeat;
     background-size: 25% 0.3rem;
     background-position: bottom;
}
h2.howto_order_step_title::before{
    content: "STEP"counter(h2) ;
    position: absolute;
    counter-increment: h2;
    top: -1.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
h2.howto_order_step_title_counter{
    color: #DA0024;
    font-weight: bold;
    text-align: center;
    font-size: 1.5em;
    padding-bottom: 0.8em;
    margin: 2em 0;
    position: relative;
     background-image: linear-gradient(90deg, black 0 25%, white 25% 37.5%,#E73881 37.5% 62.5%,white 62.5% 75%, black 75% 100%);
     background-repeat: no-repeat;
     background-size: 25% 0.3rem;
     background-position: bottom;
}
h2.howto_order_step_title_counter::before{
    content: "STEP"counter(h2) ;
    position: absolute;
    counter-increment: h2;
    top: -1.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
h2.howto_order_step_title_estimate{
    color: black;
    font-weight: bold;
    text-align: center;
    font-size: 1.5em;
    padding-bottom: 1.3em;
    margin: 2em 0;
    position: relative;
     background-image: linear-gradient(90deg, black 0 25%, white 25% 37.5%,#E73881 37.5% 62.5%,white 62.5% 75%, black 75% 100%);
     background-repeat: no-repeat;
     background-size: 25% 0.3rem;
     background-position: bottom;
}
h2.howto_order_step_title_estimate::before{
    content: counter(h2)"" ;
    position: absolute;
    counter-increment: h2;
    background: #E73881;
    width: 1.5em;
    height: 1.5em;
    color: white;
    padding: 0.25em 0;
    top: -2.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
}
.howto_order_stepbox .swiper-slide{
	text-align: center;
}
.howto_order_stepbox .swiper-pagination-bullet{
    width: 12px !important;
    height: 12px !important;
    margin: 0 0 0 10px !important;
    background: #DA0024 !important;
}
.howto_order_stepbox .swiper-button-prev,
.howto_order_stepbox .swiper-button-next{
    font-size: 2.5em;
    color: #DA0024;
}
.howto_order_stepbox .swiper-button-prev:after,
.howto_order_stepbox .swiper-button-next:after {
    display: none;
}
.howto_order_Menu{
	margin: 2rem 1rem;
}
.howto_order_Menu ul{
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem 0.6rem;
}
.howto_order_Menu ul li{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	flex: 1 1 calc(9rem - 0.6rem);
	background-color: #EBBDD1;
	border: 0.3rem solid #C58CA5;
}
.howto_order_Menu ul li a{
	padding: 1.5rem 0.5rem;
	color: #000000;
	position: relative;
}
.howto_order_Menu ul li a > .orderMenu{
	vertical-align: middle;
	line-height: 1.1rem;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.howto_order_Menu ul li.is-active{
	background-color: white;
}
.howto_order_Menu ul li.is-active::before{
	content: '';
	position: absolute;
	border-top: 1rem solid #C58CA5;
	border-right: 0.8rem solid transparent;
	border-left: 0.8rem solid transparent;
	bottom: -2rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 10;
}
.howto_order_Menu ul li.is-active::hover{
	color: black;
	text-decoration: none;
}
#howto_neworder01{
	display: block;
}	
#howto_neworder02{
	display: none;
}

/*------------------------------------
						ご注文方法ページ		
------------------------------------*/
.OrderpageboxArea{
	margin: 3em 0;
	overflow: hidden;
}
h3.OrderPageBoxTitle{
	color: #DA0024;
	font-size: 1.3em;
	font-weight: bold;
	text-align: center;
	margin: 1em 0;
	line-height: 1.5;
}
.OrderPageBoximg{
	margin: 0 1em;
}
.OrderPageBoxText{
	margin: 1em;
	font-size: 1rem;
}
.OrderPagebtnmenu{
	margin: 0 1em;
}
.OrderPagebtnmenu ul{
	display: flex;
	gap: 0.5em;
}
.OrderPagebtnmenu li{
	display: flex;
	flex: 1 1 calc(33% - 0.5em);
	justify-content: center;
	border: solid 2px #DA0024;
	background-color: white;
	color: #DA0024;
	text-align: center;
	line-height: 1.3;
	padding: 0.5em;
	border-radius: 0.5em;
	font-size: 1em;
}
.OrderPagebtnmenu li .OPAbtnimg{
	margin: 0 0 0.5em;
}
.OrderPagebtnmenu li:hover{
	opacity: 0.5;
}
.orderpageimgArea{
	margin: 1em 1em;
}
.pageStepchildArea > ul{
	counter-reset: stpnum;
}
.pageStepchildArea > ul > li{
	margin: 0 0;
	border-bottom: dotted 2px #DA0024;
	padding: 1rem 0 3rem;
}
.pageStepchildArea > ul > li:last-child{
	border-bottom: none;
}
h3.PageStepTitle{
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	position: relative !important;
	margin: 12rem 0 3rem;
}
h3.PageStepTitle::before{
	content: 'STEP\A'counter(stpnum, decimal-leading-zero);
	counter-increment: stpnum;
	white-space: pre;
	position: absolute;
	bottom: 3rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	background-color: var(--step-bg);
	color: var(--step-color);
	padding: 1.35em 0 0 ;
	border-radius: 50%;
	width: 7rem;
	height: 7rem;
	line-height: 1.2;
}
.orderstepTextArea{
	margin: 0 1em;
	font-size: 1rem;
	position: relative;
}
.orderstepTextArea img{
	margin: 0 auto 0.5em;
	display: flex;
	justify-content: center;
}
.orderpageToc{
	margin: 2em 1em 2em;
	font-size: 1rem;
}
.rteSteps{
	border: solid 3px #E73881;
	border-radius: 0.5em;
	background-color: #fdf5f5;
}
.rteSteps__head{
	border-bottom: solid 1px #E73881;
	padding-bottom: 1em;
	color: white;
	text-align: center;
	font-size: 1.3em;
	font-weight: bold;
	padding: 1em;
	border-radius: 0.1em 0.1em 0 0 ;
	background-color: #E73881;
}
.rteSteps_content{
	color: #E73881;
	font-weight: bold;
}
.rteSteps_content > ol > li{
	padding: 1em 0;
}
.rteSteps_content > ol > li .rteSteps__no{
	display: flex;
	flex-direction: column;
	padding-left: 1em;
	position: relative;
	text-align: center;
	line-height: 1.2;
}
.rteSteps_content > ol > li .rteSteps__text{
	padding-left: 2em;
	text-decoration: underline;
}
.rteSteps_content > ol > li:not(:last-child){
	border-bottom: dotted 2px #E73881;
}
.rteSteps_content > ol > li > a{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.rteSteps_content > ol > li > a:hover{
	opacity: 0.5;
}
.rteSteps__icon{
	width: 1.1em;
  height: 1.1em;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 0.4em;
  vertical-align: middle;
}
.rteSteps__icon--tshirts{
	background-image: url(../img/decoration-icon/tshirts.png);
}
@media screen and (min-width: 962px) {
	.pageStepchildArea > ul > li{
		border-bottom: dotted 4px #DA0024;
	}
	.orderstepTextArea img{
		margin: 0 auto 1em;
		max-height: 400px;
		border: solid 1px black;
	}
	.rteSteps{
		border: solid 4px #E73881;
	}
	.rteSteps__head{
		border-bottom: solid 3px #E73881;
	}
	.rteSteps_content > ol > li .rteSteps__no{
		padding-left: 2em;
	}
	.rteSteps_content > ol > li:not(:last-child){
		border-bottom: dotted 3px #E73881;
	}
	h3.OrderPageBoxTitle{
		font-size: 1.5em;
	}
	.OPAbtnimg img{
		max-width: 100%;
		max-height: 5em;
		width: auto;
		height: auto;
	}
	.OrderPagebtnmenu li .OPAbtnimg{
		margin: 0 0 1em;
	}
	.OrderPagebtnmenu li{
		font-size: 1.2em;
	}
}

/*------------------------------------
						追加注文ページ		
------------------------------------*/
#addorder_area p{
	font-size: 16px;
}
#addorder_area .addorder-pointArea h3.addorder-PoTi{
	background-color: #D83079;
	color: white;
	font-size: 1.2rem;
	padding: 1rem 1rem;
	text-align: center;
	position: relative;
}
#addorder_area .addorder-pointArea h3.addorder-PoTi::before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	border-top: 3rem solid #D83079;
	border-right: 1.5rem solid transparent;
	border-left: 1.5rem solid transparent;
	top: 2.5rem;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.addorder-pointArea{
}
.addorder-Point{
	margin: 3rem 0 0 ;
	counter-reset: li1;
}
.addorder-Point ul{
}
.addorder-Point ul li{
	background-color: #FADDE1;
	padding: 1rem 2rem 1rem 7rem;
	font-size: 1rem;
	margin: 1.5rem 0;
	border-radius: 0.5rem;
	position: relative;
}
.addorder-Point ul li::before{
	white-space: pre-wrap;
	counter-increment: li1;
	content: "Point\A"counter(li1, decimal-leading-zero);
	position: absolute;
	display: inline-block;
	left: 1.7rem;
	color: #D83079;
	font-weight: 900;
	font-size: 1.2rem;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
span.small{
	font-size: 0.8rem;
}
.addorder-attention{
	margin: 2rem 0 0;
	color: #DA0024;
}
.addorder-attention li{
	margin: 1rem 0 1rem 1.5rem;
	position: relative;
}
.addorder-attention li::before{
	content: "※";
	left: -1.3rem;
	position: absolute;
	display: inline-block;
}
.addorder-How{
	margin: 3rem 0;
}
#addorder_area h3.addorder-HowTi{
	text-align: center;
	font-size: 1.4rem;
	position: relative;
	margin: 4rem 0 4rem;
	font-weight: bold;
}
#addorder_area h3.addorder-HowTi::before{
	content: "";
	width: 30%;
	height: 0.3rem;
	background: #D83079;
	position: absolute;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    bottom: -0.8rem;
    border-radius: 0.5rem;
}
#addorder_area .textblock{
	margin: 1rem 0;
}
.addorder-Howhead{
	margin: 1rem 0 2rem;
}
.addorder-menu ul{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.5rem;
	overflow: hidden;
	align-items: stretch;
}
.addorder-menu ul li{
	width: calc(50% - 0.25rem);
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}
.addorder-menu ul li a{
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.addorder-menu ul li .addorder-menuTi{
	padding: 0.5rem 0.5rem;
	display: block;
	background-color: #D83079;
	color: white;
	text-align: center;
	font-size: 0.8rem;
	line-height: 1.3rem;
}
.addor-menuIconimg{
	background-color: #D9D9D9;
	height: 7rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.addorder-menu ul li a:hover{
	text-decoration: none;
	color: white;
}
.addorder-body{
	margin: 2rem 0;
}
.addorder-Box{
	margin: 0rem 0 3rem;
	padding: 5rem 1rem;
}
.addorder-Box:nth-child(even){
	background-color: #fffaf0;
}
.addorder-Box:nth-child(odd){
	background-color: #ffffff;
}
.addorder-Box:not(:last-child){
	border-bottom: solid 0.15rem #D83079;
}
.addor-iconImg{
	text-align: center;
}
#addorder_area h4.addorBoxTi{
	text-align: center;
	font-size: 1.2rem;
	margin: 1rem 0 3rem;
	position: relative;
	font-weight: bold;
}
#addorder_area h4.addorBoxTi::before{
	content: "";
	width: 30%;
	height: 0.25rem;
	background: #D83079;
	position: absolute;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    bottom: -1.2rem;
    border-radius: 0.5rem;
}
.addor-redbtn{
	margin: 3rem 0;
	text-align: center;
}
.addor-redbtn a{
	display: inline-block;
	background-color: #DA0024;
	font-size: 1rem;
	padding: 1rem 2rem;
	position: relative;
	color: white;
	border-radius: 0.5rem;
}
.addorChildBox{
	margin: 2rem 0;
}
.addorChildBox:not(:last-child){
	border-bottom: dotted 0.15rem #bbbbbb;
	margin: 5rem 0 4rem;
	padding: 0 0 1rem;
}
.addorChildTiArea{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.5rem;
	justify-content: center;
	align-items: center;
	margin: 0 0 2rem;
}
h5.addorChildTitle{
	font-size: 1em;
	font-weight: bold;
}
.addorChildImg{
	margin: 1rem 0;
	text-align: center;
}
.addorChildImg img{
	border: black solid 1px;
}
h5.addor-minimidashi{
	position: relative;
	text-align: center;
	font-weight : bold;
	margin: 5rem 0 0rem;
}
h5.addor-minimidashi::before{
	content : '';
	position : absolute;
    left : 1em;
    bottom : -0.2rem;
	background: url(../img/css-parts/slash05.png) no-repeat;
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1em;
	width: 1.5em;
	height: 1.5em;
	padding-right: 0.5em;
}
h5.addor-minimidashi::after{
	content : '';
	position : absolute;
    right : 1em;
    bottom : -0.2rem;
	background: url(../img/css-parts/slash06.png) no-repeat;
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1em;
	width: 1.5em;
	height: 1.5em;
	padding-right: 0.5em;
	text-align: left;
}
.addorChild2box{
	margin: 4rem 0 5rem;
}
div.addorChild2box:not(:last-child){
	border-bottom: dotted 0.15rem #bbbbbb;
	margin: 4rem 0 3rem;
	padding: 0 0 1rem;
}
h5.addorChild2TiB{
	margin: 2rem 1rem 2rem;
	font-size: 1em;
	text-align: center;
	line-height: 1.4;
	font-weight: bold;
}
span.addorChild2Tiicon{
	display: block;
}
span.addorChild2Tiicon img{
	width: 6rem;
	height: auto;
	vertical-align: middle;
}
span.addorChild2Title{
	background-color: #EBBDD1;
	display: inline-block;
	padding: 0.5rem 1rem;
	vertical-align: middle;
	margin: 2rem 0 0 0;
	position: relative;
}
span.addorChild2Title::before{
	content:"";
	width: 0;
	height: 0;
	position: absolute;
	border-top: 0.8rem solid transparent;
	border-right: 0.8rem solid transparent;
	border-left: 0.8rem solid transparent;
	border-bottom: 1.5rem solid #EBBDD1;
	top: -2rem;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.addorChild2box .textblock{
	margin: 1rem 0;
}
#addorder_area .textblock > p:has(img){
	margin: 1em 0;
	border: solid 1px black;
}
.addorder-NewsBox{
	background-color: white;
	border: solid 0.2rem #FADDE1;
	border-radius: 0.5rem;
	margin: 2rem 0 3rem;
}
.addorder-NewsTi{
	background-color: #FADDE1;
	color: black;
	padding: 1rem 0.5rem;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
}
.addorder-Newstext{
	padding: 1rem 1rem;
	color: black;
}
@media screen and (min-width: 962px) {
	#addorder_area .addorder-pointArea h3.addorder-PoTi{
		font-size: 1.5em;
		padding: 1.5rem 1.5rem;
	}
	#addorder_area .addorder-pointArea h3.addorder-PoTi::before{
		top: 3.5rem;
	}
	.addorder-pointArea{
		font-size: 1.1em;
	}
	.addorder-Point{
		margin: 5rem 0 0;
		font-size: 1.2em;
	}
	.addorder-Point ul li{
		padding: 1rem 2rem 1rem 10rem;
		font-size: 0.9em;
		line-height: 1.6rem;
	}
	.addorder-Point ul li::before{
		left: 3.2rem;
	}
	span.small{
		font-size: 0.8em;
	}
	.addorder-attention{
		margin: 3rem 0 0;
	}
	.addorder-attention li{
		margin: 1.5rem 0 1.5rem 1.5rem;
	}
	.addorder-How{
		font-size: 1.1em;
	}
	#addorder_area h3.addorder-HowTi{
		font-size: 1.7rem;
		margin: 8rem 0 6rem;
	}
	#addorder_area h3.addorder-HowTi::before{
		bottom: -1.6rem;
	}
	#addorder_area .textblock{
		margin: 2rem 0;
		font-size: 1em;
	}
	.addorder-Howhead{
		margin: 1rem 0 3rem;
	}
	.addorder-menu{
		margin: 0 auto;
	}
	.addorder-menu ul li{
		width: calc(25% - 0.5rem);
	}
	.addorder-menu ul li .addorder-menuTi{
		font-size: 0.8em;
		line-height: 1.5;
	}
	.addorder-menu ul li a:hover{
		opacity: 0.7;
	}
	.addorder-Box{
		margin: 5rem 0 7rem;
		border: solid 0.2rem #D83079;
		padding: 3rem 3rem 0;
		border-radius: 2rem;
	}
	#addorder_area h4.addorBoxTi{
		font-size: 1.2rem;
		margin: 2rem 0 5rem;
		line-height: 1.3;
	}
	#addorder_area h4.addorBoxTi::before{
		width: 40%;
		bottom: -2rem;
	}
	.addor-redbtn a{
		font-size: 1.2rem;
		padding: 1.3rem 4rem;
		border-radius: 1rem;
		border: 1px solid #DA0024;
	}
	.addor-redbtn a:hover{
		color: #DA0024;
		text-decoration: none;
		border: 1px solid #DA0024;
		background-color: white;
	}
	.addorChildBox{
		margin: 8rem 0 4rem;
	}
	.addorChildBox:not(:last-child){
		margin: 8rem 0 4rem;
		border-bottom: solid 0.15rem #D83079;
	}
	.addorChildTiArea{
		gap: 2rem 2rem;
		margin: 0 0 4rem;
	}
	h5.addorChildTitle{
		font-size: 1.3em;
	}
	.addorChildImg{
		overflow: hidden;
	}
	.addorChildImg img{
		max-width: 99%;
	}
	h5.addor-minimidashi::before{
		left: 10em;
	}
	h5.addor-minimidashi::after{
		right: 10em;
	}
	h5.addorChild2TiB{
		font-size: 1em;
	}
	span.addorChild2Tiicon{
		display: inline-block;
	}
	span.addorChild2Title{
		margin: 0 0 0 1.5rem;
		text-align: left;
	}
	span.addorChild2Title::before{
		border-top: 0.8rem solid transparent;
		border-right: 1.5rem solid #EBBDD1;
		border-bottom: 0.8rem solid transparent;
		top: 50%;
		left: -2em;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	}
	.addorder-NewsTi{
		font-size: 1.1rem;
	}
	.addorder-Newstext p{
		font-size: 1.1em;
	}
}

/*-----------------------
  	最短3営業日出荷
------------------------*/
.customer_worriesimg{
	margin: 4em auto;
	text-align: center;
}
h3.introductiontitle{
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	margin: 1em 0;
}
.shipping-dateArea{
		display: flex;
		flex-wrap: wrap;
		gap: 0.5em;
}
.truckirast-fast,.truckirast-normal{
	position: relative;
}
.truckirast-fast img,.truckirast-normal img{
	display: block;
  height: 100%;
  width: auto;
}
.shipping-data-fast,.shipping-data-normal{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	flex: 0 0 calc(50% - 0.5em);
}
.shipping-fast-inner,.shipping-normal-inner{
	position: relative;
  width: 100%;
  margin: 3em 0 0;
}
.truckirast-fast,.truckirast-normal{
	position: absolute;
  top: -40px;
  left: 0;
  height: 3em;
  z-index: 2;
}
.truckirast-fast{
	animation: truck-move-fast 1s linear infinite;
}
@keyframes truck-move-fast{
  0%{
    transform: translateX(-10%);
    opacity: 0;
  }
  6%{
    transform: translateX(0);
    opacity: 1;
  }
  80%{
    left: calc(100% - 3em);
    opacity: 1;
  }
  90%{
    left: calc(100% - 3em);
    opacity: 0; /* 右端でふわっと消える */
  }
  91%{
    left: -3em;
    opacity: 0;
  }
  100%{
    left: -3em;
    opacity: 0; /* 次ループの0%へ繋がる */
  }
}
.truckirast-normal{
	animation: truck-move-normal 3s linear infinite;
}
@keyframes truck-move-normal{
  0%{
    transform: translateX(-10%);
    opacity: 0;
  }
  6%{
    transform: translateX(0);
    opacity: 1;
  }
  80%{
    left: calc(100% - 3em);
    opacity: 1;
  }
  90%{
    left: calc(100% - 3em);
    opacity: 0; /* 右端でふわっと消える */
  }
  91%{
    left: -3em;
    opacity: 0;
  }
  100%{
    left: -3em;
    opacity: 0; /* 次ループの0%へ繋がる */
  }
}
.shipping-data-box{
	text-align: center;
	padding: 0.5em 0;
}
.shippingfast-box{
	background-color: #EB8499;
}
.shippingnormal-box{
	background-color: #FAC600;
}
h4.shipping-data-Title{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}
.shippingdata-Title-strong{
	font-size: 1.4em;
	font-weight: bold;
}
.shippingdata-Title-small{
	font-size: 0.9em;
}
.shipping-data-dayBox{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	background-color: white;
	margin: 0.25em 0.5em 0;
	padding: 0.5em;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.2;
}
.shipdata-toptext{

}
.shipdata-day{
	font-size: 2em;
}
.shipdata-bottomtext{

}
.shipping-arrow{
	margin: 2em auto;
	width: 94px;
}
.shipping-conditionsPoint{
	background-color: #EB8499;
	display: block;
	padding: 1em;
}
.scpTitle{
	text-align: center;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	position: relative;
}
.scpTitle::after{
	content: '';
	position: absolute;
	top: -2.5em;
	right: 2em;
	background: url("../img/rai-illust/34.png") no-repeat;
	width: 5em;
	height: 4em;
	background-size: contain;
}
.scpTitle-small{
	font-size: 1.2em;
}
.scpTitle-strong{
	font-size: 1.4em;
}
.scptextarea{
	background-color: white;
	margin: 1em 0 0;
	padding: 0 0 1em;
	position: relative;
}
.scptextarea ul{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	padding: 2em 1em 1em 3em;
}
.scptextarea li{
	margin: 0.5em 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	line-height: 1.4;
	font-size: 1.2em;
	font-weight: bold;
	position: relative;
}
.scptextarea li::before{
	content: " ";
	position: absolute;
	top: 0.3em;
	left: -1em;
	background-color: #EB8499;
	color: #EB8499;
	border-radius: 50%;
	width: 0.6em;
	height: 0.6em;
}
.scpbutton{
	margin: 0.5em auto 1em;
	text-align: center;
}
.scpbutton a{
	background-color: #EB8499;
	border: solid 0.15em #EB8499;
	padding: 0.5em 1em;
	display: inline-block;
	width: 70%;
	color: white;
	font-weight: bold;
	text-align: center;
	border-radius: 0.5em;
	box-shadow: #8C3F4F 0.3em 0.3em 0;
	position: relative;
}
.scpbutton a::after{
	content: "\f0a9";
 	display: inline-block;
 	position: absolute;
 	font-size : 1.2em;
 	right: 1em;
 	background-size: contain;
 	vertical-align: middle;
  font-weight: 900;
	font-family: "Font Awesome 5 Free"; 
}
.ship-orderhow{
	background-color: #2E2446;
	padding: 1em;
}
.ship-orderhowBox{
	background-color: white;
	padding: 1em;
}
.ship-orderhowTitle{
	text-align: center;
	font-size: 1.5em;
	font-weight: bold;
	position: relative;
	margin: 1em auto 1em;
	border-bottom: solid 4px #EB8499;
	padding-bottom: 0.5em;
	width: 70%;
}
.ship-orderhowlistArea ol{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	margin: 0 1em 0 2.5em;
	counter-reset: shiporderli;
}
.ship-orderhowlistArea li{
	display: flex;
	flex-wrap: wrap;
	counter-increment: shiporderli;
	font-size: 1.2em;
	font-weight: bold;
	align-items: center;
	position: relative;
	margin: 0.5em 0;
}
.ship-orderhowlistArea li::before{
	content: counter(shiporderli, decimal)'';
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #EB8499;
	border-radius: 50%;
	width: 1.5em;
	height: 1.5em;
	font-weight: bold;
	font-size: 1em;
	position: absolute;
	color: white;
	top: 0;
	left: -2em;
}
.ship-orderhowtex{
	margin: 0.5em 1em 1em 2.5em;
	font-size: 1.2em;
	font-weight: bold;
}
.ship-paragraph{
	margin: 5em 0;
}
.ship-paragraph-Title{
	text-align: center;
	font-size: 1.5em;
	margin: 1em 0;
	font-weight: bold;
	line-height: 1.6;
}
.ship-paragraph .textblock{
	margin: 1em 1em;
}
.shipping-reasonStepmenu{
	margin: 4em auto ;
}
.shipping-reasonStepmenu ol{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	counter-reset: shipreali;
}
.shipping-reasonStepmenu li{
	flex: 1 1 calc(33% - 0.5em);
	background-color: #EB8499;
	border: solid 0.1em #EB8499;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	counter-increment: shipreali;
	position: relative;
}
.shipping-reasonStepmenu li::before{
	content: ''counter(shipreali, decimal-leading-zero);
	position: absolute;
	font-size: 2em;
	font-weight: bold;
	color: #EB8499;
	top: -1em;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.shipping-reasonStepmenu li a{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	width: 100%;
	height: 100%;
	padding: 1em;
	box-sizing: border-box;
	color: inherit;
	text-align: center;
	justify-content: center;
	align-items: center;
}
.shipping-reasonStepmenu li:hover{
	background-color: white;
}
.shipping-reasonStepmenu li:hover::before{
	opacity: 0.5;
}
.shipping-reasonStepmenu li img{
	max-width: 4em;
	max-height: 2em;
	width: auto;
	height: auto;
	margin: 0.5em 0 0;
}
.shipping-reasonStepmenu li .Menutext{
	font-weight: bold;
	font-size: 1em;
	line-height: 1.3;
}
.shipping-reasonbody{
	counter-reset: shipreapra;
}
.shipping-reasonbox{
	margin: 2em 0;
	padding: 2em 0;
	counter-increment: shipreapra;
}
.shipping-reasonbox:not(:last-child){
	border-bottom: solid 0.3em #EB8499;
	padding-bottom: 3em;
}
.shipping-reasonTitle{
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	position: relative;
	margin: 0 0 2em;
	line-height: 1.3;
}
.shipping-reason-titletext,.shipping-reasonTitle::before{
	z-index: 2;
	position: relative;
}
.shipping-reasonTitle::before{
	content: ''counter(shipreapra, decimal-leading-zero);
	display: block;
}
.shipping-reason-titleicon{
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
}
.shipping-reason-titleicon img{
	max-width: 4em;
	max-height: 4em;
	width: auto;
	height: auto;
}
.shipping-reasonText{
	font-weight: bold;
	font-size: 1.1em;
	margin: 1em 0;
}
.shipping-reasontextblock h4{
	margin: 0.5em 0;
	font-size: 1.2em;
	font-weight: bold;
}

/*モーダル*/
#shippingmodalbox{
	display: none;
}
.scpModalArea{
	display: none; /* 初期状態は非表示 */
  width: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999 !important;
  height: 100vh;
  overflow: auto;
  transition: max-height 0.3s ease-in-out;
}
.scpModalclose{
	color: #EB8499;
	font-size: 4em;
	font-weight: bold;
	position: absolute;
	top: 0.5em;
	right: 0.2em;
	cursor: pointer;
}
.scpModalBox{
	background-color: #EB8499;
	padding: 1em;
	margin: 5em 0.5em;
	max-width: 800px;
	position: relative;
}
.scpModalTitle{
	background-color: #EB8499;
	color: white;
	font-size: 1.5em;
	text-align: center;
	display: block;
	font-weight: bold;
	width: 100%;
	padding: 0.5em 1em 1em;
}
.scpmodalbody{
	background-color: white;
	padding: 1em 1em;
}
.scpModalstep{
	margin: 1em 0;
}
.scpModalstep > ol{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	counter-reset: scpModalstepli;
	padding: 0 0 0 1.5em;
}
.scpModalstep > ol > li{
	display: flex;
	flex-wrap: wrap;
	counter-increment: scpModalstepli;
	position: relative;
	margin: 0 0 2em;
}
.scpModalstep > ol > li > h4{
	font-size: 1.3em;
	font-weight: bold;
	margin-bottom: 0.5em;
	line-height: 1.4;
}
.scpModalstep > ol > li::before{
	content: ''counter(scpModalstepli, decimal);
	position: absolute;
	color: white;
	top: 0;
	left: -1.7em;
	background-color: #EB8499;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1.5em;
	height: 1.5em;
	font-weight: bold;
	padding: 0.2em;
}
.scpModalattention{
	margin: 4em 0;
}
.scpModalattentionTitle{
	font-size: 1.3em;
	font-weight: bold;
	color: #EB8499;
	border-top: solid 0.1em #EB8499;
	border-bottom: solid 0.1em #EB8499;
	padding: 0.5em 0;
	text-align: center;
	margin: 1em 0 2em;
}
.scpModalattentionText .annotation2{
	margin: 1em 0 2em 1em;
}
@media screen and (min-width: 962px) {
	h3.introductiontitle{
		font-size: 2em;
		margin: 2em 0 3em;
	}
	.truckirast-fast{
		animation: truck-move-normal 2s linear infinite;
	}
	.truckirast-normal{
		animation: truck-move-normal 5s linear infinite;
	}
	.shippingdata-Title-strong{
		font-size: 1.7em;
	}
	.shippingdata-Title-small{
		font-size: 1.1em;
	}
	h4.shipping-data-Title{
		line-height: 1.4;
	}
	.shipping-data-dayBox{
		font-size: 1.6em;
	}
	.shipping-arrow{
		margin: 4em auto;
	}
	.shipping-attentionArea{
		font-size: 1rem;
	}
	.shipping-conditionsPoint{
		font-size: 1rem;
	}
	.scpTitle{
		line-height: 1.4;
	}
	.scpTitle::after{
		top: -2.5em;
		right: 11em;
	}
	.scptextarea ul{
		padding: 2em 5em 1em 7em;
	}
	.scptextarea li{
		font-size: 1.4em;
	}
	.scptextarea li::before{
		width: 0.8em;
		height: 0.8em;
	}
	.scpbutton{
		margin: 1em auto 2em;
	}
	.scpbutton a{
		font-size: 1.3em;
		padding: 1em;
	}
	.scpbutton a:hover{
		background-color: white;
		color: #EB8499;
		box-shadow: none;
		transform: translateX(0.3em) translateY(0.3em);
		transition: .5s;
		animation: scpbutton-spacing .5s ease-out forwards;
	}
	.scpbutton a:hover::after{
		animation: scpbutton-rotate .5s ease-out forwards;
	}
	@keyframes scpbutton-spacing{
		0%{
			letter-spacing: 0;
		}
		50%{
			letter-spacing: 0;
		}
		100%{
			letter-spacing: 0.3em;
		}
	}
	@keyframes scpbutton-rotate{
		0%{
			transform: rotate(0deg);
		}
		50%{
			transform: rotate(360deg);
		}
		100%{
			transform: scale(0.8);
		}
	}
	.scpModalBox{
		margin: 5em auto;
		box-shadow: rgba(0,0,0,0.4) 0.5em 0.5em 2em;
		font-size: 1rem;
	}
	.scpModalclose:hover{
		animation: scpModalClose-rotate .5s ease-out forwards;
	}
	@keyframes scpModalClose-rotate{
		from{
			transform: rotate(0deg);
		}
		to{
			transform: rotate(180deg) scale(0.8);
		}
	}
	.scpModalTitle{
		font-size: 1.7em;
	}
	.scpmodalbody{
		padding: 2em ;
	}
	.scpModalattentionTitle{
		padding: 1em 0;
	}
	.scpModalattentionText a img:hover{
		opacity: 0.7;
		box-shadow: rgba(0,0,0,0.4) 0.2em 0.2em 0.7em;
		transform: translateY(-0.5em) scale(1.01);
		transition: .5s ease-out;
	}
	.ship-orderhow{
		font-size: 1rem;
	}
	.ship-paragraph{
		font-size: 1rem;
	}
	.shipping-reasonhead{
		width: 80%;
		margin: 0 auto;
	}
	.shipping-reasonImg{
		text-align: center;
	}
	.shipping-reasonStepmenu ol{
		gap: 2em;
	}
	.shipping-reasonStepmenu li{
		border: solid 0.2em #EB8499;
		flex: 1 1 calc(33% - 2em);
	}
	.shipping-reasonArea{
		font-size: 1rem;
	}
	.shipping-reasonText{
		margin: 2em 0;
	}
	.shipping-reasontextblock img{
		display: block;
		margin: 0 auto ;
	}
}
