@charset "utf-8";

/* -------------------------------------------------
	reset
------------------------------------------------- */

* {
	margin: 0;
	padding: 0;
	vertical-align: top;
	box-sizing: border-box;
}

html {
}

body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
	position: relative;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

p, h1, h2, h3, h4, th, td, li, dt, dd, figcaption, input, select, textarea {
	font-weight: normal;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
}

iframe {
	border: none;
}

a {
	text-decoration: none;
	// color: #4c98b4;
}
a:hover {
	
}

ul, ol {
	list-style-type: none;
}

main {
	padding-bottom: 0!important;
	display: block;
}

@media print, screen and (min-width:768px) {
	a[href^="tel:"] {
		cursor: default;
	}
}

@media screen and (max-width:767px) {
	main {
		padding-bottom: 60px;
	}
}

/* -------------------------------------------------
	box
------------------------------------------------- */

.box1024 {
/*	width: 96%;*/
	width: calc(100% - 32px);
	max-width: 1024px;
	margin: 0 auto;
	position: relative;
}

@media screen and (max-width:767px) {
	.box1024 {
		width: auto;
	}
	.box-sp {
		width: calc(100% - 32px);
		margin: 0 auto;
		position: relative;
	}
	.box-sp2 {
		width: calc(100% - 24px);
		margin: 0 auto;
		position: relative;
	}
	.box-sp3 {
		width: calc(100%);
		margin: 0 auto;
		position: relative;
	}
}

/* -------------------------------------------------
	h
------------------------------------------------- */

.h-normal {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.08em;
	color: #507480;
	position: relative;
	z-index: 4;
}
.h-normal.pos1 {
	margin-bottom: -0.55em;
}

@media screen and (max-width:767px) {
	.h-normal {
		font-size: 27px;
	}
}

/* -------------------------------------------------
	bg-gray
------------------------------------------------- */

.bg-gray {
	padding: 65px calc(55 / 1024 * 100%) 50px;
	background: #f2f2f2;
	border-radius: 20px;
}

@media screen and (max-width:767px) {
	.bg-gray {
		padding: 32px calc(40 / 670 * 100%) 25px;
		border-radius: 10px;
	}
}

/* -------------------------------------------------
	header
------------------------------------------------- */

header {
/*	padding: 50px 0 60px;*/
}
header .logo {
	width: 415px;
}

@media screen and (max-width:767px) {
	header {
/*		padding: 15px 0 21px;*/
	}
	header .logo {
		width: 207px;
	}
}

/* -------------------------------------------------
	responsive
------------------------------------------------- */

@media print, screen and (min-width:768px) {
	.pc-none {
		display: none !important;
	}
}

@media screen and (max-width:767px) {
	.sp-none {
		display: none !important;
	}
}

/* -------------------------------------------------
	print
------------------------------------------------- */

@media print {
	body {
		width: 980px !important;
	}
}

/* -------------------------------------------------
	#notes
------------------------------------------------- */

#notes {
	padding: 0 0 32px;
	position: relative;
}
#notes .text1 {
    text-align: left;
    font-size: 12px;
    line-height: 1.5;
    margin: 0 0 4px;
}
#notes .text1 strong {
	color: #f66b6b;
	font-weight: normal;
}

@media screen and (max-width:767px) {
	#notes {
		padding: 16px 0;
	}
	#notes .text1 {
		font-size: 12px;
		margin: 0 0 4px;
/*		white-space: nowrap;*/
	}
}

@media screen and (max-width:374px) {
	#notes {
		padding: 0 0 16px;
	}
	#notes .text1 {
/*		font-size: calc(16 / 374 * 100vw);*/
	}
}

/* -------------------------------------------------
	#chance1pc
------------------------------------------------- */

#chance1pc {
	padding: 0 0 32px;
	position: relative;
	display: block!important;
}

@media screen and (max-width:767px) {
	#chance1pc {
		display: block!important;
		padding: 16px 0;
	}
}

@media screen and (max-width:480px) {
	#chance1pc {
		display: none!important;
		padding: 32px 0;
	}
}

/* -------------------------------------------------
	#chance2pc
------------------------------------------------- */

#chance2pc {
	padding: 0 0 32px;
	position: relative;
	display: block!important;
}

@media screen and (max-width:767px) {
	#chance2pc {
		display: block!important;
		padding: 16px 0;
	}
}

@media screen and (max-width:480px) {
	#chance2pc {
		display: none!important;
		padding: 32px 0;
	}
}

/* -------------------------------------------------
	#chance1sp
------------------------------------------------- */

#chance1sp {
	padding: 0 0 32px;
	position: relative;
	display: none!important;
}

@media screen and (max-width:767px) {
	#chance1sp {
		padding: 16px 0;
		display: none!important;
	}
}

@media screen and (max-width:480px) {
	#chance1sp {
		padding: 16px 0;
		display: block!important;
	}
}

/* -------------------------------------------------
	#chance2sp
------------------------------------------------- */

#chance2sp {
	padding: 0 0 32px;
	position: relative;
	display: none!important;
}

@media screen and (max-width:767px) {
	#chance2sp {
		padding: 16px 0;
		display: none!important;
	}
}

@media screen and (max-width:480px) {
	#chance2sp {
		padding: 16px 0 32px;
		display: block!important;
	}
}

/* -------------------------------------------------
	registration
------------------------------------------------- */

.bg_registration {
    padding: 12px;
    background: #ffffff;
	border: 4px #ffd400;
	border-style: solid;
    border-radius: 16px;
}

h2.registration_title{
	font-size: 24px;
	color: #cc0033;
	line-height: 24px;
	font-weight: 700;
	vertical-align: baseline;
	text-align: center;
	margin: -16px -16px 0;
	padding: 16px;
	width: calc(100% + 32px);
	background: #ffd400;
	border-radius: 16px 16px 0 0;
}

@media screen and (max-width: 768px) {
	h2.registration_title{
		margin: -20px -4px 0;
		padding: 12px;
		width: calc(100% + 8px);
	}
}
@media screen and (max-width: 768px) {
	.bg_registration {
    	margin: 0 16px;
		padding: 16px 0;
	}
}

.block_howto_box {
    width: 704px;
    margin: auto;
}

.block_howto_box_flex_box {
    width: 213.33px;
}

p.block_howto_box_flex_box_text {
    margin: 0 -4px 0;
}

.block_howtoSP_box_flex {
	margin: 0 0 24px;
	width: auto;
}

@media screen and (max-width: 360px) {
	p.block_howtoSP_box_block_box_title, p.block_howtoSP_box_flex_box_title {
    	font-size: 14px;
    	line-height: 21px;
	}
	
	.block_howtoSP_box_block_box_box {
		height: 42px;
	}
	
	.block_howtoSP_box_flex_box_box {
	    min-height: 42px;
	}
}

/* -------------------------------------------------
	howto
------------------------------------------------- */

.block_howtoSP_box_flex_box_image {
    width: 98px;
    height: auto;
    margin-top: 4px;
    margin-bottom: 8px;
}

@media screen and (max-width: 768px) {
	.block_howtoSP_box {
	padding: 0;
	}
}
	
/* -------------------------------------------------
	dpoint
------------------------------------------------- */

@media screen and (max-width: 768px){
	.block_howtoSP_box_flex_d_box_box_image {
   		width: 48px;
    	height: 48px;
	}
}

.block_howtoSP_box_flex_d_box_box2 {
	width: calc(100% - 64px);
}

@media screen and (max-width: 768px){
	.block_howtoSP_box_flex_d_box_box2 {
   		width: calc(100% - 48px);
	}
}

p.block_howtoSP_box_flex_d_box_box_title {
    letter-spacing: -0.4px;
}

/* -------------------------------------------------
	#flow
------------------------------------------------- */

#flow {
	margin: 32px 0 24px;
	padding: 0;
	border-bottom: solid 2px #ffd400;
}
#flow .step {
	width: auto;
    padding: 0;
    margin: 0 calc((100% - 128px)/2) 12px;
}
#flow .step_number {
	width: auto;
    vertical-align: baseline;
	border-radius: 18px;
	font-weight: 700;
	text-align: center;
	display: block;
	font-size: 20px;
	line-height: 20px;
	color: #cc0033;
	padding: 8px;
	margin: 0 0 8px;
	background-color: #ffd400;
}
#flow .step_number span {
    vertical-align: baseline;
	font-weight: 900;
	font-size: 24px;
}
#flow .text1 {
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	color: #141414;
	line-height: 1.4;
	margin: 0 0 24px;
}

@media screen and (max-width:767px) {
	#flow {
		margin-top: 24px;
	}
	#flow .text1 {
		font-size: 24px;
	}
}

/* -------------------------------------------------
	.entryButton
------------------------------------------------- */
.entryButton {
	width: 100%;
	padding: 8px 0 64px;
	color: #664400;
}

.entryButton.ab {
	position: absolute;
}

.entryButton p.notes {
	text-align: center;
	height: 100%;
	margin: 8px 0 16px 0;
	padding: 0;
	font-size: 20px;
	font-weight: 700;
	color: #CC0033;
	line-height: 1.3;
}

.entryButton ul {
	width: 420px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.entryButton ul li {
	width: 420px;
	margin: 0px;
	height: 64px;
	// background: url("../img/img_banner_01_pc@2x.png") no-repeat 16px center;
	// background-size: 80px auto;
	border-radius: 32px;
	background: #ffbb33;
}

.entryButton ul li + li {
	// background-image: url("../img/img_banner_02_pc@2x.png");
}

.entryButton ul li a {
	display: block;
	width: 420px;
	height: 100%;
	padding: 19px 0 19px 108px;
	font-size: 24px;
	color: #664400;
	font-weight: bold;
	line-height: 1;
	background: url("https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/icon_arrow_02@2x.png") no-repeat right 24px center;
	background-size: 24px;
	border: 2px solid #664400;
	border-radius: 32px;
}

.entryButton ul li:hover {
	background: #ffbb33!important;
	opacity: 0.75!important;
}

.entryButton ul li:active {
	background: #ffbb33!important;
	opacity: 0.5!important;
}

.entryButton ul li a:hover {
	color: #664400!important;
	opacity: 0.75!important;
}

.entryButton ul li a:active {
	color: #664400!important;
	opacity: 0.5!important;
}

@media screen and (max-width: 768px){
	.entryButton {
		padding: 16px 32px 8px;
	}

	.entryButton p.notes {
		text-align: center;
		height: 100%;
		margin: 0 0 16px 0;
		padding: 0;
		font-size: 18px;
		font-weight: 700;
		color: #CC0033;
		line-height: 1.3;
	}

	.entryButton ul {
		width: 100%;
	}

	.entryButton ul li {
		width: 100%;
		margin: 0px;
		height: 48px;
		border-radius: 24px;
		// background-position: 8px 4px;
		// background-size: 48px auto;
		// background-image: url("../img/img_banner_01_sp@2x.png");
	}

	.entryButton ul li + li {
		width: 100%;
		background-position: 8px 4px;
		background-size: 48px auto;
		// background-image: url("../img/img_banner_02_sp@2x.png");
	}

	.entryButton ul li a {
		padding: 12px 8px 12px 0;
		width: 100%;
		font-size: 20px;
		letter-spacing: 0.05em;
		line-height: 20px;
		text-align-last: center;
		background: none;
		border: 2px solid #664400;
		border-radius: 24px;
		position: relative;
		background: url("https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/icon_arrow_02@2x.png") no-repeat right 20px center;
		background-size: 20px;
	}
}

/* -------------------------------------------------
	.entryButton_bottom
------------------------------------------------- */
.entryButton_bottom {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 20px 0;
	background: #ffffff;
	color: #664400;
	z-index: 9999;
	box-shadow: 0 -10px 13px -10px rgba(153,153,153,0.5);
}

.entryButton_bottom.ab {
	position: absolute;
}

.entryButton_bottom ul {
	width: 420px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.entryButton_bottom ul li {
	width: 420px;
	margin: 0px;
	height: 64px;
	// background: url("../img/img_banner_01_pc@2x.png") no-repeat 16px center;
	// background-size: 80px auto;
	border-radius: 32px;
	background: #ffbb33;
}

.entryButton_bottom ul li + li {
	// background-image: url("../img/img_banner_02_pc@2x.png");
}

.entryButton_bottom ul li a {
	display: block;
	width: 420px;
	height: 100%;
	padding: 19px 0 19px 108px;
	font-size: 24px;
	color: #664400;
	font-weight: bold;
	line-height: 1;
	background: url("https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/icon_arrow_02@2x.png") no-repeat right 24px center;
	background-size: 24px;
	border: 2px solid #664400;
	border-radius: 32px;
}

.entryButton_bottom ul li:hover {
	background: #ffbb33!important;
	opacity: 0.75!important;
}

.entryButton_bottom ul li:active {
	background: #ffbb33!important;
	opacity: 0.5!important;
}

.entryButton_bottom ul li a:hover {
	color: #664400!important;
	opacity: 0.75!important;
}

.entryButton_bottom ul li a:active {
	color: #664400!important;
	opacity: 0.5!important;
}

body {
	padding-bottom: 125px
}

#page-top-icon {
	 margin-bottom: 72px;
}

@media screen and (max-width: 768px){
	.entryButton_bottom {
		padding: 16px 32px;
	}

	.entryButton_bottom ul {
		width: 100%;
	}

	.entryButton_bottom ul li {
		width: 100%;
		margin: 0px;
		height: 48px;
		border-radius: 24px;
		// background-position: 8px 4px;
		// background-size: 48px auto;
		// background-image: url("../img/img_banner_01_sp@2x.png");
	}

	.entryButton_bottom ul li + li {
		width: 100%;
		background-position: 8px 4px;
		background-size: 48px auto;
		// background-image: url("../img/img_banner_02_sp@2x.png");
	}

	.entryButton_bottom ul li a {
		padding: 12px 8px 12px 0;
		width: 100%;
		font-size: 20px;
		letter-spacing: 0.05em;
		line-height: 20px;
		text-align-last: center;
		background: none;
		border: 2px solid #664400;
		border-radius: 24px;
		position: relative;
		background: url("https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/icon_arrow_02@2x.png") no-repeat right 20px center;
		background-size: 20px;
	}

	body {
		padding-bottom: 72px
	}
	
	#page-top-icon {
		 margin-bottom: 32px;
	}
}

/* -------------------------------------------------
	terms of service
------------------------------------------------- */

.accordion>.card:last-of-type {
	background: none;
	margin-left: 0!important;
	margin-right: 0!important;
	max-width: 760px!important;
}

.accordion>.card .card-header {
	padding: 16px!important;
	border-bottom: none;
	border-radius: 32px;
	margin-bottom: 0;
	/*background-color: rgba(204,0,51,.13)!important;*/
}

.terms_of_service{
	border-style: solid;
	border-width: 4px;
	border-radius: 30px;
	border-color: rgba(204,0,51,.13);
	background: #ffffff;
	margin: 64px 0 32px;
}

.terms_header{
	font-size: 20px;
	font-weight: 700;
	line-height: 20px;
	color: #cc0033;
    text-align: center;
	margin: 0;
}

.terms_body_box{
	margin: 0;
	padding: 16px 16px 0;
}

.terms_body_header{
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 2px;
}

.terms_body{
	font-size: 12px;
	line-height: 18px;
	margin: 0 0 16px;
}

@media screen and (max-width: 768px){
	.terms_of_service {
		margin: 48px 16px 16px;
	}
}

/* -------------------------------------------------
	products
------------------------------------------------- */

#product {
    padding: 8px 0 0;
    /*background: #f5f5f6;*/
	width: 100%;
	margin: 0;
}

@media screen and (max-width: 768px){
	#product {
		padding: 4px 8px 0;
	}
}

/*
.products_header {
	font-size: 18px;
	color: #ffffff;
	font-weight: 700;
	text-align: center;
	margin: 32px 0 24px;
	padding: 8px 8px 4px;
	background: #4c98b4;
	border-radius: 8px;
}

.products_header span{
	font-size: 14px;
	vertical-align: baseline;
}
*/

#products-ul1 {
	padding: 8px 0 0;
    position: relative;
    display: block;
    box-sizing: border-box;
    min-height: 1px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

#products-ul2 {
	padding: 8px 0 0;
    position: relative;
    display: block;
    box-sizing: border-box;
    min-height: 1px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.products-li1 {
    display: block;
    float: left;
    height: 100%;
    min-height: 1px;
}

@media screen and (max-width: 768px){
	.products-li1 {
		width: calc(100% / 3);
	}
}

.products-li1 img {
	width: 220px;
	display: block;
}

.products-li2 {
    display: block;
    float: left;
    height: 100%;
    min-height: 1px;
}

@media screen and (max-width: 768px){
	.products-li2 {
		width: calc(100% / 3);
	}
}

.products-li2 img {
	display: block;
}

#products-ul1 .item {
    width: 244px;
}

@media print, screen and (max-width: 768px){
	#products-ul1 .item {
		width: auto;
	}
}

#products-ul1 .bg-white {
    width: 228px;
    margin: 0 8px 24px;
    padding-bottom: 12px;
    background: #ffffff;
	box-shadow: 0px 1px 4px 0px rgba(153,153,153,0.5); 
	border-radius: 8px;
}

@media print, screen and (max-width: 768px){
	#products-ul1 .bg-white {
		width: auto;
    	margin: 0 6px 16px;
	}
}

#products-ul1 .name {
	padding: 8px;
	margin: 0;
	font-size: 14px;
	line-height: 1.4;
	font-weight: 700;
	height: 72px;
	vertical-align: baseline;
}

@media print, screen and (max-width: 480px){
	#products-ul1 .name {
		font-size: 12px;
		height: 72px;
	}

	#products-ul1 .name br{
		display: none;
	}
}

@media print, screen and (max-width: 480px){
	#products-ul1 .name span {
		font-size: 10px;
		vertical-align: baseline;
	}
}

@media print, screen and (max-width: 359px){
	#products-ul1 .name {
		font-size: 12px;
		height: 96px;
	}
}

#products-ul1 a {
	display: inherit;
	width: auto;
	padding: 0 8px;
}

#products-ul1 .price {
	color: #4c98b4;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	margin: 0 0 8px;
}

@media print, screen and (max-width: 768px) {
	#products-ul1 .price {
		font-size: 12px;
	}
}

@media print, screen and (max-width: 480px) {
	#products-ul1 .price {
		font-size: 10px;
		vertical-align: baseline
	}
	
	#products-ul1 .price .num {
		font-size: 12px;
		vertical-align: baseline
	}
}

#products-ul1 .period {
	margin: 0 0 16px;
	font-size: 11px;
	text-align: center;
}

@media print, screen and (min-width: 640px) {
	#products-ul1 .period br {
		display: none;
	}
}

#products-ul1 .btn {
	width: 210px;
	height: 32px!important;
	margin: 0 auto;
	padding-left: 4px;
	color: #ffffff;
	font-size: 14px;
	display: flex;
	align-items: center;
	background: #4c98b4 url(https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/ico_arrow_03.png) no-repeat 186px center / 14px auto;
	border-radius: 16px;
	transition: opacity 0.2s ease-out;
}

@media print, screen and (max-width: 768px) {
	#products-ul1 .btn {
		width: calc(100% - 16px);
		background: #4c98b4!important;
	}
}

@media print, screen and (max-width: 480px) {
	#products-ul1 .btn {
		width: calc(100% - 8px);
		letter-spacing: -0.5px;
		padding: 5px 2px;
		font-size: 12px;
		background: #4c98b4!important;
	}
}


#products-ul2 .item {
    width: 184px;
}

@media print, screen and (max-width: 768px){
	#products-ul2 .item {
		width: auto;
	}
}

#products-ul2 .bg-white {
    width: 168px;
    margin: 0 8px 24px;
    padding-bottom: 12px;
    background: #ffffff;
	box-shadow: 0px 1px 4px 0px rgba(153,153,153,0.5); 
	border-radius: 8px;
}

@media print, screen and (max-width: 768px){
	#products-ul2 .bg-white {
		width: auto;
    	margin: 0 6px 16px;
	}
}

#products-ul2 .name {
	padding: 8px;
	margin: 0;
	font-size: 14px;
	line-height: 1.4;
	font-weight: 700;
	height: 72px;
	vertical-align: baseline;
}

@media print, screen and (max-width: 480px){
	#products-ul2 .name {
		font-size: 12px;
		height: 72px;
	}

	#products-ul2 .name br{
		display: none;
	}
}

@media print, screen and (max-width: 480px){
	#products-ul2 .name span {
		font-size: 10px;
		vertical-align: baseline;
	}
}

@media print, screen and (max-width: 359px){
	#products-ul2 .name {
		font-size: 12px;
		height: 96px;
	}
}

#products-ul2 a {
	display: inherit;
	width: auto;
	padding: 0 8px;
}

#products-ul2 .price {
	color: #4c98b4;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	margin: 0 0 8px;
}

@media print, screen and (max-width: 768px) {
	#products-ul2 .price {
		font-size: 12px;
	}
}

@media print, screen and (max-width: 480px) {
	#products-ul2 .price {
		font-size: 10px;
		vertical-align: baseline
	}
	
	#products-ul2 .price .num {
		font-size: 12px;
		vertical-align: baseline
	}
}

#products-ul2 .period {
	margin: 0 0 16px;
	font-size: 11px;
	text-align: center;
}

@media print, screen and (min-width: 640px) {
	#products-ul2 .period br {
		display: none;
	}
}

#products-ul2 .btn {
	width: 144px;
	height: 32px!important;
	margin: 0 auto;
	padding-left: 4px;
	color: #ffffff;
	font-size: 14px;
	display: flex;
	align-items: center;
	background: #4c98b4 url(https://rental.jnt.kikito.docomo.ne.jp/lp/CP_dpoint_2404/ico_arrow_03.png) no-repeat 120px center / 14px auto;
	border-radius: 16px;
	transition: opacity 0.2s ease-out;
}

@media print, screen and (max-width: 768px) {
	#products-ul2 .btn {
		width: calc(100% - 16px);
		background: #4c98b4!important;
	}
}

@media print, screen and (max-width: 480px) {
	#products-ul2 .btn {
		width: calc(100% - 8px);
		letter-spacing: -0.5px;
		padding: 5px 2px;
		font-size: 12px;
		background: #4c98b4!important;
	}
}



#all-products {
    margin-bottom: 8px!important;
}


@media print, screen and (max-width: 768px) {
	#all-products {
		margin-bottom: 0!important;
	}
}