@charset "euc-jp";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/*=============================================
===============================================
=============== jsp-common.css ================
===============================================
===============================================
LastUpDate:18.05.24
=============================================*/



/*CommonStyle***************************************************************************************/

/*Reset*/
html, body, div, span, 
h1, h2, h3, h4, h5, h6, p, 
dl, dt, dd, ol, ul, li {
margin: 0;
padding: 0;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {display: block;}

ol, ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}

/**============================================================================================**/


/*display*/
.dis-blk{display:block;}
.dis-ilblk{display:inline-block;}
.dis-non{display:none;}
.dis-tbl,
.dis-tbl01,
.dis-tbl02,
.dis-tbl03,
.dis-tbl04,
.dis-tbl05{display:table;}
.dis-tbl_tab,
.dis-tbl_tab01,
.dis-tbl_tab02,
.dis-tbl_tab03,
.dis-tbl_tab04,
.dis-tbl_tab05{display:table; table-layout: fixed;}
.dis-tblcl,
.dis-tblcl01,
.dis-tblcl02,
.dis-tblcl03,
.dis-tblcl04,
.dis-tblcl05{display:table-cell;}
.dis-tblcm{display:table-column;}


/*position*/
.posi-abs{position:absolute;}
.posi-fix{position:fixed;}
.posi-rlt{position:relative;}


/*float*/
.rf{float:right;}
.lf{float:left;}


/*clear*/
.clearfix:after {display: block; clear:both; content: "";}

.cl{clear:both;}
.clb{clear:both; visibility:hidden; margin:0; padding:0;}


/*margin*/
.m-0{margin:0;}
.m-0a{margin:0 auto;}

.m-5{margin:5px;}
.m-15{margin:15px;}
.m-10{margin:10px;}
.m-20{margin:20px;}

.m-tb5{margin:5px 0;}
.m-tb10{margin:10px 0;}
.m-tb15{margin:15px 0;}
.m-tb20{margin:20px 0;}
.m-tb30{margin:30px 0;}

.m-t5{margin:5px 0 0 0;}
.m-t10{margin:10px 0 0 0;}
.m-t15{margin:15px 0 0 0;}
.m-t20{margin:20px 0 0 0;}
.m-t25{margin:25px 0 0 0;}
.m-t30{margin:30px 0 0 0;}
.m-t35{margin:35px 0 0 0;}
.m-t40{margin:40px 0 0 0;}
.m-t45{margin:45px 0 0 0;}
.m-t50{margin:50px 0 0 0;}
.m-t55{margin:55px 0 0 0;}
.m-t60{margin:60px 0 0 0;}

.m-b5{margin:0 0 5px 0;}
.m-b10{margin:0 0 10px 0;}
.m-b15{margin:0 0 15px 0;}
.m-b20{margin:0 0 20px 0;}
.m-b25{margin:0 0 25px 0;}
.m-b30{margin:0 0 30px 0;}
.m-b35{margin:0 0 35px 0;}
.m-b40{margin:0 0 40px 0;}
.m-b45{margin:0 0 45px 0;}
.m-b50{margin:0 0 50px 0;}
.m-b55{margin:0 0 55px 0;}
.m-b60{margin:0 0 60px 0;}


/*padding*/
.p_0{padding:0;}

.p_5{padding:5px;}
.p_10{padding:10px;}
.p_15{padding:15px;}
.p_20{padding:20px;}
.p_25{padding:25px;}
.p_30{padding:30px;}


/*color*/
.red{color:#FF0004;}
.orange{color:#FF670E;}
.yellow{color:#ffe207;}
.green{color:#13AD0D;}
.teal{color:#20c997;}
.cyan{color:#31d5f9;}
.blue{color:#0074FF;}
.navy{color:#101c7c;}
.purple{color:#AF65E7;}
.pink{color:#FC8FE0;}
.dark{color:#606060;}
.gray{color:#adadad;}
.light{color:#e0e0e0;}
.black{color:#000;}
.white{color:#fff;}



/*font*/
.fw_b{font-weight:bold;}

.fs_08{font-size:0.8em;}
.fs_09{font-size:0.9em;}
.fs_10{font-size:1.0em;}
.fs_11{font-size:1.1em;}
.fs_12{font-size:1.2em;}
.fs_13{font-size:1.3em;}
.fs_14{font-size:1.4em;}
.fs_15{font-size:1.5em;}
.fs_16{font-size:1.6em;}
.fs_17{font-size:1.7em;}
.fs_18{font-size:1.8em;}
.fs_19{font-size:1.9em;}
.fs_20{font-size:2.0em;}
.fs_23{font-size:2.3em;}
.fs_25{font-size:2.5em;}
.fs_27{font-size:2.7em;}
.fs_30{font-size:3.0em;}
.fs_35{font-size:3.5em;}
.fs_40{font-size:4.0em;}


/*text*/
.ta_l {text-align:left;}
.ta_c {text-align:center;}
.ta_r {text-align:right;}

.txd_unl{text-decoration:underline;}
.txd_non{text-decoration:none;}
.txd_ovl{text-decoration:overline;}


/*align*/
.vat{vertical-align:top;}
.vam{vertical-align:middle;}
.vab{vertical-align:bottom;}

/**============================================================================================**/
body {
	font-size: 16px; font-weight: 500; line-height: 1.6em;
	font-family: "Noto Sans JP", sans-serif;
	font-style: normal;}

main { padding: 100px 0 0;}

@media screen and (max-width:999px){
    main { padding: 70px 0 0;}
}

a {
	color: #000; text-decoration: none;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;}
	
a:hover { color: #FF7E00;}

a[target="_blank"] {position: relative; padding: 0 24px 0 0;}
a[target="_blank"]::after {
    content: '';
    position: absolute; top: 50%; right: 0;
    width: 14px; height: 14px;
    background: url("../images/outlink_wh.webp");
    transform: translateY(-50%);
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;}
	
a[target="_blank"]:hover::after { background: url("../images/outlink_or.webp");}

img { width: auto; height: auto; max-width: 100%; max-height: 100%;}

/**============================================================================================**/
header {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    position: absolute; top: 0; left: 0;
    box-sizing: border-box; width: 100%; height: 100px; padding: 0 50px;
    background: #000;}

header .logo a:hover { opacity: 0.5;}

@media screen and (max-width:1299px){
    header { padding: 0 20px;}
    
    header .logo { width: 200px;}
}

@media screen and (max-width:999px){
    header {height: 70px;}
}

/**========================================**/
#nav-area a { 
    display: inline-block; position: relative;
    color: #fff; line-height: 1.0em;}
    
#nav-area a:hover { color: #FF7E00;}

#nav-area ul {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;    
    height: 35px;}
    
#nav-area li { 
    display: inline-block; 
    margin: 0 0 0 60px;
    text-align: center;}

/* 新規取引店募集 */
#nav-area .form {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 150px; height: 35px;
    background: #b71c25;}

#nav-area .form:hover { background: #FF7E00; color: #fff;}

@media screen and (max-width:1299px){
    #nav-area li { margin: 0 0 0 40px;}
}

@media screen and (max-width:1099px){
    #nav-area li { margin: 0 0 0 30px;}
}

@media screen and (max-width:999px){
    #nav-area ul,    
    #nav-area li { display: block;}
    
    #nav-area ul { height: auto; padding: 40px 0 0;}
    #nav-area li { margin: 30px 0 0;}
    #nav-area li:last-child { margin-top: 50px;}

    /* 新規取引店募集 */
    #nav-area .form { margin: 0 auto; padding: 0;}
}

/**========================================**/
#nav-btn,
#nav-bg { display: none;}

@media screen and (max-width:999px){
    /* ハンバーガーボタン */
	#nav-btn {
		display: block; position: relative;
		width: 40px; height: 32px;
		text-align: right;
		cursor: pointer;}

	#nav-btn.close {
		position: fixed; top: 0; right: 300px; z-index: 10001;
		width: 100vw; height: 100vh;}

	#nav-btn::before,
	#nav-btn::after,
	#nav-btn span {
		content: '';
		display: block; position: absolute;
		width: 40px; height: 5px;
		background: #fff;}
	
	#nav-btn::before {top: 0;}
	#nav-btn::after {bottom: -1px;}
	#nav-btn span {top: 50%; margin: -2px 0 0;}

	#nav-btn.close::before,
	#nav-btn.close::after,
	#nav-btn.close span { display: none;}

    /* 閉じるボタン */
	#nav-btn_cl {    
		display: block; position: absolute; top: 20px; right: 20px; z-index: 10003;
		width: 32px; height: 32px;
		cursor: pointer;}

	#nav-btn_cl::before,
	#nav-btn_cl::after {
		content: '';
		display: block; position: absolute; top: 50%; left: 50%;
		width: 32px; height: 4px;
		background: #fff;}

	#nav-btn_cl::before  {
		transform: translateX(-50%) translateY(-3px) rotate(45deg);
		-webkit-transform: translateX(-50%) translateY(-3px) rotate(45deg);}

	#nav-btn_cl::after {
		transform: translateX(-50%) translateY(-3px) rotate(-45deg);
		-webkit-transform: translateX(-50%) translateY(-3px) rotate(-45deg);}


	/* グローバルメニュー表示エリア */
	#nav-area {
		position: fixed; top: 0; left: 0; z-index: 10;
		width: 0vw; height: 100vh;
		background: rgba(0,0,0,0.00);
		transition: background 0.8s;}

	#nav-area.slide-in {
		z-index: 10000;
		width: 100vw; 
		background: rgba(0,0,0,0.40);
		transition: background 0.8s;}

	#nav-area nav {
		position: fixed; top: 0; left: auto; right: 0; z-index: 10002;
		width: 300px; height: 100vh; padding: 0;
		background: #000;
		transform: translateX(100%);
		transition: 0.8s;}

	#nav-area.slide-in nav {
		transform: translateX(0);
		transition: 0.8s;}
}

@media screen and (max-width:499px){
	#nav-btn.close {width: 0;}
	#nav-area nav {box-sizing: border-box; width: 100%;}
}

/**============================================================================================**/
/* Copyright */
footer { 
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 70px;
    background: #000; 
    color: #fff; font-size: 14px; line-height: 1.0em;}

/* TOPへ戻る */
a[href="#top"] { position: fixed; bottom: 20px; right: 20px;}
a[href="#top"]:hover { opacity: 0.7;}

@media screen and (max-width:699px){
    /* Copyright */
    footer { height: 40px;}
    
    /* TOPへ戻る */
    a[href="#top"] { bottom: 10px; right: 10px;}
    a[href="#top"] img { width: 45px;}
}

/*--LastUp2025.09.24_kimata--*/