@charset "UTF-8";
/*-------------------------------------------
	PAGE CONTENT
---------------------------------------------*/
.page-content .content-area {
	max-width: 100%;
}
@media screen and (min-width: 992px) {
	.page-content .content-area {
		max-width: 1240px;
	}
	.page-content.page-qa .content-area,
	.page-content.page-payment .content-area,
	.page-content.page-privacy .content-area {
		max-width: 960px;
	}	
}
@media screen and (min-width: 1500px) {
	.page-content.page-qa .content-area,
	.page-content.page-payment .content-area,
	.page-content.page-privacy .content-area {
		max-width: 1240px;
	}
}
/*-------------------------------------------
	PAGE MV
---------------------------------------------*/
.page-mv {
	background: #eef1f4;
	height: 130px;
	margin-bottom: 40px;
}
.page-mv-inner {
	position: relative;
	height: 100%;
}
.page-mv-ttl {
	font-size: 3rem;
	white-space: nowrap;
	font-weight: bold;
	margin: 0;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.page-mv-ttl span {
	display: block;
	font-size: 1.4rem;
	font-family: 'Overpass', sans-serif;
	text-align: center;
	color: #0d4d95;
	margin-top: 5px;
}
@media screen and (min-width: 992px) {
	.page-mv {
		height: 200px;
		margin-bottom: 90px;
	}
	.page-mv-ttl {
		font-size: 4rem;
	}
	.page-mv-ttl span {
		font-size: 1.6rem;
	}
}


/*-------------------------------------------
	PAGE TITLE
---------------------------------------------*/
.page-ttl {
	font-weight: bold;
	line-height: 1.2;
}
.page-ttl-02 {
	font-size: 3rem;
	text-align: center;
	margin-bottom: 30px;
	color: #0d4d95;
}
.page-ttl-03 {
	text-align: left;
    font-size: 2.8rem;
    padding-left: .4em;
    font-weight: bold;
    margin-bottom: 25px;
    border-left: 5px solid #0d4d95;
}
.page-ttl-04 {
	font-size: 2.4rem;
	color: #0d4d95;
	margin-bottom: 20px;
}
.page-ttl-05 {
	font-size: 2rem;
    padding-bottom: 10px;
    margin-bottom: 20px;
    color: #0d4d95;
    border-bottom: 1px solid #0d4d95;
}
@media screen and (min-width: 992px) {
	.page-ttl-02 {
		font-size: 4rem;
	}
	.page-ttl-03 {
		font-size: 3.4rem;
    	margin-bottom: 40px;
	}
	.page-ttl-04 {
		font-size: 3rem;
	}
	.page-ttl-05 {
		font-size: 2.4rem;
    	padding-bottom: 10px;
	}
}
/*-------------------------------------------
	PAGE TXT
---------------------------------------------*/
.txt-color-01 {
	color: #0d4d95;
}
.txt-color-02 {
	color: #f4554d;
}
.txt-color-03 {
	color: #ffe902;
}
.txt-box p {
	margin-bottom: 30px;
}
.txt-box p:last-child {
	margin-bottom: 0;
}
@media screen and (min-width: 768px) {
	.page-ttl-02 + p {
		text-align: center;
	}
}
/*-------------------------------------------
	PAGE NOTO
---------------------------------------------*/
.noto li {
	position: relative;
	padding-left: 1em;
	font-size: 1.4rem;
	color: #9d9d9d;
}
.noto li::before {
	content: "※";
	display: inline-block;
	font-size: 1.4rem;
	color: #9d9d9d;
	position: absolute;
	top: 0;
	left: 0;
}
/*-------------------------------------------
	PAGE LINK・STRONG
---------------------------------------------*/
.strong {
	display: inline-block;
	font-weight: bold;
	color: #0d4d95;
}
.link {
	display: inline-block;
	color: #2aaff3;
	-webkit-text-decoration: underline #2aaff3;
	        text-decoration: underline #2aaff3;
	position: relative;
}
.link p {
	position: relative;
	display: inline-block;
	-webkit-text-decoration: underline #2aaff3;
	        text-decoration: underline #2aaff3;
}
 .link .ico-common {
 	position: absolute;
    top: 0;
    right: -15px;
 }
 @media screen and (min-width: 768px) {
 	.link:hover {
 		color: #74cdfb;
 	}
 	.link p {
 		-webkit-transition: .4s;
 		-o-transition: .4s;
 		transition: .4s;
 	}
 	.link:hover,
 	.link:hover p {
 		-webkit-text-decoration: underline #74cdfb;
 				text-decoration: underline #74cdfb;
 	}
 }
 _:-ms-lang(x)::-ms-backdrop, .link, _:-ms-lang(x)::-ms-backdrop, .link p {
 	 	-webkit-text-decoration: underline;
 			text-decoration: underline;
        text-decoration-color: #2aaff3;
}
 /*-------------------------------------------
	PAGE BACKGROUND
---------------------------------------------*/
.page-bg-01 {
	background: #eef1f4;
}
/*-------------------------------------------
	PAGE PAGELINK
---------------------------------------------*/ 
.anchor-list a {
	border-top: 1px solid #cacaca;
	border-right: 1px solid #cacaca;
	border-left: 1px solid #cacaca;
	font-size: 1.6rem;
	padding: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;

}
.anchor-list li:last-child a {
	border-bottom: 1px solid #cacaca;
}
.anchor-list a .ico-common {
	color: #0d4d95;
	-webkit-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	        transform: rotate(90deg);
}
.anchor-list a .ico-common::before {
	font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
	.anchor-list a {
		border: none;
		border: 1px solid #cacaca;
		border-radius: 5px;
	}
	.anchor-list a:hover {
		color: #0d4d95;
	}
}


/*-------------------------------------------
	PAGE TABLE
---------------------------------------------*/ 
.tbl-01 th,.tbl-01 td {
	display: block;
	border-top: 1px solid #cacaca;
	border-right: 1px solid #cacaca;
	border-left: 1px solid #cacaca;
	padding: 15px;
}
.tbl-01 th {
	background: #0d4d95;
	color: #fff;
	font-weight: bold;
	text-align: left;
}
.tbl-01 tr:last-child td {
	border-bottom: 1px solid #cacaca;
}
.tbl-01 td.custom-td > .txt-color-01 {
	font-weight: bold;
	margin-bottom: 10px;
}
.tbl-01 td.custom-td > ul {
	margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
	.tbl-01 th,.tbl-01 td {
		display: table-cell;
		padding: 25px;
		border: none;
		border-top: 1px solid #cacaca;
		border-left: 1px solid #cacaca;
	}
	.tbl-01 th {
		vertical-align: top;
		width: 26%;
	}
	.tbl-01 td {
		border-right: 1px solid #cacaca;
	}
	.tbl-01 tr:last-child th {
		border-bottom: 1px solid #cacaca;
	}
	.tbl-01 tr:last-child td {
		border-bottom: 1px solid #cacaca;
	}
}
/*-------------------------------------------
	PAGE ECCUBE CONTENT
---------------------------------------------*/
.ec-layoutRole__mainBottom {
	margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
	.ec-layoutRole__mainBottom {
		padding: 0 20px;
	}
}
@media screen and (min-width: 992px) {
	.ec-layoutRole__mainBottom {
		margin-bottom: 120px;
	}
}
/*-------------------------------------------
	PAGE TEMPLATE
---------------------------------------------*/
.template-link {
	margin-top: 20px;
}
.template-link > p, .template-link a {
	margin-right: 20px;
}
.template-link a:last-child {
	margin-right: 0;
}
#template-btn ul li:last-child {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
@media screen and (max-width: 767px) {
	.template-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
  		-ms-flex-wrap: wrap;
  		    flex-wrap: wrap;
	}
	.template-link > p, .template-link a {
		margin-bottom: 10px;
	}
	.template-link a:last-child {
		margin-bottom: 0;
	}
}
@media screen and (min-width: 768px) {
	.template-link > p, .template-link a {
		margin-right: 20px;
	}
}	

/*-------------------------------------------
	PAGE form
---------------------------------------------*/
.form-gothic{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.page-confirm {
	padding-top: 40px;
}
.common-form form > p {
	margin-bottom: 30px;
}
.ec-orderRole {
	padding: 0;
}
.ec-borderedDefs {
	border-top: 1px solid #cacaca;
	margin-bottom: 40px;
}
.ec-borderedDefs .ec-para-normal {
	margin-bottom: 40px;
}
.ec-borderedDefs dl {
	border-bottom: 1px solid #cacaca;
	padding: 15px 0;
}
.ec-borderedDefs dt {
	padding-top: 0;
	padding-left: 3em;
	position: relative;
}
.ec-borderedDefs dd {
	line-height: 1.8;
}
.ec-borderedDefs .ec-label {
	margin-bottom: 0;
}
.ec-required, .ec-any {
	color: #fff;
	font-size: 1.2rem;
	margin: 0;
	padding: 2px 5px;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
}
.ec-required {
	background: #f4554d;
}
.ec-any {
	background: #9d9d9d;
}
.ec-input textarea {
	margin-bottom: 14px;
}
.ec-input input,
.ec-halfInput input,
.ec-numberInput input,
.ec-zipInput input, .ec-telInput input,
.ec-select input,
.ec-birth input {
	border-radius: 0;
	font-size: 1.6rem;
}
.ec-zipInput input{
	max-width: 10em;
}
.non-customer-edit .ec-zipInput input{
	max-width: 8em;
}
.ec-telInput input{
	max-width: none;
}
.ec-input input:focus,
.ec-halfInput input:focus,
.ec-numberInput input:focus,
.ec-zipInput input:focus,
.ec-telInput input:focus,
.ec-select input:focus,
.ec-birth input:focus,
.ec-input textarea:focus,
.ec-halfInput textarea:focus,
.ec-numberInput textarea:focus,
.ec-zipInput textarea:focus,
.ec-telInput textarea:focus,
.ec-select textarea:focus,
.ec-birth textarea:focus {
	border-color: #0d4d95;
}
.mod-button .ec-inlineBtn::before{
	height: auto !important;
}
.mod-button #customer-ok button{
	margin-bottom: 20px;
}
.mod-button #customer-cancel button{
	background: #9d9d9d;
}
.ec-blockBtn--action {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    font-size: 1.6rem;
    max-width: 330px;
    margin: 0  auto 20px;
    border-radius: 5px;
    position: relative;
    font-weight: bold;
    overflow: hidden;
    background: #ffe902;
    color: #333;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    border: none;
    overflow: hidden;
}
.ec-blockBtn--action:last-child {
	margin: 0 auto;
}
.ec-blockBtn--action::before {
	content: "";
    display: inline-block;
    background: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    z-index: 0;
    opacity: 1;
    -webkit-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    -o-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
}
.ec-blockBtn--action::after {
	content: "\e907";
	font-family: 'itou' !important;
  	speak: none;
  	font-style: normal;
  	font-weight: normal;
  	font-variant: normal;
  	text-transform: none;
  	line-height: 1;
  	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
  	font-size: 1rem;
  	color: #333;
  	position: absolute;
  	top: 50%;
  	right: 15px;
  	-webkit-transform: translateY(-50%);
  	    -ms-transform: translateY(-50%);
  	        transform: translateY(-50%);
  	-webkit-transition: .4s;
  	-o-transition: .4s;
  	transition: .4s;
}
.ec-blockBtn--cancel {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 15px 20px;
    width: 100%;
    font-size: 1.6rem;
    max-width: 330px;
    margin: 0  auto;
    border-radius: 5px;
    position: relative;
    font-weight: bold;
    overflow: hidden;
    background: #333333;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.ec-blockBtn--cancel::before {
	content: "";
    display: inline-block;
    background: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    z-index: 0;
    opacity: 1;
    -webkit-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    -o-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
}
.ec-blockBtn--cancel::after {
	content: "\e907";
	font-family: 'itou' !important;
  	speak: none;
  	font-style: normal;
  	font-weight: normal;
  	font-variant: normal;
  	text-transform: none;
  	line-height: 1;
  	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
  	font-size: 1rem;
  	color: #fff;
  	position: absolute;
  	top: 50%;
  	left: 15px;
  	-webkit-transform: translateY(-50%) rotate(180deg);
  	    -ms-transform: translateY(-50%) rotate(180deg);
  	        transform: translateY(-50%) rotate(180deg);
  	-webkit-transition: .4s;
  	-o-transition: .4s;
  	transition: .4s;
}
.ec-blockBtn--action, .ec-blockBtn--cancel {
	line-height: 1.8;
}
.ec-zipInputHelp span {
	color: #2aaff3;
	margin-left: 25px;
	-webkit-text-decoration: underline #2aaff3;
	        text-decoration: underline #2aaff3;
}
.ec-zipInputHelp .ec-zipInputHelp__icon {
	background: #2aaff3;
	top: 10px;
}
.ec-input .ec-errorMessage,
.ec-halfInput .ec-errorMessage,
.ec-numberInput .ec-errorMessage,
.ec-zipInput .ec-errorMessage,
.ec-telInput .ec-errorMessage,
.ec-select .ec-errorMessage,
.ec-birth .ec-errorMessage {
	color: #f4554d;
}
.error.ec-input input,
.error.ec-halfInput input,
.error.ec-numberInput input,
.error.ec-zipInput input,
.error.ec-telInput input, 
.error.ec-select input,
.error.ec-birth input,
.error.ec-input select,
.error.ec-halfInput select,
.error.ec-numberInput select,
.error.ec-zipInput select,
.error.ec-telInput select,
.error.ec-select select,
.error.ec-birth select {
	border-color: #f4554d;
}
.error.ec-input textarea {
	border-color: #f4554d;
	background: #FDF1F0;
}
.ec-orderAccount {
	margin-bottom: 40px;
}
.ec-orderPayment {
	padding-bottom: 20px;
}
.ec-orderRole .ec-inlineBtn {
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    font-size: 1.4rem;
    max-width: 100px;
    margin: 0  auto;
    border-radius: 5px;
    position: relative;
    font-weight: bold;
    overflow: hidden;
    background: #333333;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    border: none;
    overflow: hidden;
    line-height: 1;
    padding: 10px 25px;
}

.ec-orderRole .ec-inlineBtn::before {
	content: "";
    display: inline-block;
    background: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    z-index: 0;
    opacity: 1;
    -webkit-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    -o-transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
    transition: all 600ms cubic-bezier(0.385, 0.01, 0, 1);
}
@media screen and (max-width: 767px) {
	.ec-borderedDefs dt {
		margin-bottom: 15px;
	}
}
@media screen and (min-width: 768px) {
	.ec-cartRole .ec-cartRole__cart {
		margin: 0;
	}
	.ec-off4Grid .ec-off4Grid__cell {
		width: 100%;
		margin: 0 auto;
	}
	.ec-borderedDefs .ec-para-normal {
		text-align: center;
	}
	.ec-zipInputHelp a:hover span {
		color: #74cdfb;
	}
	.mod-button{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.mod-button #customer-ok{
		margin-right: 15px;
	}
	.mod-button #customer-ok button{
		margin-bottom: 0;
	}
	.mod-button #customer-cancel{
		margin-left: 15px;
	}
	.ec-blockBtn--action:hover {
		background: #ffe902;
		color: #333;
	}
	.ec-blockBtn--cancel:hover,
	.ec-orderRole .ec-inlineBtn:hover {
		background: #333333;	
	}
	.ec-blockBtn--cancel:hover::before {
		-webkit-transform: translateY(0);
    	-ms-transform: translateY(0);
    	transform: translateY(0);
	}
	.ec-blockBtn--action:hover::before,
	.ec-orderRole .ec-inlineBtn:hover::before {
		-webkit-transform: translateY(0);
    	-ms-transform: translateY(0);
    	transform: translateY(0);
    	opacity: 0;
	}
	.ec-blockBtn--cancel:hover::after {
		left: 10px;
	}
	.ec-blockBtn--action:hover::after,
	.ec-orderRole .ec-inlineBtn:hover::after {
		right: 10px;
	}
	.ec-telInput input{
		max-width: 12em;
	}
}
@media screen and (min-width: 992px) {
	.page-confirm {
		padding-top: 90px;
	}
	.common-form .content-area {
		max-width: 960px;
	}
	.ec-borderedDefs dl {
		padding: 20px 0;
	}
	.ec-borderedDefs {
		margin-bottom: 60px;
	}
	.ec-blockBtn--action, .ec-blockBtn--cancel {
		height: 66px;
	}
}
/*-------------------------------------------
	PAGE form 上書き
---------------------------------------------*/
.common-form .ec-rectHeading h2 {
	padding: 0;
	background: none;
	font-weight: bold;
    line-height: 1.2;
    font-size: 2rem;
    padding-bottom: 10px;
    margin-bottom: 20px;
    color: #0d4d95;
    border-bottom: 1px solid #0d4d95;
}
.common-form .content-area .page-ttl-03 + p {
	margin-bottom: 30px;
}
.common-form .content-area > p strong {
	display: block;
	text-align: center;
}
.common-form.page-complete .btn > a > .ico-common {
	right: auto;
	left: 15px;
	-webkit-transform: translateY(-50%) rotate(180deg);
	    -ms-transform: translateY(-50%) rotate(180deg);
	        transform: translateY(-50%) rotate(180deg);
}
@media screen and (min-width: 768px) {
	.common-form.page-complete .btn > a:hover > .ico-common {
		left: 10px;
	}
}
@media screen and (min-width: 992px) {
	.common-form .ec-rectHeading h2 {
		font-size: 2.4rem;
    	padding-bottom: 10px;
	}
}
/*-------------------------------------------
	PAGE パンくず
---------------------------------------------*/
.breadcrumb_area {
	background: #0d4d95;
	max-height: 45px;
}
.breadcrumb {
	max-width: 1440px;
	padding: 13px 20px !important;
	margin: 0 auto !important;
	background: transparent !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.breadcrumb > li {
	margin-right: 30px;
	position: relative;
}
.breadcrumb > li:first-child {
	padding-left: 1.5em;
}
.breadcrumb > li + li::before {
	content: "" !important;
	display: block;
	background: #fff;
	width: 10px;
	height: 1px;
	position: absolute;
    top: 50%;
    left: -18px;
}
.breadcrumb a,
.breadcrumb span {
	display: block;
	color: #fff;
	font-size: 1.3rem;
	font-weight: bold;
}
.breadcrumb span {
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
.breadcrumb li:last-child span {
	color: #4d8ace;
}
.breadcrumb li .icon-home {
	position: absolute;
    left: 0;
    top: 0;
}
.breadcrumb li .icon-home::before {
	font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
	.breadcrumb li span {
		max-width: 7em;
		overflow: hidden;
		-o-text-overflow: ellipsis;
		   text-overflow: ellipsis;
		white-space: nowrap;
	}
}
@media screen and (min-width: 768px) {
	.breadcrumb a:hover span {
		color: #4d8ace;
	}
}
/*-------------------------------------------
	PAGE 下層ページ　pagetop修正
---------------------------------------------*/
.ec-layoutRole__footer {
	position: relative;
}
@media screen and (max-width: 767px) {
	.pagetop-area {
		position: absolute;
		top: 0;
		right: 0;
	}
	.pagetop-inner {
		display: inline-block;
	}
	.pagetop-inner a {
		width: 100px;
	}
	.breadcrumb_area {
		background: #171717;
		padding-right: 100px;
	}
	.breadcrumb li:last-child span {
    	color: #4e4e4e;
	}
}
/*-------------------------------------------
	PAGE 修正
---------------------------------------------*/
.ec-blockBtn--action:active, .ec-blockBtn--action.active, .open > .ec-blockBtn--action.dropdown-toggle {
	background: #ffe902;
	border-color: #ffe902;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: #333;
}