@charset "UTF-8";

/* --------------------------------------------------- */
/* content width */

/*.lay_lqd:before,
.lay_lqd:after { content: " "; display: table; }
.lay_lqd:after { clear: both; }*/
.lay_lqd {
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* spview */
@media screen and (max-width:767px) {
	.lay_lqd {
        max-width:none;
    }
}

/* --------------------------------------------------- */

#wrapper {
	width: 100%;
	overflow-x:hidden;
}

/* --------------------------------------------------- */
/* #header basic */
#header {
	background :#fff;
    border-bottom: 2px solid #072957;
}
#header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    position: relative;
}
/* spview */
@media screen and (max-width:767px) {
	#header { height: auto; }
	#header .inner {
        height: auto;
		display:block;
        padding: 0.5em 0.5em;
	}
}

/* --------------------------------------------------- */
/* #header link */
#header a {}
#header a:hover {}

/* --------------------------------------------------- */
/* #siteid & #header_nav */

/* #siteid */
#header .siteid {
    margin-left: 20px;
	white-space:nowrap;
}
#header .siteid a {
    width:209px; /* logo image size */
	display: block;
	line-height: 1;
}
#header  .siteid img {
	width: 100%;
	height: auto;
    object-fit: contain;
}

/* #header_nav */
#header_nav {
    height: 80px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
@media screen and (max-width:1430px) {
    
    
}
@media screen and (max-width:1280px) {
    
    #header .siteid { margin-left: 10px; }
    #header .siteid a {
        width: 15vw;
        max-width: 209px;
        display: flex;
    }
    
}
/* spview */
/* when use menu button */
@media screen and (max-width:767px) {
	/* #siteid */
	#header .siteid {
        width: fit-content;
        margin-left: 0;
    }
    #header .siteid a {
        width: 40vw;
    }

	/* #header_nav */
	#header_nav {
		width:100%;
		height: auto;
		/* sp view basic style */
		background-color:#fff;
		box-shadow:0px 3px 3px 0px rgba(6,6,7,0.11);
		-moz-box-shadow:0px 3px 3px 0px rgba(6,6,7,0.11);
		-webkit-box-shadow:0px 3px 3px 0px rgba(6,6,7,0.11);

		/* for drop down */
		display:none;
		position:absolute;
		top: 57px !important;
		left:0;
		z-index:998;

		border-bottom: solid 1px #cdcdcd;
		border-top: solid 1px #cdcdcd;
	}
}

/* --------------------------------------------------- */
/* menu button (sp view) */
#header_nav_btn {
	/*width:3em;*/
	/*height:3em;*/
	position:absolute;
	top:1em;
	right:0;

	display:none;
	border:none;
	background:none;
	padding:0;
}

#header_nav_btn:before {

    font-family: 'icomoon' !important;
	content:'\e96e';
	font-size: 32px;
	color:#000;
	line-height:1;
}

/* spview */
@media screen and (max-width:767px) {

	#header_nav_btn {
		top: 12px;
		right: 8px;
		display:block;
	}
	#header_nav_btn:before {
		font-size: 35px;
	}
}

/* --------------------------------------------------- */
/* global navi & primary navi */

/* global navi */
#gnav {
    height: 100%;
    display: flex;
    align-items: center;
	padding: 0;
}
#gnav > li {
	display:inline-block;
	padding: 0 1em;
	font-size: 15px;
}
#gnav > li:last-child {
    padding-right: 2em;
}
#gnav > li a {
    color:#333;
    font-size: 15px;
	font-weight: 700;
	text-decoration:none;
    display: block;
}


/* primary navi */
#pnav {
    height: 100%;
    display: flex;
    align-items: center;
	padding: 0;
}
#pnav > li {
	display:inline-block;
	height: 100%;
}
#pnav > li span,
#pnav > li a {
	color:#fff;
    font-size: 18px;
	font-weight: 700;
	text-decoration:none;
    height: 100%;
    padding: 0 1.75em;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

#pnav > li.head_regist span::before,
#pnav > li.head_login a::before {
    content: "";
    display: inline-block;
    margin-right: 0.25em;
}
#pnav > li.head_regist span::before {
    width: 39px;
    height: 40px;
    background: url("../images/i_reister.png") no-repeat;
    background-size: contain;
}
#pnav > li.head_login a::before {
    width: 39px;
    height: 38px;
    background: url("../images/i_login.png") no-repeat;
    background-size: contain;
}

.pnav_login {}
.pnav_login:hover {}

.pnav_mypage {}
.pnav_mypage:hover {}

.pnav_help {}
.pnav_help:hover {}

.pnav_register {}
.pnav_register:hover {}


/* icon style */
#pnav a:before {}

#pnav .drop_down_list {
	font-size:78%;
    border-radius: 0 0 4px 4px;
	top: 80px;
}
#pnav .drop_down_list li {}
#pnav .drop_down_list li a {
    font-size: 15px;
    padding: 0 0;
}
#pnav .drop_down_list li a:hover {}

#pnav .list_round1 a {
	color:#333;
	text-shadow:none;
}
@media screen and (max-width:1430px) {
    #gnav > li a {
        font-size: clamp(13px, 1.25vw, 15px);
        word-break: keep-all;
    }
    
    #pnav > li span,
    #pnav > li a {
        font-size: clamp(13px, 1.25vw, 15px);
        word-break: keep-all;
        padding: 0 1em;
    }
    #pnav > li.head_regist span::before,
    #pnav > li.head_login a::before {
        width: 2.5vw;
        height: 2.5vw;
    }
}
@media screen and (max-width:1280px) {
    #gnav > li {
        padding: 0 0.5em;
    }
    #gnav > li a {
        font-size: clamp(13px, 1vw, 15px);
    }
    
    #gnav > li:last-child {
        padding-right: 1em;
    }
    #pnav > li span,
    #pnav > li a {
        font-size: clamp(13px, 1vw, 15px);
        padding: 0 1.75em;
    }
    #pnav > li.head_regist span::before,
    #pnav > li.head_login a::before { content: none; }
    
    #pnav .drop_down_list li a {
        font-size: clamp(12px, 1vw, 14px);
    }
    
}
/* spview */
@media screen and (max-width:767px) {

	/* global navi */
	#gnav {
        display:block;
        text-align: center;
    }
	#gnav > li {
        padding: 0 0;
		display:block;
	}
    #gnav > li a {
		padding: 14px 0;
		width: 100%;
		border-top:solid 1px #eee;
        position: relative;
	}
    #gnav > li:last-child { padding-right: 0; }
    #gnav > li a::after {
		content: '';
		margin-top: -4px;
		top: 48%;
		right: 25px;
		width: 9px;
		height: 9px;
		position: absolute;
		border-top: 2px solid #bbb;
		border-right: 2px solid #bbb;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
    }
    

	/* primary navi */
	#pnav { flex-direction: column-reverse; }
	#pnav > li {
        width: 100%;
	}
    #pnav > li span,
    #pnav > li a {
        font-size: 15px;
        padding: 14px 0;
    }
    
    #pnav > li.head_regist span::before {
        width: 25px;
        height: 26px;
    }
    #pnav > li.head_login a::before {
        width: 28px;
        height: 27px;
    }

	#pnav > li a::after {
		content: '';
		margin-top: -4px;
		top: 48%;
		right: 25px;
		width: 9px;
		height: 9px;
		position: absolute;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
    }
	#pnav > li.drop_down::after {
		content: '';
		margin-top: -4px;
		top: 48%;
		right: 25px;
		width: 9px;
		height: 9px;
		position: absolute;
		border-top: 2px solid #333;
		border-right: 2px solid #333;
		-webkit-transform: rotate(45deg);
		transform: rotate(135deg);
    }

	.pnav_login {}
	.pnav_login:hover {}

	.pnav_mypage {}
	.pnav_mypage:hover {}

	.pnav_help {}
	.pnav_help:hover {}

	.pnav_register {}
	.pnav_register:hover {}

	#pnav .drop_down_list {
		top:55px;
	}
    #pnav .drop_down_list li {
        padding: 0 0;
    }
    #pnav .drop_down_list li a {
        padding: 8px 0;
    }
}



/* --------------------------------------------------- */
/* footer */
#footer {}

#footer .inner {
    width: 100%;
    background: #1134a8;
    padding: 1.5em 0;
}

.footer_links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 1.5em;
}
.footer_links li {
	font-size: 14px;
}
.footer_links a {
	color: #fff;
    font-size: 14px;
    text-decoration: none;
}
.footer_links a:hover {}

#footer_logo { padding: 1.5em 0; }
#footer_logo a {
    width: 50%;
    max-width: 271px;
    display: block;
    margin: 0 auto;
}
#footer_logo img {
	width:100%;
	height:auto;
	object-fit: contain;
}

#copyright {
    color: #fff;
    font-size: 12px;
    text-align: center;
    line-height: 1.2em;
    padding: 0.75em 0;
    background: #000;
}


/* spview */
@media screen and (max-width:767px) {
	#footer .inner { }
    .footer_links {
        padding: 0 2.5vw;
        gap: 0.75em 1.0em;
	}
	.footer_links li { display: inline-block; }
    .footer_links a {
        font-size: 12px;
        display: block;
	}
	.footer_links a:hover {}
    
	#footer_logo { padding: 1.0em 0; }

	#copyright {}
}


/* --------------------------------------------------- */
/* pagetop */
#pagetop {
	position:fixed;
	bottom: 10px;
	right: 30px;
	z-index: 1000;
}
#pagetop a {
	display:block;
	width:50px;
	height:50px;
	background-color:rgba(0,0,0,0.70);
	color:#fff;
	text-align:center;
	padding:7px 0 0;
	font-size:150%;
}
#pagetop a:hover {}

#pagetop2 {
	position:fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	width: 100%;
	padding: 10px 0 15px;
	background: #fff;
	border-bottom: 2px solid #072957;
	/*box-shadow: 0 4px 0 rgba(0,0,0,.11);*/
}
#pagetop2 .box_btn_head {
	width: 100%;
	margin: 0 auto;
}
#pagetop2 .box_btn_head ul {
	width: 100%;
	text-align: right;
}
#pagetop2 .box_btn_head ul li {
	display: inline-block;
}
#pagetop2 .box_btn_head ul li a {
	padding: 10px 25px;
}
/* spview */
@media screen and (max-width:767px) {
	#pagetop {
		display: none !important;
	}
	#pagetop a {}
	#pagetop a:hover {}

	#pagetop2 {
		padding: 12px 0;
		background: rgba(255,255,255,.85);
		border-top: solid 3px #072957;
		border-bottom:none;
		bottom: 0;
		top: unset;
	}
	#pagetop2 .box_btn_head ul { text-align: center; }
	#pagetop2 .box_btn_head ul li { width: 46%; }
	#pagetop2 .box_btn_head ul li a { padding: 10px 0 !important; }
}



/* --------------------------------------------------- */
/* floating_side */
#floating_side {
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1000;
    transition: opacity 0.4s;
}
#floating_side.visible {
  opacity: 1;
  pointer-events: auto;
}
/* Animation */
#floating_side .btn_register {
    display: block;
    animation-name:updown1;   /* アニメーション名の指定 */
    animation-delay:0s;   /* アニメーションの開始時間指定 */
    animation-duration: 2s;   /* アニメーション動作時間の指定 */
    animation-timing-function: ease-in-out;  /* アニメーションの動き指定（徐々に早く）*/
    animation-iteration-count: infinite;
}
@keyframes updown1 {
    0% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0); }
}
@media screen and (max-width:1430px) {
    
}
@media screen and (max-width:1280px) {
    #floating_side .btn_register {
        width: 18vw;
        max-width: 238px;
        height: 18vw;
        max-height: 265px;
    }
    #floating_side .btn_register img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
}
/* spview */
@media screen and (max-width:767px) {
    #floating_side {
        top: 75%;
    }
    #floating_side .btn_register {
        width: 25vw;
        height: 25vw;
    }
    
}


.bradius {
	border-radius: 6px;
}
.bradius_top {
	border-radius: 6px 6px 0 0;
}
.noborder {
	border: none !important;
}
.boxshadow {
	box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
}


.point_back01 { background: #072957; }
.point_back02 { background: #3957b7; }
.point_back03 { background: #ff410d; }
.point_back04 { background: #f5f5f5; }

.white { color: #fff; }
