@charset "utf-8";

*{box-sizing: border-box;
	margin: 0;
	padding: 0;}
body{margin:0 auto;
	width: 100%;
	height: 100%;
	max-width: 1920px;
	min-width: 750px;
	-webkit-text-size-adjust: 100%; 
	font-family: Arial, Helvetica, "sans-serif", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	scroll-behavior: smooth;
}
@font-face {
	src: url("../fonts/AcuminVariableConcept.otf") format("opentype");
	font-family: Acumin Variable Concept;
}
/*----　フォント　----*/
@font-face {
  font-family: "font_M";
  src:url("../fonts/A-OTF-MaruFoPro-Medium.otf") format("opentype");
}
@font-face {
  font-family: "font_B";
  src:url("../fonts/NotoSerifJP-Bold.otf") format("opentype");
}
@font-face {
  font-family: "font_T";
  src:url("../fonts/MPLUS1Code-VariableFont_wght.ttf") format("truetype");
}
@font-face {
  font-family: "font_fork";
  src:url("../fonts/MPLUS1Code-VariableFont_wght.ttf") format("truetype");
}
/*----　初期設定　----*/
a{
	text-decoration:none;
	color: inherit;
	transition:ease-in-out 0.2s;
	font-family: "font_B";
	letter-spacing: 2px;
	white-space: nowrap;
}
a:hover{
	opacity: 0.8;
}
p{	text-align: justify;
	font-size: 18px;
	color:#252525;
}
.display_tel{
	display: none;
}
.display_tel_950{
	display: none;
}
.display_tel_1000{
	display: none;
}
.display_tel_1100{
	display: none;
}
.haba{
	max-width:1300px;
	width: 100%;
	margin: auto;
}
.haba_1150{
	max-width: 1150px;
	width: 100%;
	margin: auto;
}
.haba_1000{
	max-width: 1000px;
	width: 100%;
	margin: auto;
}
.flex_wrap{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: wrap
}
.flex{
	display: flex;
	align-items: center;
	justify-content: center;
}
.flex_top{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.flex_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: center;
}
.flex_center_top{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.flex_left{
	display: flex;
	align-items:center;
	justify-content: flex-start;
}
.flex_right{
	display: flex;
	align-items:center;
	justify-content: flex-end;
}
.flex_between{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.flex_between_top{
	display: flex;
	align-items:flex-start;
	justify-content: space-between;
}
.flex_between_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: space-between;
}
.flex_column{
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;	
}
.flex_column_top{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	align-items: center;	
}
.flex_column_left{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
}
/*------レスポンシブ-------*/
/*----　可変FLEX　----*/
.kahen_flex,.kahen_flex_r{
	display: flex;
	align-items: center;
	justify-content: center;
}
.flex_r{
	display: flex;
	align-items: center;
	justify-content: center;
}
.kahen_flex_left,.kahen_flex_left2{
	display: flex;
	align-items:center;
	justify-content: flex-start;
}
.kahen_flex_top,.kahen_flex_top_r{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.kahen_flex_top_left{
	display: flex;
	align-items:flex-start;
	justify-content: flex-start;
}
.kahen_flex_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: center;
}
.kahen_between_bottom,.kahen_between_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: center;
}
.kahen_flex_center_top{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.kahen_flex_between,.kahen_flex_between_r{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.kahen_flex_between_top,.kahen_flex_between_top_r{
	display: flex;
	align-items:flex-start;
	justify-content: space-between;
}
.kahen_flex_between_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: space-between;
}
.kahen_flex_column{
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
}
.kahen_flex_column_left{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	.kahen_flex,.kahen_flex_left,
	.kahen_flex_top,.kahen_flex_bottom,
	.kahen_flex_between_bottom,
	.kahen_flex_between_top,
	.kahen_flex_between,
	.kahen_flex_column_left,
	.kahen_flex_center_top,
	.kahen_between_bottom{
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
}
	.kahen_flex_r,.kahen_flex_top_r,
	.kahen_flex_between_r,
	.kahen_flex_between_top_r,
	.kahen_between_bottom_r{
	display: flex;
	flex-flow:column-reverse;
	align-items: center;
	justify-content: center;	
}
	.flex_r{
	display: flex;
	align-items: center;
	justify-content:center;
	flex-flow: row-reverse;	
}
	.kahen_flex_left2,.kahen_flex_top_left{
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	justify-content:flex-start;
}
	.kahen_flex_column{
	display: flex;
	flex-flow:nowrap;
	justify-content: center;
	align-items: center;
}
}
/*----　可変FLEX　----*/


.tate{
	-ms-writing-mode: tb-rl;
 	writing-mode: vertical-rl;
}
.siro{
	color: #fff;
}

ol li,ul li{
	list-style-position: inside;
}
body{
	
}
.img{
	background-position: center;
	background-size:cover;
	background-repeat: no-repeat;
}
h1{
	font-size: 12px;
	color:#383838;
	font-family: "font_M";
	margin-left: 3px;
	font-weight: normal;
	text-align: center;
	white-space: nowrap;
}
h2{
	font-size: 35px;
	font-family: "font_M";
	font-weight: normal;
	line-height: 40px;
	color:#fff;
	letter-spacing: 2px;
	padding: 5px 20px 10px 30px;
	background-image: url("../images/title_BG.png");
	background-size: cover;
}
h3{
	font-size: 38px;
	color:#383838;
	text-align: center;
	white-space: nowrap;
}
h4{
	font-size: 33px;
	color:#EC006F;
	margin-left: 3px;
	text-align: center;
	white-space: nowrap;	
}
h5{
	font-size: 20px;
	color:#fff;
	background-color: #22A673;
	text-align: center;
	white-space: nowrap;
	padding: 5px;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	h5{
	font-size: 25px;
}
	h2{
		text-align: center;
	}
}
/*--------- ヘッダー ---------*/
header{
	position: fixed;
	width: 100%;
	background-color: #fff;
	z-index: 500;
}
.gray_link a{
	background-color: #C4C4C4;
	width: 120px;
	padding: 8px 0 5px 0;
	margin-right: 10px;
	border-radius: 0 0 10px 10px;
}
.gray_link p{
	color: #fff;
	font-size: 15px;
	text-align: center;
}

/*--- nav ---*/
.header_nav{
	background-color: #000;
}
.header_nav a{
	font-size: 22px;
	padding: 3px 10px;
	color: #fff;
}
.header_nav hr{
	border: #fff solid 2px;
	border-left: none;
	border-top: none;
	border-bottom: none;
	margin: 0 20px;
	height: 30px;
}
.header_nav a:hover{
	color: #EC006F;
	opacity: 1;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
/*--- ヘッダー ---*/
header{
	position:relative;
	top:0;
}
header .rogo{
	width: 550px;
	margin-top: -10px;
	}
h1{
	font-size: 13px;
	margin-left: 10px;
	margin-top: 0px;
	white-space: nowrap;
	font-weight: normal;
}
}

.blue{
	color: #299ED5;
}
/*------レスポンシブ-------*/

/*-------- スマホのボトムリンク -------*/
.tel_bottom{
	position: fixed;
	bottom: 0;
	border: solid #000 5px;
	border-left: none;
	border-right: none;
	width: 100%;
	min-width: 750px;
	z-index: 9999;
	background-color: #000;
}
.BG_red{
	background-color: #EC006F;
	width: 100%;
}
.tel_bottom .BG_red{
	padding: 10px;
}
.tel_bottom p{
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding-bottom: 5px;
}
.tel_bottom .time{
	color: #000;
	background-color: #fff;
	width: 90%;
	border-radius: 2px;
	padding: 2px;
	margin-bottom: 2px;
}
/*--- スマホのボトムリンクここまで ---*/

/*-----TOPイメージ-----*/
.top_img p{
	background-color: #EC006F;
	color: #fff;
	font-family: "font_M";
	text-align: center;
	line-height: 28px;
	width: 100%;
	padding: 10px
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
/*--- ヘッダー ---*/
.top_img p{
	font-size: 15px;
}
}

/*-----slick-----*/
.test-slick,.test-slick_tel{
    width: 100%;
	background-color: #000;
	padding: 20px 0;
	margin-top: -5px;
}
.test-slick__item{
	width: 100%;
	height: 180px;
    margin:0 10px;
	background-size: cover; 
	background-repeat: no-repeat; 
    background-position: center center;
}
.item1{
	background-image: url("../images/jisseki_1.png");
}
.item2{
	background-image:url("../images/jisseki_2.png");
}
.item3{
	background-image:url("../images/jisseki_3.png");
}
.item4{
	background-image:url("../images/jisseki_4.png");
}
.item5{
	background-image:url("../images/jisseki_5.png");
}
.item6{
	background-image:url("../images/jisseki_6.png");
}

/*-----キャンペーン-----*/
.campaign img{
	width: 90%;
	max-width: 1300px;
	margin: auto;
}

/*-----中身-----*/
.Side_left{
	width: 300px;
}
.Side_right{
	width: 680px;	
}

/*-----左-----*/
.Side_left p{
	font-size: 13.5px;
}
.Side_left .p{
	margin-bottom: 15px;
}
.Side_left .blue{
	margin-bottom: 5px;
}
/*---スクロールボックス---*/
.scroll_box{
	width: 98%;
	height: 200px;
	border: solid 1px;
	overflow: auto;
	background-color: #fff;
	padding: 20px 10px;
	margin: 10px auto;
}
.scroll_box .text{
	padding: 10px;
}
.scroll_box .new{
	font-size: 15px;
	text-align: center;
	color: #fff;
	background-color: #22A673;
	font-family: "font_M";
	padding: 0 15px 3px 15px;
	line-height: 19px;
	border-radius: 5px;
	margin-right: 10px;
}
.scroll_box .hiduke{
	color: #22A673;
	font-family: "font_M";
	font-weight: bold;
} 
.scroll_box .p{
	margin-top: -15px;
}
.scroll_box p{
	font-size: 12px;
	text-align: justify;
	margin-bottom: 20px;
}
.scroll_box hr{
	margin-top: -20px;
	margin-bottom: 10px;
	border-right: none;
	border-left: none;
	border-bottom: none;
}
.container::-webkit-scrollbar {
  width: 16px;
}
.container::-webkit-scrollbar-track {
  background-color: #E9E9E9;
}
.container::-webkit-scrollbar-thumb {
  background-color: #747474;
}
@media screen and (max-width: 1000px){
  .scroll_box .new{
	font-size: 20px;
	padding: 5px 15px 8px 15px;
	line-height: 22px;
}
	.scroll_box p{
	font-size: 18px;
}
}

/*-----右-----*/

/*-実績-*/
.jisseki img{
	margin: 10px 0px;
}
/*-印刷パック-*/
.pack .text1{
	width: 380px;
}
.pack .text2{
	width: 280px;
}
.pack img{
	margin-bottom: 10px;
}
.waku_red{
	border: #FF80B1 solid 20px;
	padding: 10px;
}
.waku_red p{
	padding: 5px 30px 15px 30px;
}

/*-太字-*/
.bold_p{
	font-weight: bold;
	text-align: center;
}

/*-初回限定キャンペーン-*/
.campaign_setumeiP{
	position: relative;
}
.campaign_setumeiP div{
	width: 100%;
	position: absolute;
	bottom: 3.5%;
}
.campaign_setumeiP .bold_p{
	color: #FF0000;
	font-size: 20px;
	margin-bottom: 5px;
}
.campaign_setumeiP .setumeiP{
	width: 80%;
	margin: auto;
}
/*----その他のサービス----*/
.sonohoka_service h4{
	font-size: 28px;
}
.sonohoka_service a{
	white-space:inherit;
}
.sonohoka_service p{
	width: 85%;
	margin: auto;
	text-align: justify;	
}
.sonohoka_service_icon .BG{
	width: 330px;
}
.sonohoka_service_icon{
	position: relative;
	width: 330px;
	margin:  10px 0px;
}
.sonohoka_service_icon div{
	position: absolute;
	width: 98%;
	margin: auto;
	top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.sonohoka_service_icon .title{
	color: #0071B0;
	border-bottom: 2px solid #0071B0;
	font-family: "font_M";
	font-size: 28px;
	line-height: 38px;
	padding-left: 15px;
	margin-top: 20px;
	margin-left: 10px;
}
.sonohoka_service_icon .p{
	font-size: 16px;
	height: 95px;
	margin-top: 10px;
	line-height: 22px;
}
/*----姉妹サイト----*/
.simai_site .site_img{
	width: 287px;
	height: 253px;
	background-size: cover;
	background-position: center;
	margin-bottom: 10px;
}
.simai_site .anime{
	background-image: url("../images/site_banner_anime.png")
}
.simai_site .anime:hover{
	background-image: url("../images/site_banner_animeH.png");
	opacity: 1;
}
.simai_site .tiraside{
	background-image: url("../images/site_banner_tiraside.png")
}
.simai_site .tiraside:hover{
	background-image: url("../images/site_banner_tirasideH.png");
	opacity: 1;
}
.simai_site .douga{
	background-image: url("../images/site_banner_douga.png")
}
.simai_site .douga:hover{
	background-image: url("../images/site_banner_dougaH.png");
	opacity: 1;
}
.simai_site .manga{
	background-image: url("../images/site_banner_manga.png")
}
.simai_site .manga:hover{
	background-image: url("../images/site_banner_mangaH.png");
	opacity: 1;
}

@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	.Side_right{
	width: 90%;
	min-width: 650px;
	margin: auto;
}
.sonohoka_service_icon .BG{
	width: 310px;
}
	.sonohoka_service_icon .title{
	margin-top: 12px;
}
	.sonohoka_service_icon .p{
	height: 90px;
}
.sonohoka_service_icon{
	position: relative;
	width: 310px;
	margin:  10px 5px;
}
	.pack .text1{
		width:596px;
	}
	.pack .text2{
		width:430px;
	}
}

/*------フッター-------*/
footer{
	background-image: url("../images/footer_BG.png");
	width: 100%;
	background-position: center;
	background-size: cover;
	padding: 30px 0;
}
footer .header_nav {
	background-color:transparent; 
}
footer p{
	font-size: 15px;
	margin-bottom: 10px;
}
footer .haba_1000{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	footer{
	background-image: url("../images/footer_BG_tel.png");
}
}

/*-------------*/
/*------レスポンシブ-------*/
@media screen and (max-width: 900px){
  /*--ここにスマホに適したCSSを記述します*/
	.display_pc{
		display: none;
	}
	.display_tel{
	display: block;
	}
}
@media screen and (max-width: 950px){
  /*--ここにスマホに適したCSSを記述します*/
	.display_pc_950{
		display: none;
	}
	.display_tel_950{
	display: block;
	}
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	.tel_p{
		font-size: 25px;
		margin-bottom: 5px;
	}
	.display_tel_1000{
	display: block;
}
	.display_pc_1000{
	display: none;
	}
}
@media screen and (max-width: 1100px){
  /*--ここにスマホに適したCSSを記述します*/
	.display_tel_1100{
	display: block;
}
	.display_pc_1100{
		display: none;
	}
}
@media screen and (max-width: 1250px){
  /*--ここにスマホに適したCSSを記述します*/
	.display_tel_1250{
	display: block;
}
	.display_pc_1250{
		display: none;
	}
		.r_flex_bet_left{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-flow: column;
}
}
/*------レスポンシブ-------*/
