@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/A-OTF-MaruFoPro-Bold.otf") format("opentype");
}
@font-face {
  font-family: "font_T";
  src:url("../fonts/A-OTF-MaruFoPro-Heavy.otf") format("opentype");
}
@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: 1018px;
	width: 100%;
	margin: auto;
}
.flex_wrap{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: wrap
}
.flex_wrap_left{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	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;
}
.kahen_flex_top_left{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.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_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,
	.kahen_flex_top_left{
	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{
	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;
}
	.haba_90percent{
	width: 90%;
	min-width: 650px;
	margin:20px auto;
	display: block;
	}
}
/*----　可変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: 11px;
	color:#383838;
	font-family: "font_M";
	margin-left: 3px;
	font-weight: normal;
	text-align: center;
	white-space: nowrap;
}
h2{
	font-size: 32px;
	font-family: "font_M";
	font-weight: normal;
	line-height: 40px;
	color:#fff;
	letter-spacing: 5px;
	padding: 10px 20px 18px 20px;
	background: #0080CA;
background: linear-gradient(0deg, rgba(0, 128, 202, 1) 0%, rgba(0, 181, 255, 1) 50%, rgba(63, 178, 227, 1) 100%);
	width: 100%;
	border-radius:10px;
	margin-bottom: 20px;
}
h3{
	font-size: 38px;
	color:#383838;
	text-align: center;
	white-space: nowrap;
}
h4{
	font-family: "font_M";
	font-weight: normal;
	font-size: 32px;
	color:#FF9500;
	text-align: center;
	white-space: nowrap;
	line-height: 35px;
	margin: 5px 0 15px 0;
}
h5{
	font-size: 20px;
	color:#fff;
	background-color: #22A673;
	text-align: center;
	white-space: nowrap;
	padding: 5px;
}


@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	h2{
	padding: 5px 0px 10px 0px;
	text-align: center;	
}
	h5{
	font-size: 40px;
}

}
/*--------- ヘッダー ---------*/
header{
	position: fixed;
	width: 100%;
	background-color: #fff;
	z-index: 500;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.6);
}
.gray_link a{
	background-color: #82C11A;
	width: 110px;
	padding: 8px 0 5px 0;
	margin-right: 10px;
	border-radius: 0 0 10px 10px;
}
.gray_link p{
	color: #fff;
	font-size: 13px;
	text-align: center;
	line-height: 20px;
}
header .tel_P{
	font-size: 7px;
	text-align: center;
}
.top_tel_btn{
	margin-right: 100px;
}
/*--- nav ---*/
.header_nav{
	background: #0093DD;
background: linear-gradient(180deg, rgba(0, 147, 221, 1) 0%, rgba(0, 147, 221, 1) 50%, rgba(63, 191, 240, 1) 53%, rgba(63, 191, 240, 1) 100%);
}
.header_nav a{
	font-size: 16px;
	padding: 7px 0 8px 0;
	color: #fff;
	width: 150px;
	text-align: center;
	letter-spacing: 0;
}
.header_nav hr{
	border: #fff solid 1px;
	border-left: none;
	border-top: none;
	border-bottom: none;
	margin: 0;
	height: 20px;
}
.header_nav a:hover{
	color: yellow;
	opacity: 1;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
/*--- ヘッダー ---*/
header{
	position:relative;
}
header .rogo{
	width: 300px;
	margin-top: -10px;
	}
h1{
	font-size: 13px;
	margin-left: 10px;
	margin-top: 0px;
	white-space: nowrap;
	font-weight: normal;
}
	#blue2{
		font-size: 28px;
	}
}
.blue{
	color: #299ED5;
	font-weight: bold;
}
/*------レスポンシブ-------*/

/*-------- スマホのボトムリンク -------*/
.tel_bottom{
	position: fixed;
	bottom: 0;
	border: solid #008BFF 2px;
	width: 100%;
	min-width: 750px;
	height: 130px;
	z-index: 9999;
}
.BG_yellow{
	padding-bottom: 5px;
	background-color: #FFFF00;
	width: 75%;
	height: 100%;
}
.header_tel .tate2{
	font-size: 57px;
	line-height: 70px;
	color: #008BFF;
	text-align: center;
	letter-spacing: -3px;
	font-family: "font_T";
}
.tel_bottom .header_tel img{
	margin-bottom: 10px;
}
.tel_bottom .p{
	font-size: 25px;
	line-height: 30px;
	text-align: center;
	margin-top: 5px;
	font-family: "font_M";
}
.BG_blue{
	background-color: #008BFF;
	width: 25%;
	height: 100%;
}

.BG_blue a:hover{
	opacity: .7;
}

/*-----TOPイメージ-----*/
.top_img{
	width: 100%;
	max-width: 1300px;
	margin: auto;
}
.top_img .p_red{
	background-color: red;
	color: #fff;
	text-align: center;
	line-height: 28px;
	width: 100%;
	padding: 10px 0;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 22px;
}
.top_tel_btn{
	min-width: 361px;
}
.top_img .p_blue{
	background: #0093DD;
background: linear-gradient(180deg, rgba(0, 147, 221, 1) 0%, rgba(0, 147, 221, 1) 50%, rgba(63, 191, 240, 1) 53%, rgba(63, 191, 240, 1) 100%);
	text-align: center;
	padding: 2px 0;
	color: #fff;
	font-size: 20px;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
/*--- ヘッダー ---*/
.top_img .p_red{
	font-size: 20px;
}
}

/*-----キャンペーン-----*/
.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;
}

/*---見積もり無料---*/
.omitumori{
	filter: drop-shadow(5px 5px 5px #aaa);
}
.omitumori:hover{
	opacity: 1;
	filter: drop-shadow(1px 1px 1px #aaa);
}
/*---スクロールボックス---*/
.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: 22px;
}
	.scroll_box{
	width: 100%;
	height: 400px;
}
}

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

/*-実績-*/
.jisseki div{
	margin: 5px 5px;
	width: 150px;
}
.jisseki img{
	width: 100%;
}
.jisseki p{
	font-size: 13px;
	text-align: center;
}

/*-印刷パック-*/
.pack .text1{
	width: 380px;
}
.pack .text2{
	width: 280px;
}
.pack img{
	margin-bottom: 10px;
}
.waku_red{
	border: #FF0D45 solid 1px;
	padding: 10px 20px;;
}
.waku_red p{
	color: #FF0D45;
	font-weight: bold;
	font-size: 20px;
}

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

/*-初回限定キャンペーン-*/
.kome_p{
	color: #FF0D45;
	font-size: 22px;
}
/*----その他のサービス----*/
.text_p{
	width: 97%;
	margin: auto;
	text-align: justify;
	margin-bottom: 20px;
}
.mini_p{
	font-size: 14px;
	text-align: center;
}
.sonohoka_service a{
	white-space: inherit;
	font-family: none;
}
.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を記述します*/
	.text_p{
	width: 100%;
	margin: auto;
	text-align: justify;
	font-size: 25px;
}
	.mini_p{
	font-size: 25px;
}
	.Side_right{
	width: 100%;
	min-width: 650px;
	margin: auto;
}
	#Side_right{
	width: 90%;
	margin: auto;
	display: block;	
}
	#text_p{
	width: 90%;
	}
.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-color: #00A1FF;
	width: 100%;
	padding: 30px 0;
	margin-top: -10px;
}
footer .header_nav {
	background:transparent; 
}
footer .nyuukou{
	color: #fff;
	font-family: none;
}
footer p{
	font-size: 15px;
	margin-bottom: 10px;
	color: #fff;
}
footer .haba_1000{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
}
@media screen and (max-width: 1000px){
  /*--ここにスマホに適したCSSを記述します*/
	.sen_img{
		width: 88%;
		margin-left: 10px;
	}
	
}

/*-------------*/
/*------レスポンシブ-------*/
@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;
}
}
/*------レスポンシブ-------*/
