@charset "UTF-8";
/*
Theme Name: template
Author: Catwork Co., Ltd.
*/

/* bookbinding
------------------------------------------------------------------------*/
	
/* key ------*/
	.bookbinding .key .inner .text01{
		display: inline-block;
		height: 75px;
		background: url("../img/bookbinding/key_text01.png")left top no-repeat;
		padding: 50px 0 0 532px;
		box-sizing: border-box;
		line-height: 1;
	}
@media screen and (max-width: 768px){
	.bookbinding .key .inner .text01{
		height: 37px;
		background: url("../img/bookbinding/key_text01_sp.png")left top no-repeat;
		padding: 22px 0 0 295px;
	}
}
@media screen and (max-width: 475px){
	.bookbinding .key .inner .text01{
        height: 23px;
        background-size: 170px;
        padding: 7px 0 0 185px;
	}
}

	
/* cont01 ------*/

    .bookbinding .cont01 {
        overflow: hidden;
    }
	.bookbinding .cont01 .inner{
		padding: 110px 20px 0;
		box-sizing: border-box;
	}
@media screen and (max-width: 1024px){
	.bookbinding .cont01 .inner{
		padding: 90px 20px 0;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont01 .inner{
		padding: 20px 20px 0;
	}
}

.bookbinding .cont01 .inner .cont{
	width: 100%;
	padding: 0 0 0 600px;
	box-sizing: border-box;
	color: #fff;
	position: relative;
}
.bookbinding .cont01 .inner .cont::after{
	position: absolute;
	top: 0;
	left: 380px;
	content: "";
	background: #014195;
	width: 2000px;
	height: 100%;
	z-index: -1;
}
.bookbinding .cont01 .inner .cont:nth-of-type(2){
	padding: 0 600px 0 0;
	margin-top: 70px;
}
.bookbinding .cont01 .inner .cont:nth-of-type(2)::after{
	right: 380px;
	left: auto;
}

@media screen and (max-width: 1024px){
	.bookbinding .cont01 .inner .cont{
		width: 100%;
		padding: 0 40px 0 100px;
		box-sizing: border-box;
		margin: 190px 0 0;
		position: relative;
	}
	.bookbinding .cont01 .inner .cont::after{
		content: none;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2){
		padding: 0 100px 0 40px;
		margin: 170px 0 0;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont01 .inner .cont{
		display: flex;
		flex-direction: column;
		width: 600px;
		padding: 0;
		box-sizing: border-box;
		margin: 50px auto 0;
		position: relative;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2){
		padding: 0;
		margin: 40px auto 0;
	}
}
@media screen and (max-width: 640px){
	.bookbinding .cont01 .inner .cont{
		width: 93.75%;
	}
}

.bookbinding .cont01 .inner .cont .text_box{
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	min-height: 230px;
	padding: 70px 0 62px 40px;
	box-sizing: border-box;
}
.bookbinding .cont01 .inner .cont:nth-of-type(2) .text_box{
	padding: 50px 50px 42px 0;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont01 .inner .cont .text_box{
		justify-content: flex-start;
		width: 100%;
		min-height: inherit;
		background: #014195;
		padding: 240px 40px 40px;
		box-sizing: border-box;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .text_box{
		padding: 240px 40px 40px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont01 .inner .cont .text_box{
		justify-content: flex-start;
		width: 100%;
		min-height: inherit;
		background: #014195;
		padding: 30px;
		box-sizing: border-box;
		order: 2;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .text_box{
		padding: 30px;
	}
}

.bookbinding .cont01 .inner .cont .text_box h3{
	background: url("../img/bookbinding/text01.png")left top no-repeat;
	padding-top: 18px;
	font-size: 24px;
}
.bookbinding .cont01 .inner .cont:nth-of-type(2) .text_box h3{
	background: url("../img/bookbinding/text02.png")left top no-repeat;
}
@media screen and (max-width: 1100px){
	.bookbinding .cont01 .inner .cont .text_box h3{
		font-size: 20px;
	}
}

	.bookbinding .cont01 .inner .cont .text_box .text01{
		line-height: 1.875;
		margin-top: 25px;
	}
@media screen and (max-width: 1100px){
	.bookbinding .cont01 .inner .cont .text_box .text01{
		font-size: 14px;
	}
}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .text_box .text01{
		line-height: 2;
	}

	.bookbinding .cont01 .inner .cont .img{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .img{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: auto;
		right: 0;
	}
@media screen and (max-width: 1024px){
	.bookbinding .cont01 .inner .cont .img{
		position: absolute;
		top: 50px;
		left: 31%;
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .img{
		position: absolute;
		top: 50px;
		right: 31%;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont01 .inner .cont .img{
		position: static;
		order: 1;
		transform: translateY(0);
	}
	.bookbinding .cont01 .inner .cont:nth-of-type(2) .img{
		position: static;
		transform: translateY(0);
	}
}


/* cont02 ------*/
	
.bookbinding .cont02{
	max-width: 100%;
	margin-top: 140px;
    overflow: hidden;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont02{
		margin-top: 90px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont02{
		margin-top: 60px;
	}
}

.bookbinding .cont02 h2{
	width: 100%;
	background: url("../img/bookbinding/text03.png")center bottom no-repeat;
	padding: 0 0 44px;
	font-size: 46px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.bookbinding .cont02 h2 span{
	display: inline-block;
	background: url("../img/bookbinding/line01.png")left bottom no-repeat;
	padding-bottom: 18px;
	color: #014195;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 2px;
	margin-bottom: 20px;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont02 h2{
		background: url("../img/bookbinding/text03.png")center bottom no-repeat;
		background-size: 88px;
		padding: 0 0 35px;
		font-size: 38px;
	}
	.bookbinding .cont02 h2 span{
		padding-bottom: 16px;
		font-size: 18px;
		margin-bottom: 18px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont02 h2{
		background: url("../img/bookbinding/text03.png")center bottom no-repeat;
		background-size: 66px;
		padding: 0 0 32px;
		font-size: 26px;
	}
	.bookbinding .cont02 h2 span{
		padding-bottom: 14px;
		font-size: 14px;
		margin-bottom: 12px;
	}
}


.bookbinding .cont02 .inner{
	margin-top: 70px;
	padding: 70px 20px;
	box-sizing: border-box;
	z-index: 10;
	text-align: center;
	position: relative;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont02 .inner{
		margin-top: 50px;
		padding: 50px 20px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont02 .inner{
		margin-top: 30px;
		padding: 30px 20px;
	}
}

.bookbinding .cont02 .inner::after{
	position: absolute;
	top: 0;
    left: 220px;
	content: "";
	background: #f1f8fd;
	width: 2000px;
	height: 100%;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.bookbinding .cont02 .inner::after{
		width: 800px;
		left: 150px;
	}
}


.bookbinding .cont02 .inner h3{
	display: inline-block;
	text-align: center;
	min-height: 46px;
	background: url("../img/bookbinding/text04.png")left center no-repeat;
	padding: 0 0 0 104px;
	color: #1c4273;
	font-weight: bold;
	font-size: 28px;
	line-height: 46px;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont02 .inner h3{
		min-height: 36px;
		background: url("../img/bookbinding/text04.png")left center no-repeat;
		background-size: 48px;
		padding: 0 0 0 64px;
		color: #1c4273;
		font-size: 24px;
		line-height: 40px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont02 .inner h3{
		font-size: 18px;
	}
}

.bookbinding .cont02 .inner .text01{
	margin-top: 30px;
	font-size: 18px;
	line-height: 1.8;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont02 .inner .text01{
		margin-top: 20px;
		font-size: 16px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont02 .inner .text01{
		margin-top: 10px;
		font-size: 14px;
	}
}


.bookbinding .cont02 .inner .cont{
	text-align: left;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	height: 300px;
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 5%, rgba(255,255,255,1) 50%) ,url("../img/bookbinding/img03.png")left top no-repeat;
	box-sizing: border-box;
	margin: 40px 0 0;
	position: relative;
}
.bookbinding .cont02 .inner .cont:nth-of-type(2){
	background: linear-gradient(-90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 5%, rgba(255,255,255,1) 50%) ,url("../img/bookbinding/img04.png")right top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(3){
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 5%, rgba(255,255,255,1) 50%) ,url("../img/bookbinding/img05.png")left top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(4){
	background: linear-gradient(-90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 5%, rgba(255,255,255,1) 50%) ,url("../img/bookbinding/img06.png")right top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(5){
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 5%, rgba(255,255,255,1) 50%) ,url("../img/bookbinding/img07.png")left top no-repeat;
	box-sizing: border-box;
}


@media screen and (max-width: 768px){
.bookbinding .cont02 .inner .cont{
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	height: auto;
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%) ,url("../img/bookbinding/img03_sp.png")left top no-repeat;
	background-size: 100%;
	padding: 150px 30px 40px;
	box-sizing: border-box;
	margin: 50px 0 0;
	position: relative;
}
.bookbinding .cont02 .inner .cont:nth-of-type(2){
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%) ,url("../img/bookbinding/img04.png")right top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(3){
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%) ,url("../img/bookbinding/img05.png")left top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(4){
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%) ,url("../img/bookbinding/img06.png")right top no-repeat;
	box-sizing: border-box;
}
.bookbinding .cont02 .inner .cont:nth-of-type(5){
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%) ,url("../img/bookbinding/img07_sp.png")left top no-repeat;
	box-sizing: border-box;
}
}


.bookbinding .cont02 .inner .cont h4{
	width: 530px;
	color: #014195;
	font-weight: bold;
	font-size: 24px;
	line-height: 1;
	margin-left: 55px;
	margin-bottom: 25px;
}
.bookbinding .cont02 .inner .cont:nth-of-type(odd) h4{
	margin: 0 50px 25px auto;
}
@media screen and (max-width: 1024px){
.bookbinding .cont02 .inner .cont h4{
	width: 360px;
	margin-left: 30px;
	margin-bottom: 15px;
	font-size: 20px;
}
.bookbinding .cont02 .inner .cont:nth-of-type(odd) h4{
	margin: 0 30px 15px auto;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont02 .inner .cont h4{
	width: 100%;
	margin: 0 0 15px 0;
}
}

.bookbinding .cont02 .inner .cont .text02{
	width: 530px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.8;
	margin-left: 55px;
}
.bookbinding .cont02 .inner .cont:nth-of-type(odd) .text02{
	margin: 0 50px 0 auto;
}
@media screen and (max-width: 1024px){
.bookbinding .cont02 .inner .cont .text02{
	width: 360px;
	font-size: 16px;
	line-height: 2;
	margin-left: 30px;
}
.bookbinding .cont02 .inner .cont:nth-of-type(odd) .text02{
	margin: 0 30px 0 auto;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont02 .inner .cont .text02{
	width: 100%;
	margin: 0;
	font-size: 14px;
	line-height: 2;
}
}


/* cont03 ------*/
	
.bookbinding .cont03 .inner{
	margin-top: 70px;
	padding: 70px 0;
	box-sizing: border-box;
	z-index: 10;
	text-align: center;
	position: relative;
}
@media screen and (max-width: 1024px){
.bookbinding .cont03 .inner{
	margin-top: 50px;
	padding: 50px 0;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont03 .inner{
	margin-top: 30px;
	padding: 30px 0;
}
}

.bookbinding .cont03 .inner::after{
	position: absolute;
	top: 0;
	right: 220px;
	content: "";
	background: #f1f8fd;
	width: 2000px;
	height: 100%;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.bookbinding .cont03 .inner::after{
		width: 800px;
		right: 150px;
	}
}

.bookbinding .cont03 .inner h3{
	display: inline-block;
	text-align: center;
	min-height: 46px;
	background: url("../img/bookbinding/text05.png")left center no-repeat;
	padding: 0 0 0 104px;
	color: #1c4273;
	font-weight: bold;
	font-size: 28px;
	line-height: 46px;
}
@media screen and (max-width: 1024px){
.bookbinding .cont03 .inner h3{
	min-height: 36px;
	background: url("../img/bookbinding/text05.png")left center no-repeat;
	background-size: 48px;
	padding: 0 0 0 64px;
	color: #1c4273;
	font-size: 24px;
	line-height: 40px;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont03 .inner h3{
	font-size: 18px;
}
}

.bookbinding .cont03 .inner .text01{
	margin-top: 30px;
	font-size: 18px;
	line-height: 1.8;
}
@media screen and (max-width: 1024px){
.bookbinding .cont03 .inner .text01{
	margin-top: 20px;
	font-size: 16px;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont03 .inner .text01{
	margin-top: 10px;
	font-size: 14px;
}
}

.bookbinding .cont03 .tab_box .main_box{
	margin-top: 50px;
	width: 100%;
	height: 485px;
	background: #fff;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}
.bookbinding .cont03 .tab_box .main_box h4{
	background: #014195;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	height: 45px;
	line-height: 45px;
}
.bookbinding .cont03 .tab_box .main_box .text02{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin: 35px 0 30px;
	line-height: 1;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont03 .tab_box .main_box{
		margin-top: 30px;
		height: 455px;
	}
	.bookbinding .cont03 .tab_box .main_box h4{
		font-size: 18px;
		height: 40px;
		line-height: 40px;	
	}
	.bookbinding .cont03 .tab_box .main_box .text02{
		font-size: 16px;
		margin: 25px 0 20px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont03 .tab_box .main_box{
		height: 420px;
	}
	.bookbinding .cont03 .tab_box .main_box h4{
		font-size: 16px;
	}
	.bookbinding .cont03 .tab_box .main_box .text02{
		font-size: 14px;
		line-height: 1.5;
	}
}

.bookbinding .cont03 .tab_box .btn_area{
	display: flex;
	justify-content: center;
	gap: 0 75px;
}
.bookbinding .cont03 .tab_box .tab_btn{
	width: 320px;
	padding-top: 235px;
	cursor: pointer;
	transition: all 0.2s ease 0s;
	z-index: 1;
	position: relative;
}
.bookbinding .cont03 .tab_box .tab_btn.active{
	cursor: pointer;
	transition: all 0.2s ease 0s;
	z-index: 1;
	position: relative;
}
.bookbinding .cont03 .tab_box .tab_btn label{
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
}
.bookbinding .cont03 .tab_box .tab_btn label span{
	font-size: 16px;
	margin-left: 15px;
}
.bookbinding .cont03 .tab_box .tab_btn.active img{
	border: 5px solid #fbb03b;
}
.bookbinding .cont03 .tab_box .tab_btn img{
	border: 5px solid #fff;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.bookbinding .cont03 .tab_box .tab_btn input {
	appearance: revert;
}
.bookbinding .cont03 .tab_box .tab_btn input[type=radio]{
	transform: scale(1.5);
	accent-color: #333;
	padding-right: 10px;
}

@media screen and (max-width: 1024px){
	.bookbinding .cont03 .tab_box .btn_area{
		gap: 0 40px;
	}
	.bookbinding .cont03 .tab_box .tab_btn{
		width: 280px;
		padding-top: 220px;
	}
	.bookbinding .cont03 .tab_box .tab_btn img{
		width: 280px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont03 .tab_box .btn_area{
		gap: 0 30px;
	}
	.bookbinding .cont03 .tab_box .tab_btn{
		width: 200px;
		padding-top: 170px;
	}
	.bookbinding .cont03 .tab_box .tab_btn img{
		width: 200px;
	}
	.bookbinding .cont03 .tab_box .tab_btn input[type=radio]{
		transform: scale(1.0);
	}	
	.bookbinding .cont03 .tab_box .tab_btn label{
		font-size: 16px;
	}
	.bookbinding .cont03 .tab_box .tab_btn label span{
		font-size: 14px;
	}
}
@media screen and (max-width: 520px){
	.bookbinding .cont03 .tab_box .tab_btn{
		width: 42%;
		padding-top: 35%;
	}
	.bookbinding .cont03 .tab_box .tab_btn img{
		width: 100%;
	}
	.bookbinding .cont03 .tab_box .tab_btn label{
		font-size: 14px;
	}
	.bookbinding .cont03 .tab_box .tab_btn label span{
		font-size: 12px;
	}
}

.bookbinding .cont03 .tab_box .panel_area{
	width: 1100px;
	background: #fff;
	margin: -60px auto 0;
	border: 1px solid #014195;
}
@media screen and (max-width: 1140px){
	.bookbinding .cont03 .tab_box .panel_area{
		width: 90%;
		margin: -60px auto 0;
	}
}

.bookbinding .cont03 .tab_box .tab_panel{
	display: none;
}
.bookbinding .cont03 .tab_box .tab_panel.active{
	display: block;
	width: 1100px;
	background: #fff;
	margin: 0 auto;
	border: 1px solid #014195;
}

@media screen and (max-width: 1140px){
	.bookbinding .cont03 .tab_box .tab_panel.active{
		width: 100%;
	}
}


.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl{
	background: #014195;
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	height: 35px;
	line-height: 35px;
	text-align: center;
	position: relative;
}
.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl::before{
	display: block;
	content: "";
	background: #014195;
	height: calc(tan(60deg) * 28px / 2);
	width: 28px;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	position: absolute;
	top: -20px;
	left: 345px;
	z-index: 1;
}
.bookbinding .cont03 .tab_box .tab_panel:nth-of-type(2).active .tab_ttl::before{
	left: 730px;
}

.bookbinding .cont03 .tab_box .tab_panel.active ul{
	margin: 30px 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 115px));
	gap: 15px 10px;
	justify-content: center;
}
.bookbinding .cont03 .tab_box .tab_panel.active ul li{
	width: 140px;
	height: 115px;
	font-size: 16px;
	font-weight: bold;
	position: relative;
}

@media screen and (max-width: 1024px){
	.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl{
		font-size: 18px;
		height: 30px;
		line-height: 30px;
	}
	.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl::before{
		left: 30%;
	}
	.bookbinding .cont03 .tab_box .tab_panel:nth-of-type(2).active .tab_ttl::before{
		left: 67%;
	}	
}
@media screen and (max-width: 768px){
	.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl{
		font-size: 16px;
	}
	.bookbinding .cont03 .tab_box .tab_panel.active .tab_ttl::before{
		left: 20%;
	}
	.bookbinding .cont03 .tab_box .tab_panel:nth-of-type(2).active .tab_ttl::before{
		left: 75%;
	}	
	.bookbinding .cont03 .tab_box .tab_panel.active ul li{
		font-size: 14px;
	}	
}
@media screen and (max-width: 550px){
	.bookbinding .cont03 .tab_box .tab_panel.active ul li{
		font-size: 12px;
	}
}


/* cont04 ------*/

.bookbinding .cont04 {
    overflow: hidden;
}
.bookbinding .cont04 .inner{
	margin-top: 70px;
	padding: 70px 0;
	box-sizing: border-box;
	z-index: 10;
	text-align: center;
	position: relative;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont04 .inner{
		margin-top: 50px;
		padding: 50px 0;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner{
		margin-top: 30px;
		padding: 30px 0;
	}
}

.bookbinding .cont04 .inner::after{
	position: absolute;
	top: 0;
	left: 220px;
	content: "";
	background: #f1f8fd;
	width: 2000px;
	height: 100%;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner::after{
		width: 800px;
		left: 150px;
	}
}

.bookbinding .cont04 .inner h3{
	display: inline-block;
	text-align: center;
	min-height: 46px;
	background: url("../img/bookbinding/text06.png")left center no-repeat;
	padding: 0 0 0 104px;
	color: #1c4273;
	font-weight: bold;
	font-size: 28px;
	line-height: 46px;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont04 .inner h3{
		min-height: 36px;
		background: url("../img/bookbinding/text06.png")left center no-repeat;
		background-size: 48px;
		padding: 0 0 0 64px;
		color: #1c4273;
		font-size: 24px;
		line-height: 40px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner h3{
		font-size: 18px;
	}
}
	
.bookbinding .cont04 .inner .text01{
	margin-top: 30px;
	font-size: 18px;
	line-height: 1.8;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont04 .inner .text01{
		margin-top: 20px;
		font-size: 16px;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .text01{
		margin-top: 10px;
		font-size: 14px;
	}
}
	

.bookbinding .cont04 .inner .commitment_box{
	margin: 40px calc(50% - 50vw) 0;
	width: 100vw;
}

.bookbinding .cont04 .inner .commitment_box .prev-arrow{
	top: 31%;
	left: calc(50% - 640px);
	transform: translateY(-50%);
}
.bookbinding .cont04 .inner .commitment_box .next-arrow{
	top: 31%;
	right: calc(50% - 640px);
	left: auto;
	transform: translateY(-50%);
}

@media screen and (max-width: 1280px){
	.bookbinding .cont04 .inner .commitment_box .prev-arrow{
		top: 50%;
		left: 20px;
		transform: translateY(-50%);
	}
	.bookbinding .cont04 .inner .commitment_box .next-arrow{
		top: 50%;
		right: 20px;
		left: auto;
		transform: translateY(-50%);
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .prev-arrow{
		top: 195px;
		left: 10px;
		width: 60px;
	}
	.bookbinding .cont04 .inner .commitment_box .next-arrow{
		top: 195px;
		right: 10px;
		left: auto;
		width: 60px;
	}
}

.bookbinding .cont04 .inner .commitment_box .cont{
	text-align: left;
	display: flex;
	flex-direction: column;
	width: 375px;
	background: #fff;
	padding-bottom: 28px;
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
	margin: 20px 19px;
	position: relative;
}

@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .cont{
		display: flex;
		flex-direction: column;
		width: 300px;
		background: #fff;
		padding-bottom: 28px;
		box-shadow: 0 0 15px rgba(0,0,0,0.1);
		margin: 15px;
		position: relative;
	}
}

.bookbinding .cont04 .inner .commitment_box .cont h4{
	color: #014195;
	font-weight: bold;
	padding: 0 30px;
	font-size: 20px;
	line-height: 1;
	margin-top: 34px;
	order: 2;
}

@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .cont h4{
		padding: 0 25px;
		font-size: 18px;
		line-height: 1;
		margin-top: 30px;
	}
}

.bookbinding .cont04 .inner .commitment_box .cont .img{
	order: 1;
}
.bookbinding .cont04 .inner .commitment_box .cont .img img{
	width: 375px;
	height: 250px;
}

@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .cont .img img{
		width: 300px;
		height: 200px;
	}
}

	.bookbinding .cont04 .inner .commitment_box .cont .text01{
		padding: 0 30px;
		font-size: 16px;
		line-height: 1.875;
		margin-top: 16px;
		order: 3;
	}
	.bookbinding .cont04 .inner .commitment_box .cont_06 .text01{
		margin-bottom: 29px;
	}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .cont .text01{
		padding: 0 25px;
		font-size: 14px;
		line-height: 1.875;
		margin-top: 14px;
	}
	.bookbinding .cont04 .inner .commitment_box .cont_01 .text01{
		margin-bottom: 27px;
	}
	.bookbinding .cont04 .inner .commitment_box .cont_03 .text01,
	.bookbinding .cont04 .inner .commitment_box .cont_04 .text01{
		margin-bottom: 21px;
	}
	.bookbinding .cont04 .inner .commitment_box .cont_02 .text01,
	.bookbinding .cont04 .inner .commitment_box .cont_06 .text01{
		margin-bottom: 47px;
	}
}
.bookbinding .cont04 .inner .commitment_box .cont dl{
	order: 4;
	font-size: 16px;
	padding: 0 30px;
	margin-top: 16px;
}
.bookbinding .cont04 .inner .commitment_box .cont dl dt{
	color: #014195;
	font-weight: bold;
	margin: 12px 0 5px;
}
.bookbinding .cont04 .inner .commitment_box .cont dl dt::before{
	content: "■";
	color: #014195;
	margin-right: 5px;
}
@media screen and (max-width: 768px){
	.bookbinding .cont04 .inner .commitment_box .cont dl{
		font-size: 14px;
		margin-top: 14px;
	}
}
.bookbinding .cont04 .inner .commitment_box .cont .btn{
	order: 5;
	text-align: center;
}
.bookbinding .cont04 .inner .commitment_box .cont .btn a{
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	background: #014195;
	line-height: 40px;
	width: 260px;
	height: 40px;
	border-radius: 20px;
	text-align: center;
	margin-top: 25px;
}
	

/* cont05 ------*/
	
.bookbinding .cont05{
	margin-top: 150px;
	padding: 120px 0 150px;
	background: #f1f8fd url("../img/bookbinding/bg01.png")center top no-repeat;
}
@media screen and (min-width: 1801px) {
	.bookbinding .cont05{
		background: #f1f8fd url("../img/bookbinding/bg01.png")center top / 100% no-repeat;
	}
}

@media screen and (max-width: 1024px){
.bookbinding .cont05{
	margin-top: 100px;
	padding: 80px 0 60px;
}
}
@media screen and (max-width: 768px){
.bookbinding .cont05{
	margin-top: 70px;
	padding: 70px 0 60px;
}
}

.bookbinding .cont05 h3{
	width: 100%;
	background: url("../img/bookbinding/text07.png")center bottom no-repeat;
	padding: 0 0 40px;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
@media screen and (max-width: 1024px){
	.bookbinding .cont05 h3{
		background: url("../img/bookbinding/text07.png")center bottom no-repeat;
		background-size: 66px;
		font-size: 28px;
	}
}	
@media screen and (max-width: 768px){
	.bookbinding .cont05 h3{
		background: url("../img/bookbinding/text07.png")center bottom no-repeat;
		background-size: 66px;
		font-size: 20px;
	}
}	
.bookbinding .cont05 .flow_box{
	margin: 60px 20px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: -10px 0;
}
.bookbinding .cont05 .flow_box .box{
	text-align: center;
	width: 290px;
	height: 546px;
	background: #fff;
	border-top: 4px solid #014195;
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
	padding-top: 25px;
	box-sizing: border-box;
	position: relative;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(2),
.bookbinding .cont05 .flow_box .box:nth-of-type(6){
	margin-top: 30px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(3),
.bookbinding .cont05 .flow_box .box:nth-of-type(7){
	margin-top: 60px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(4),
.bookbinding .cont05 .flow_box .box:nth-of-type(8){
	margin-top: 90px;
}

.bookbinding .cont05 .flow_box .box::before{
	content: "";
	background: #014195;
	height: calc(tan(60deg) * 28px / 2);
	width: 28px;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	transform: rotate(90deg);
	position: absolute;
	top: 190px;
	right: -25px;
	z-index: 1;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(4)::before,
.bookbinding .cont05 .flow_box .box:nth-of-type(8)::before{
	display: none;
}

@media screen and (max-width: 1240px){
	.bookbinding .cont05 .flow_box{
		margin: 60px 20px 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 40px 15px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(4),
	.bookbinding .cont05 .flow_box .box:nth-of-type(7){
		margin-top: 30px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(5),
	.bookbinding .cont05 .flow_box .box:nth-of-type(8){
		margin-top: 60px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(6){
		margin-top: 90px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(4)::before{
		display: block;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(3)::before,
	.bookbinding .cont05 .flow_box .box:nth-of-type(6)::before{
		display: none;
	}
}
@media screen and (max-width: 970px){
	.bookbinding .cont05 .flow_box .box:nth-of-type(3),
	.bookbinding .cont05 .flow_box .box:nth-of-type(5),
	.bookbinding .cont05 .flow_box .box:nth-of-type(7){
		margin-top: 0px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(4),
	.bookbinding .cont05 .flow_box .box:nth-of-type(6),
	.bookbinding .cont05 .flow_box .box:nth-of-type(8){
		margin-top: 30px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(3)::before{
		display: block;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(2)::before,
	.bookbinding .cont05 .flow_box .box:nth-of-type(4)::before{
		display: none;
	}
}
@media screen and (max-width: 768px){
	.bookbinding .cont05 .flow_box{
		gap: 30px 0;
	}
	.bookbinding .cont05 .flow_box .box{
		text-align: center;
		width: 100%;
		height: 100%;
		padding: 25px 20px;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(2),
	.bookbinding .cont05 .flow_box .box:nth-of-type(4),
	.bookbinding .cont05 .flow_box .box:nth-of-type(6),
	.bookbinding .cont05 .flow_box .box:nth-of-type(8){
		margin-top: 0;
	}
	.bookbinding .cont05 .flow_box .box::before{
		transform: rotate(180deg);
		position: absolute;
		top: auto;
        bottom: -15px;
		right: 47%;
		z-index: 1;
	}
	.bookbinding .cont05 .flow_box .box:nth-of-type(2)::before,
	.bookbinding .cont05 .flow_box .box:nth-of-type(3)::before,
	.bookbinding .cont05 .flow_box .box:nth-of-type(4)::before,
	.bookbinding .cont05 .flow_box .box:nth-of-type(6)::before{
		display: block;
	}
}
@media screen and (max-width: 440px){
	.bookbinding .cont05 .flow_box .box::before{
		right: 45%;
	}
}

.bookbinding .cont05 .flow_box .box .img{
	position: relative;
}
.bookbinding .cont05 .flow_box .box .img::before{
	content: "";
	background: url(../img/bookbinding/text08.png) no-repeat;
	width: 63px;
	height: 48px;
	position: absolute;
	top: 0;
	left: calc(50% - 86px);
	transform: translateX(-50%);
}
.bookbinding .cont05 .flow_box .box:nth-of-type(2) .img::before{
	background: url(../img/bookbinding/text09.png) no-repeat;
	width: 74px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(3) .img::before{
	background: url(../img/bookbinding/text10.png) no-repeat;
	width: 71px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(4) .img::before{
	background: url(../img/bookbinding/text11.png) no-repeat;
	width: 73px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(5) .img::before{
	background: url(../img/bookbinding/text12.png) no-repeat;
	width: 71px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(6) .img::before{
	background: url(../img/bookbinding/text13.png) no-repeat;
	width: 75px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(7) .img::before{
	background: url(../img/bookbinding/text14.png) no-repeat;
	width: 67px;
}
.bookbinding .cont05 .flow_box .box:nth-of-type(8) .img::before{
	background: url(../img/bookbinding/text15.png) no-repeat;
	width: 72px;
}

.bookbinding .cont05 .flow_box .box h4{
	font-size: 22px;
	font-weight: bold;
	color: #014195;
	line-height: 1;
	margin: 20px 0;
}
.bookbinding .cont05 .flow_box .box h4 span{
	display: block;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.375;
	margin-top: 10px;
}
.bookbinding .cont05 .flow_box .box .text01{
	text-align: left;
	font-size: 16px;
	margin: 0 25px;
	line-height: 1.875;
}
@media screen and (max-width: 768px){
	.bookbinding .cont05 .flow_box .box h4{
		margin: 15px 0 10px;
		font-size: 18px;
	}
	.bookbinding .cont05 .flow_box .box h4 span{
		font-size: 14px;
		margin-top: 5px;
	}
	.bookbinding .cont05 .flow_box .box .text01{
		margin: 0 10px 0 15px;
		font-size: 14px;
	}
}