@charset "utf-8";
/*------------------------------------------------------------
	Reset
------------------------------------------------------------*/
*{
	box-sizing: border-box
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,figure {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
	font-family: sans-serif;
}
html {
	font-size: 62.5%;
}
body{
	color: #333;
	background: #FFF
}
ol, ul {
	list-style: none;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
}
input[type=text],
input[type=email],
input[type=tel],
select,
textarea{
	border: 1px solid #ccc;
	padding: 12px;
	border-radius: 4px;
	width: 100%;
	outline: none;
	font-size: 1.6rem;

}
/*------------------------------------------------------------
	Stracture
------------------------------------------------------------*/
main{
	background:#FFF
}
.bgbox{
	background: #012859;
	padding-bottom: 40px;
}
.inner{
	width:1100px;
	padding: 30px 0;
	margin: 0 auto;

}
.inner2 {
	width:1100px;
	padding: 3rem 6rem;
	margin: 0 auto;
	background: #FFF;
	border-radius: 10px;

	box-shadow: 3px 3px 0 #eee;
}
.inner3{
	width:1100px;

	box-shadow: 3px 3px 0 #eee;
	padding: 3rem 6rem;
	margin: 0 auto;
	background: #FFF;
	border-radius: 10px;
	overflow: hidden
}
.swiper {
  width: 1100px;
  height: auto;
}
.swiper p {
  font-size: 12px;
	padding-top: 5px;
	text-align: center
}
.swiper-slide{
	padding-bottom: 40px;	
}

/*------------------------------------------------------------
	Header
------------------------------------------------------------*/
header{
	background:#001045

}

#confirm header,#thanks header {

	height:80px;
}
#confirm main,#thanks main{
	background: #FFF;
	border-top: 1px solid #ccc;
}

#hdr_description{
	text-align: center;
	background: #01428C;
	height: 40px;
	font-size: 14px;
	line-height: 1;
	color:#FFF;
	display: flex;
	align-items: center;
	justify-content: center
}

#hdr_entry{
	display: block;
	position: absolute;
	width: 180px;
	height: 70px;
	right: 20px;
	top:20px;
	z-index: 10;
}
#hdr_entry img{
	width: 100%;
	height: auto;
}

#hdr_entry:hover{
	opacity: 0.95;
}
#confirm #hdr_entry,#thanks #hdr_entry{
	display: none
}

/*------------------------------------------------------------
	MV
------------------------------------------------------------*/
#mv{
	z-index: 0;
	width: 100%;
	padding: 0px 0 0px 0;
	text-align: center;
	background: #BEDDFA
}
#mv img{
	width:100%;
	height: auto
}



.manga{
	margin-bottom: 30px;
}

.pint-no {
  width: 100px;
  height: 35px;
  background-color: #E37718;
  transform: skew(-25deg);
  display: flex;
  align-items: center;
  justify-content: center;
	display: flex;
	align-items: center;
	justify-content: center;
	font-style: italic;
	margin-bottom: 8px;
}
.pint-no p {
  transform: skew(25deg); /* 相殺してまっすぐに */
  font-weight: bold;
	color: #FFF;
	font-size: 18px;
}
.pint-no p span{
	font-size: 24px;
	display: inline-block;
	margin-left: 3px;
}
/*------------------------------------------------------------
	Footer
------------------------------------------------------------*/
#contact{
	text-align: center;

	padding: 40px 0;
}
#contact .inner2{
	overflow: hidden;

}
#contact .item{
	width: 50%;
	padding: 50px 0;

}
#contact .item h2{
	font-size: 3rem;
	padding-bottom: 5px;
}

#contact .item h2 div{
	font-size: 1.5rem;
	display: block;
	padding-bottom: 5px;
}
#contact .item:first-child{
	float: left;
	border-right: 3px solid #eee;
}
#contact .item:first-child p{
	padding-top: 12px
}
#contact .item:last-child{
	float: right;
}
#contact .item p{
	font-size: 1.6rem;
	margin-bottom: 20px;
	text-align: center
}
#contact .bdr{
	width: 80px;
}
.btn_contact{
}
footer{
	text-align: center;
	font-size: 1.6rem;
	padding: 30px 0;

}
#ftr_logo{
	width:300px;
	margin: 0 auto 20px auto
}
#ftr_logo img{
	width:100%;
	height: auto;
}
#ftr_address{
	padding-top: 10px;

}
#copyright{
	padding-top: 10px;

}

	
/*------------------------------------------------------------
	Common
------------------------------------------------------------*/

.btn1{
	display: inline-block;
	border: none;
	border-radius: 7px;
	background: #E37718;
	color: #FFF;
	text-decoration: none;
	line-height: 1;
	text-align: center;
	width: 265px;
	padding: 21px 10px 18px 10px;
	font-size: 1.8rem;
	position: relative;
	font-weight: bold
}
.btn1:hover{
	opacity: 0.9;
}
.btn1 span,.btn2 span{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
	width: 8px;
	height: 20px;
	position: absolute;
	top:18px;
	right: 15px;
	background-image: url("../img/arrow_wh.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.bdr{
	display: block;
	width: 200px;
	height: 3px;
	background: #E37718;
	margin: 10px auto 0 auto
}
.h1{
	font-size: 3rem;
	text-align: center;
	padding: 20px;
	margin-bottom: 30px
}
.h2{
	font-size: 2rem;
	text-align: center;
	border: 2px solid #0C9E91;
	color: #0C9E91;
	border-radius: 4px;
	padding: 10px;
	margin-bottom: 10px
}
.h1 span{
	font-size: 4.3rem;

}
.ta1{
	width: 100%;
	margin-bottom: 20px;
}
.ta1 td,.ta1 th{
	font-size: 1.6rem;
	padding: 10px;
	border-bottom: 1px solid #ccc;
}
.ta1 th{
	background: #eeee;
	width: 25%
}
.ta1 td{
	background: #FFF;

}
.box1{
	
}
.box1 p{
	color: #FFF;
	font-size: 18px;
	line-height: 200%;
	text-align: justify;
	margin-bottom: 30px
}
.img1{
	width:100%;
	display: block;
	margin: 0;
	padding: 0 0 0 0%;
}
.w100{
	width: 100%;
	height: auto
}
.edit_btn{ font-size: 1.6rem; }
.center{ text-align: center }
.txt1{font-size: 1.6rem}
.sp{ display: none; }
.pc{ display: block; }
.mb50{ margin-bottom: 50px; }
.mb40{ margin-bottom: 40px; }
.mb30{ margin-bottom: 30px; }
.mb20{ margin-bottom: 20px; }
.mb10{ margin-bottom: 10px; }
.mb5{ margin-bottom: 5px; }
.error{ color: red; }

#about{
	background-size: auto 100%;
	background-position: bottom;
	padding-bottom: 20px;

}
#about h1{
	font-size:3.2rem;
	font-weight:bold;
	color: #FFF;

}
#gallery{

}
#about h1 span{

}

/*------------------------------------------------------------
	FAQ
------------------------------------------------------------*/
#faq{
	margin-bottom: 40px;
	padding: 3rem 0 0 0 ;
}

.faq_list .item{
	padding-bottom: 25px;
	margin-bottom: 25px;
	border-bottom: 2px dashed #ccc;
	font-size: 1.6rem;
}
.faq_list .item:last-child{
	border: none;
}
.faq_list h2{
	font-size: 2.3rem;
	margin-bottom: 15px;
}
.qbox,.abox{
	padding-left: 46px;
	position: relative;
}
.qbox{
	padding-top: 3px;
}
.abox{
	padding-top: 6px;
}
.q,.a{
	font-size: 20px;
	font-family: Arial, Helvetica, "sans-serif";
	color: #FFF;
	border-radius: 100px;
	background: #252B38;
	display: inline-block;
	font-weight: bold;
	padding: 8px 0 0 0;
	width: 3.5rem;
	height: 3.5rem;
	text-align: center;
	line-height: 1;
	position: absolute;
	top:0px;
	left: 0px;
}
.q{
	background: #252B38;
}
.a{
	background: #86A4D4;
}
.ceo_name{
	text-align: right;
	font-size: 1.7rem;
	padding-top: 10px;
}
/*------------------------------------------------------------
	Form
------------------------------------------------------------*/
#form{


	padding-bottom: 50px;
}
#privacy{
	font-size: 1.4rem;
	height: 300px;
	overflow-y: auto;
	width: 100%;
	padding: 15px;
	border: 1px solid #ccc;
	margin-bottom: 30px
}
#privacy p{
	padding-bottom: 15px;
}


/*------------------------------------------------------------
	Work
------------------------------------------------------------*/
#work{
	background-image: url("../img/bg.jpg");
	background-size: cover
}
#work .inner{
	padding-bottom: 0;

}
.box_about{
	display: flex;
	width: 100%;
	padding: 0;
	margin: 0;
	color: #333;
	justify-content: space-between;
}
.box_about .item1{
	width: 35%;
	position: relative;
	bottom: 0;

}
.box_about .item1 img{
	position: absolute;
	bottom:0;
	right: 5rem;
	width: 90%;


}
.box_about .item2{
	width: 65%;
	padding: 2rem 0 2rem 0;

}
.box_about h1{
	font-size: 2.7rem;
	border-top: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	margin-bottom: 15px;
	padding-bottom: 18px;
	padding-top: 18px;
	text-align: center;
	color: #FFF;
}
.box_about p{
	font-size: 1.6rem;
	line-height: 170%;
	color: #FFF
}
.work_detail{
	background:rgba(236,232,199,1.00);
	border-radius: 6px;
	padding: 15px;
	margin-bottom: 35px;
	margin-top: 14px;
}
.work_detail p,.work_detail h2{
	color: #333
}
.work_detail h2{
	font-size: 1.8rem;
	margin-bottom:0.5rem;
}
.box_about ul{
	padding: 15px 0 10px 0;
	display: flex;
	flex-wrap: nowrap;
	gap:10px;

}
.box_about li{
	width: 50%;

}
.box_about li img{
	width: 100%;
	height: auto
}
/*------------------------------------------------------------
	Access
------------------------------------------------------------*/
#access{


}
#boshu{

	padding: 4rem 0;
}
/*------------------------------------------------------------
	Movie
------------------------------------------------------------*/
#movie{
	background: #002253;
	padding: 20px;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/*------------------------------------------------------------
	point
------------------------------------------------------------*/

#point{
	padding-top: 30px;
}
#point li{
	border-bottom: 1px solid #ccc;
	display: flex;
	justify-content: space-between;
	padding-bottom: 25px;
	margin-bottom: 25px;
	padding-top: 15px
}
#point li:last-child{
	border: none;
	margin-bottom: 0;
}
#point h3{
	font-size: 2.6rem;
	margin:0 0 1rem 0;

}
#point p{
	font-size: 1.7rem;
	line-height: 200%;

}
#point figure{
	display: block;
	width: 48%;
}
.pint_txt{

	width: 48%;
}


/*------------------------------------------------------------
	Manga
------------------------------------------------------------*/
#manga{

	text-align: center
}
#manga img{
	width:90%;
	height: auto
}

#manga h1 p{

	font-size:2.2rem;
	line-height: 1
}

.outline{
	margin-bottom: 40px;
}
.outline h1{
	font-size: 34px;
	margin-bottom: 20px;
	padding-bottom: 14px;
	border-bottom: 4px solid #183AAC;
	text-align: center;
	color: #183AAC
}
.outline h4{
	font-size: 24px;
	margin-bottom: 6px;
	text-align: center;
}
.outline p{
	font-size: 17px;

}
#price .inner2{
	margin-top: -30px;
	position: relative;
	z-index: 2;
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
	padding-top: 60px;
	border: 4px solid #183AAC;
}
.price_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 50px;
}
.price_list_item{
	width: 49%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ccc;
}

.price_list_item figure img{
	width: 100%;
	height: auto
}
.price_list_item .inr{
	width: 100%;
}
.price_list_item h3 {
  position: relative;
  display: inline-block;
  font-size: 22px;
  margin-bottom: 8px;
	color: #183AAC;
  padding-left: 14px;
	line-height: 140%!important
}
.price_list_item h3::before {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  width: 6px;
  height: 20px;
  background-color: #183AAC;
  border-radius: 3px;
}
.price_list_item div{
	font-size: 16px;
	padding-left: 1rem;
	padding-top: 10px;
}
.sm{
	font-size: 13px;
	display: block;
	padding-top: 10px;
}
.price_list_item p{
	font-size: 20px;

	text-align: right;

}
.price_list_item p span{
	font-size: 14px;

}
.tit1{
	text-align: center;
	background: #183AAC;
	color: #FFF;
	font-size: 30px;
	line-height: 1;
	padding: 25px 15px;
	margin-bottom: 30px;
	position: relative;
	height: 80px;
	border-radius: 10px;
}
.tit1 span{
	display: block;
	position: absolute;
	width: 120px;
	height: 158px;
	right: 10px;
	bottom: -20px;
	background-image: url("../img/il.png");
	background-repeat: no-repeat;
	background-size: 100% auto
}
#ftr_cv{
	position: fixed;
	bottom:0;
	left: 0;
	width: 100%;
	background: rgba(206,220,231,0.9);
	text-align: center;
	padding: 8px;
	z-index: 100;
}

#ftr_cv a{
	text-decoration: none;
	display: inline-block;
	padding: 6px;
}
#ftr_cv img{
	width: 300px;
	height: auto;
}
.memo{
	padding: 20px;
	background: #FFFCD6;
	font-size: 16px;
	line-height: 170%
}
@media screen and (max-width: 768px) {

.sp{ display: block; }
.pc{ display: none; }

/*------------------------------------------------------------
	Stracture
------------------------------------------------------------*/
.inner{
	width: 90%;
	padding:1rem;
	margin: 0 auto;
}
.inner2{
	width: 90%;
	padding:1rem;
	margin: 0 auto;
}
.inner3{
	width: 90%;
	padding:1rem;
	margin: 0 auto;
}
.swiper {
	width: 90%;
  height: auto;
}
/*------------------------------------------------------------
	Header
------------------------------------------------------------*/

#mv img{
	width: 100%;
	height: auto
}
#confirm header,#thanks header {

	height: 55px;
}

#hdr_description{
	line-height: 140%;
	font-size: 12px;
	height: 40px;
}
#hdr_entry{
	width: 115px;
	height: 50px;
	font-size: 1.6rem;
	right: 10px;
	top:50px;
}

/*------------------------------------------------------------
	Footer
------------------------------------------------------------*/

#contact .inner3{
	padding-top:3rem;
}
#contact .item{
	width: 100%;
	padding: 10px 0;
}
#contact .item:first-child{
	padding: 0px 0 0px 0;
	border: none
}
#contact .item:last-child{
	padding: 0px 0 15px 0;
}
#contact .item h2{
	font-size: 2.3rem;
	padding-bottom: 5px;
}
/*------------------------------------------------------------
	Common
------------------------------------------------------------*/
.h1{
	font-size: 2.2rem;
	text-align: center;
	padding: 15px;
	margin-bottom: 10px
}
.box1{

}


.img1{
	padding: 0;
}

/*------------------------------------------------------------
	About
------------------------------------------------------------*/
#about h1{

	font-size:2.5rem;
	line-height:130%;
	padding-bottom:1rem;
	text-align: center
}
.box_about{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 20px 0 0 0;
	margin: 0;

}
.box_about h1{
	text-align: center
}
.box_about .item1{
	order: 2;
	width:100%;
	height: auto;
	text-align: center;
	display: none
		
}
.box_about .item2{
	width:100%;
	order: 1;
	height: auto;
	padding: 0;

}
.box_about .item1 img{
	display: inline-block;
	position: relative;
	left: 0;
	right: auto;
	top: 0;
	width: 70%;
	height: auto
}
.box_about ul{
	flex-wrap:wrap

	}
.box_about li{
	width: 100%;

	}
.box_about{
	width: 100%;
	}

/*------------------------------------------------------------
	FAQ
------------------------------------------------------------*/

.faq_list h2{
	font-size: 1.8rem;
	margin-bottom: 15px;
}

ul.list2{
	overflow: hidden;
	margin-bottom: 0px;
	padding: 15px
}
ul.list2 li{
	float: left;
	width: 100%;
	padding: 0 0 20px 0;
}
ul.list2 h3{
	font-size: 2.1rem;
	margin-bottom: 6px;
}
ul.list2 figure img{
	width: 100%;
	height: auto
}
.h_m{
	text-align: center;
	font-size: 2rem;
	line-height: 120%;
}
.h_m div{
	font-size: 1.5rem
}
/*------------------------------------------------------------
	point
------------------------------------------------------------*/
#point{
	padding-top:2rem;
	
}
#point ul{
	padding: 0 5px;

}
#point li{
	border-bottom: 1px solid #ccc;
	overflow: hidden;
	padding-bottom: 25px;
	margin-bottom: 25px;
	flex-wrap: wrap
}
#point h3{
	font-size: 2.2rem;
	margin:0 0 0.7rem 0; 
	text-align: center
}
#point p{
	font-size: 1.7rem;
	line-height: 200%;

}
#point figure{
	width: 100%;
	margin-bottom: 30px;

}
.pint_txt{
	width: 100%;
}
.h2{
	font-size: 2.2rem;
	line-height:130%;
	padding-bottom:1rem !important;

}
.h2 span{
	font-size: 3.8rem;

}
.pint-no{
	margin: 0 auto 10px auto
}
.pint-no p {
  transform: skew(25deg); /* 相殺してまっすぐに */
  font-weight: bold;
	color: #FFF;
	font-size: 18px;

}
.pint-no p span{
	font-size: 24px;
	display: inline-block;
	margin-left: 3px;
}
/*------------------------------------------------------------
	Manga
------------------------------------------------------------*/
#manga{

	text-align: center
}
#manga img{
	width:100%;
	height: auto
}
#manga h1{

	font-size:2.8rem;

}
#manga h1 p{

	font-size:2rem;
	line-height: 1
}
	.ta1 td,.ta1 th{
		width: 100%;
		display: block
	}
#ftr_cv{
	position: fixed;
	bottom:0;
	left: 0;
	width: 100%;
	background: rgba(0,0,0,0.9);
	text-align: center;
	padding: 8px;
	display: flex;
}

#ftr_cv a{
	text-decoration: none;
	display: block;
	text-align: center;
	width: 50%;
	padding: 0px;
}
#ftr_cv img{
	width: 100%;
	height: auto;
}
	
	

.outline{
	margin-bottom: 40px;
}
.outline h1{
	font-size: 20px;
	margin-bottom: 15px;
	padding-bottom: 10px;
	border-bottom: 3px solid #183AAC;
	line-height: 140%

}
.outline h4{
	font-size: 13px;
	margin-bottom: 4px;
	text-align: center;
}
.outline p{
	font-size: 17px;

}
#price .inner2{
	margin-top: 0px;
	position: relative;
	z-index: 2;
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
	padding: 30px 20px;
	border: 4px solid #183AAC;
}
.price_list{
	display: block;

	margin-bottom: 50px;
}
.price_list_item{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ccc;
}

.price_list_item figure img{
	width: 100%;
	height: auto
}
.price_list_item .inr{
	width: 100%;
}
.price_list_item h3 {
  position: relative;
  display: inline-block;
  font-size: 17px;
  margin-bottom: 0px;
	color: #183AAC;
  padding-left: 14px;
	line-height: 140%!important
}
.price_list_item h3::before {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  width: 6px;
  height: 20px;
  background-color: #183AAC;
  border-radius: 3px;
}
.price_list_item div{
	font-size: 16px;
	padding-left: 0;
	padding-top: 10px;
}
.sm{
	font-size: 13px;
	display: block;
	padding-top: 10px;
}
.price_list_item p{
	font-size: 22px;

	text-align: right;
	font-weight: bold
}
.price_list_item p span{
	font-size: 14px;

}
.tit1{
	text-align: left;
	font-size:18px;
	line-height: 1;
	padding: 0 15px;
	margin-bottom: 30px;
	position: relative;
	height: 50px;
	border-radius: 5px;
	display: flex;
	align-items: center
}
.tit1 span{
	display: block;
	position: absolute;
	width: 60px;
	height: 78px;
	right: -5px;
	bottom: -6px;
	background-image: url("../img/il.png");
	background-repeat: no-repeat;
	background-size: 100% auto
}
#ftr_cv{
	position: fixed;
	bottom:0;
	left: 0;
	width: 100%;
	background: rgba(206,220,231,0.9);
	text-align: center;
	padding: 8px;
	z-index: 100;
}

#ftr_cv a{
	text-decoration: none;
	display: inline-block;
	padding: 6px;
}
#ftr_cv img{
	width: 300px;
	height: auto;
}
}