@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;700&display=swap');
@media (min-width:641px){
/* CSS Document */
body {
	font-family: "メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Osaka","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-size: 12px;
	line-height: 17px;
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 0px;
	padding: 0px;
	background: #FFF url(../img/back.gif) repeat-x 50px 0px;
	background-size: 1px 40px;
}
.sp {
	display: none;
}
.slidemenu {
	display: none;
}
#header .button.menu-button-right {
	display: none;
}
a img {
	border-style: none;
}
img {
	max-width: 100%;
}
/* ロールオーバー透過 */
a:hover img {
	opacity:0.8;  
	filter: alpha(opacity=60);  
	-ms-filter: "alpha( opacity=60 )";
}
ul,li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	width: auto;
}
#wrap {
	margin-right: auto;
	margin-left: auto;
	position: relative;
	z-index: 0;
	display: block;
	clear: both;
}
h1 {
	margin: 0px;
	padding: 0px;
	float: left;
	display: block;
	font-size: 12px;
}
h2 {
	font-size: x-large;
	line-height: 40px;
	color: #0A0D52;
	font-weight: normal;
}
h3 {
	line-height: 30px;
	padding-top: 20px;
}
/* ▼ヘッダー
---------------------------------------------------- */	
#header {
	background: #969696;
	color: #FFF;
	height: 74px;
	font-size: 12px;
}
#header_box {
	max-width: 960px;
	height: auto;
	margin-right: auto;
	margin-left: auto;
	padding-top: 22px;
	padding-bottom: 22px;
}
#header .logo {
	float: left;
	margin-right: 40px;
}
#header .logo img {
	width: 86px;
}
#header_address {
}
#header_menu {
	width: 1078px;
	margin-left: auto;
	margin-right: auto;
}
#header_menu ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	vertical-align: bottom;
}
#header_menu li {
	display: block;
	width: 118px;
	text-align: center;
	line-height: 64px;
	border-right: 2px solid #828282;
	float: left;
	margin-top: 4px;
	vertical-align: bottom;
	height: 64px;
}
#header_menu li img {
	height: 64px;
	vertical-align: bottom;
}
#header_menu li a {
	display: block;
	float: left;
	color: #FFFFFF;
	text-decoration: none;
	width: 118px;
	text-align: center;
	line-height: 64px;
	height: 64px;
}
#header_menu li:first-child {
	background-color: #FFFFFF;
	margin-top: -4px;
	padding-top: 8px;
	padding-bottom: 6px;
}
#header_menu li:last-child {
	border-right: none;
}
#header_menu li a:hover {
	color: #D9E9F9;
}
#header_menu .li-e a:hover {
	color: #D9E9F9;
}
/* 
---------------------------------------------------- */	
.end {
	clear: both;
	overflow: hidden;
	height: 1px;
}
.spacer {
	float: left;
}
.spacer1 {
	clear: both;
	overflow: hidden;
	height: 1px;
}
.spacer5 {
	clear: both;
	overflow: hidden;
	height: 5px;
}
.spacer7 {
	clear: both;
	overflow: hidden;
	height: 7px;
}
.spacer10 {
	clear: both;
	overflow: hidden;
	height: 10px;
}
.spacer12 {
	clear: both;
	overflow: hidden;
	height: 12px;
}
.spacer20 {
	clear: both;
	overflow: hidden;
	height: 20px;
}
.spacer30 {
	clear: both;
	overflow: hidden;
	height: 30px;
}
.spacer35 {
	clear: both;
	overflow: hidden;
	height: 35px;
}
.txt_s {
	font-size: 10px;
}
.btn_box {
	margin-top: 20px;
	margin-bottom: 20px;
}
.btn_box a {
	background: #EEEEEE;
	border-radius: 15px;
	font-size: 14px;
	color: #0066CC;
	text-align: center;
	border: 1px solid #8E9EBA;
	display: block;
	margin-right: 15px;
	margin-left: 15px;
	padding-top: 3px;
	padding-bottom: 3px;
	text-decoration: none;
}

.btn_box a:hover {
	color: #74AD96;
	text-decoration: none;
}
/* ▼ナビ
---------------------------------------------------- */	
#left_menu {
	float: left;
	width: 180px;
	margin-left: 40px;
}
#left_menu ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
#left_menu li a {
	border-radius: 5px;
	display: block;
	background: #113961;
	padding: 8px;
	margin-bottom: 1px;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
}
#left_menu li a:hover {
	color: #D9E9F9;
	background: #0B233C;
}
#navi {
	width: 1078px;
	clear: both;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
	#navi:after {content: '';display: block;clear: both;}
#navi li {
	margin-right: 20px;
	margin-left: 20px;
	float: left;
}
#navi img {
	width: 114px;
}
#navi01 a{
}

#navi01 a:hover{
}
#navi01 a.stay{
}

/* ▼コンテンツ
---------------------------------------------------- */	
#contents-box {
}

#contents {
	width: 840px;
	margin: 20px auto 70px;
}
#main_cap {
	font-size: 24px;
	line-height: 80px;
	text-align: center;
	height: 80px;
}
#main_image {
	text-align: center;
	padding-bottom: 56px;
}
#main_image img {
	width: 270px;
}
#page_title {
	height: 184px;
	width: 184px;
	background: #0A0D52;
	text-align: center;
	margin: 77px auto 72px;
	color: #FFF;
}
#page_title img {
	width: 150px;
	margin-top: 27px;
}
#page_title-t {
	height: 184px;
	width: 184px;
	background: #0A0D52;
	text-align: center;
	margin: 77px auto 72px;
	color: #FFF;
	font-size: large;
	line-height: 184px;
	font-weight: bold;
}
.title_t {
	font-size: x-large;
	line-height: 30px;
	color: #0A0D52;
	font-weight: normal;
}
.construction {
	font-size: x-large;
	line-height: 40px;
	color: #0A0D52;
	font-weight: normal;
	text-align: center;
}
.photo_r {
	float: right;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-left: 15px;
}
.photo_r img {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
}
.photo_l {
	float: left;
}
.photo_l img {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
}
.photo_c {
	text-align: center;
}
/* ▼DTP/印刷
---------------------------------------------------- */
#contents_dtp {}
#contents_dtp h2 {
	text-align: center;
	font-weight: normal;
	font-size: 32px;
}
#contents_dtp h3 {
	text-align: center;
	font-size: 18px;
	font-weight: normal;
}
.dtp-box {
	border-top: 1px solid #0A0D52;
	margin-top: 40px;
}
.dtp-box .title  {
	background-image: url(../img/dtp/back.png);
	background-position: center top;
	background-repeat: no-repeat;
	width: 416px;
	height: 149px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.dtp-box .title img {
	margin-top: 12px;
}
.dtp-ex {
	margin-left: 60px;
	margin-right: 60px;
	margin-top: 50px;
	line-height: 36px;
	font-size: 16px;
}
.dtp-ex .left {
	float: left;
	margin-right: 0px;
}
.dtp-ex .blue {
	font-size: 28px;
	line-height: 32px;
	color: #1AB8CE;
	margin-left: 154px;
	padding-bottom: 15px;
}
.dtp-ex .txt {
	margin-left: 154px;
}
.dtp-ex .photo {
	float: right;
	margin-left: 20px;
}
.dtp-ex .photo img {
	width: 264px;
}
#d-work_1 {
	font-size: x-large;
	line-height: 40px;
	color: #06C;
	font-weight: normal;
}
.d-work_1_box {
	background: #ECF5FF;
	padding: 10px 40px 20px;
	color: #0066cc;
	margin-top: 20px;
	margin-bottom: 20px;
}
.d-work_1-t {
	font-weight: bold;
	color: #FFF;
	background: #06C;
	float: left;
	padding: 5px 40px;
}
#d-work_2 {
	font-size: x-large;
	line-height: 40px;
	color: #C69;
	font-weight: normal;
}
.d-work_2_box {
	background: #FAF1F5;
	padding: 10px 40px 20px;
	color: #CC6699;
	margin-top: 20px;
	margin-bottom: 20px;
}
.d-work_2-t {
	font-weight: bold;
	color: #FFF;
	background: #C69;
	float: left;
	padding: 5px 40px;
}
#d-work_3 {
	font-size: x-large;
	line-height: 40px;
	color: #CC0;
	font-weight: normal;
}
.d-work_3_box {
	background: #FFFFF0;
	padding: 10px 40px 20px;
	color: #CCCC00;
	margin-top: 20px;
	margin-bottom: 20px;
}
.d-work_3-t {
	font-weight: bold;
	color: #FFF;
	background: #CC0;
	float: left;
	padding: 5px 40px;
}
.d-work_txt {
	clear: both;
	margin-bottom: 30px;
	padding-top: 12px;
}
/* ▼ピタックリーン
---------------------------------------------------- */	
.pita-t {
	font-weight: bold;
}
.pita_01 {
	width: 840px;
	padding-top: 15px;
	margin-bottom: 50px;
	clear: both;
	font-size: 14px;
	line-height: 20px;
}
.pita_01 ul {
	list-style: disc outside;
	float: left;
	padding-left: 20px;
	width: 440px;
}
.pita_01 li {
	font-size: 14px;
	padding-bottom: 5px;
}
.pita_01 span {
	font-size: 12px;
	line-height: 17px;
}
.pita_01 span i {
	font-style: normal;
	color: #E40013;
}
.promo-ar {
	margin-top: 25px;
	margin-bottom: 20px;
}
.promo-ar .title {
	font-size: 18px;
	color: #00A1EF;
	border-bottom: 1px dashed #0A0D52;
	margin-bottom: 15px;
}
.promo-ar .left {
	float: left;
	width: 450px;
}
.promo-ar .right {
	float: right;
	width: 360px;
	font-size: 16px;
}
.promo-ar .right .ar {
	margin-top: 8px;
}
.promo-ar .right .ar img {
	width: 60px;
	border-radius: 10px;
	float: left;
	margin-right: 10px;
}
.promo-ar .right .dl {}
.promo-ar .right .dl img {
	width: 135px;
	float: left;
	margin-right: 5px;
	margin-left: 5px;
	margin-top: 10px;
}
.ar-txt {
	font-size: 12px;
	line-height: 17px;
	clear: both;
	padding-top: 8px;
	padding-bottom: 10px;
	border-bottom: 1px dashed #0A0D52;
	margin-bottom: 15px;
}
.ar-txt2 {
	font-size: 12px;
	line-height: 17px;
	clear: both;
	padding-top: 8px;
	padding-bottom: 10px;
	border-bottom: 1px dashed #0A0D52;
	margin-bottom: 15px;
}
.ar-txt2 ol {
	padding-left: 20px;
	list-style: decimal outside;
	margin-left: 5px;
}
.ar-txt2 li {
	font-size: 12px;
}
.promo-ar .right .att{
	font-size: 10px;
	line-height: 15px;
}
.w_ar {
	font-size: 10px;
	clear: both;
	padding-top: 35px;
}
.w_ar_ar {
	background: #0A0D52;
	border-radius: 10px;
	float: left;
	color: #FFF;
	font-size: 18px;
	line-height: 20px;
	padding: 5px 15px 2px;
	margin-right: 10px;
	margin-bottom: 100px;
}
/* ▼レーザー
---------------------------------------------------- */	
.laser_movie {
	text-align: center;
	padding-bottom: 40px;
}
.laser tbody {
	padding: 5px;
	border: 1px solid #000;
}
.laser tbody th {
	padding: 5px;
	font-weight: bold;
	border-right: 1px dashed #999;
}
.laser tbody td {
	padding: 5px;
	border-right: 1px dashed #999;
}
.laser tbody tr {
	padding: 5px;
	border-bottom: 1px dashed #999;
}
.laser tbody tr:hover {
	background-color: #CCE6E6; /* 行の背景色 */
}
.laser ul {
	padding-left: 20px;
}
.laser li {
	list-style: disc;
}
.laser_kihon {
	margin-top: 20px;
	margin-bottom: 30px;
	text-align: center;
}

/* ▼電子ブック
---------------------------------------------------- */
.eb tbody {
	padding: 5px;
	border: 1px solid #000;
}
.eb tbody .title {
	padding: 5px;
	font-weight: bold;
	border-right: 1px dashed #999;
}
.eb tbody th {
	padding: 5px;
	border-right: 1px solid #0A0D52;
}
.eb tbody td {
	padding: 5px;
	border-bottom: 1px dashed #999;
	border-right: 1px dashed #999;
}
.eb tbody tr:hover {
	background-color: #CCE6E6; /* 行の背景色 */
}
.eb_th-t {
	background: #FFF;
	border-bottom: 1px solid #000000;
}
.eb_AB-t {
	background: #0A0D52;
	color: #FFF;
	text-align: center;
	border-bottom: 1px solid #000000;
}
.eb_pdf-t {
	text-align: center;
	background: #DEDEDE;
	border-bottom: 1px solid #000000;
}
.eb_AB {
	font-weight: bold;
	color: #0A0D52;
}
.eb_pdf {}
.eb-p {
	width: 100%;
}
.eb-p tbody {
	padding: 5px;
	border: 1px solid #000;
}
.eb-p tbody th {
	padding: 5px;
	font-weight: bold;
	border-right: 1px dashed #FFFFFF;
	color: #FFF;
	background: #0A0D52;
}
.eb-p tbody td {
	padding: 5px;
	border-right: 1px dashed #999;
}
.eb-p tbody td {
	padding: 5px;
	border-bottom: 1px dashed #999;
}
.eb-p tbody tr:hover {
	background-color: #CCE6E6; /* 行の背景色 */
}

/* ▼会社概要
---------------------------------------------------- */	
.company_cap {
	width: 700px;
	line-height: 30px;
	margin-right: auto;
	margin-left: auto;
}
#company_box {
	width: 680px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 60px;
}
#company_box .txt_left {
	float: left;
	width: 100px;
	padding-left: 40px;
}
#company_box .txt_right {
	float: right;
	width: 500px;
	padding-right: 40px;
}
.company_spacer  {
	clear: both;
	overflow: hidden;
	height: 20px;
}
.company_spacer_2  {
	clear: both;
	overflow: hidden;
	height: 60px;
}
.map-box {
	float: right;
	margin-left: 15px;
}
.adress{
	margin: 0 auto 32px 0;;
	width: 420px;
	padding-left: 0px;
	display: flex;align-items: center;
}

.adress img{
	float: left;
	margin-right: 15px;
	width: 120px;
}
.adress p{
	float: left;
	margin-top: 5px;
	}
.adress .txt{
	float: left;
	margin-top: 12px;
	}
.adress:after {
  content: "";
  clear: both;
  display: block;
}
/* ▼WEB制作
---------------------------------------------------- */	
.wp tbody {
	padding: 5px;
	border: 1px solid #000;
}
.wp tbody th {
	padding: 5px;
	font-weight: bold;
	background: #EEE;
	border-right: 1px dashed #999;
}
.wp tbody td {
	padding: 5px;
	border-right: 1px dashed #999;
}
.wp tbody tr {
	padding: 5px;
	border-bottom: 1px dashed #999;
}
.wp tbody tr:hover {
	background-color: #CCE6E6; /* 行の背景色 */
}
/* ▼映像制作
---------------------------------------------------- */
.movie {
	text-align: center;
}
.NewHokkaidoStyle {
	width: 840px;
	margin-left: auto;
	margin-right: auto;
	clear: both;
	display: block;
	padding-top: 60px;
	padding-bottom: 40px;
}
/* ▼集客・広告事業
---------------------------------------------------- */
ol.maru {
  margin: 0;
  padding: 0
}
ol.maru  li  {
  list-style: none;
  padding-left: 1.5em;
  text-indent: -1.5em;
}
ul.ga {
	padding-left: 30px;
	padding-top: 5px;
	padding-bottom: 20px;
}
ul.ga li {
	list-style-type: disc;
}
/* ▼コンサルティング
---------------------------------------------------- */
.Photo80 {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}
/* ▼フッター
---------------------------------------------------- */	
#footer {
	padding-right: 20px;
	padding-left: 20px;
	border-bottom: 2px solid #969696;
	clear: both;
}
#footer_box {
	height: auto;
	margin-right: auto;
	margin-left: auto;
	padding-top: 42px;
	padding-bottom: 12px;
	width: 960px;
}
#footer .logo {
	float: left;
	margin-right: 15px;
}
#footer .logo img {
	width: 86px;
}
#footer .name {
	font-weight: bold;
	font-size: 12px;
}
#footer .address {
	float: left;
	font-size: 10px;
	width: 600px;
	clear: both;
	margin-bottom: 24px;
}
#footer .address dl {}
#footer .address dt {
	padding-left: 5px;
	font-weight: bold;
}
#footer .address dd {
	margin-left: -5px;
	padding-left: 20px;
}
#footer .address_sp {
	display:none;
}
#footer .copy {
	float: right;
	font-size: 10px;
	width: 320px;
	text-align: right;
}
.footer_menu {
	text-align: right;
	float: right;
	width: 320px;
	bottom: 0px;
	margin-top: 70px;
}
.footer_menu ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
.footer_menu li {
}
.footer_menu li a {
	background: url(../img/arrow.png) no-repeat left 4px;
	background-size: 6px 8px;
	display: block;
	float: right;
	padding-left: 10px;
	font-size: 10px;
	margin-left: 20px;
	text-decoration: none;
	margin-top: 16px;
	color: #000;
}
.footer_menu li a:hover {
	color: #1A67A6;
}

/* ▼ページトップ
---------------------------------------------------- */	
#page-top {
	position: fixed;
	bottom: 50px;
	right: 20px;
	font-weight: bold;
	color: #FFF;
}
#page-top a {
	text-decoration: none;
	color: #499FD7;
	width: 100px;
	text-align: center;
	display: block;
	border-radius: 5px;
	font-weight: bold;
	background: #1B2A74 url(../img/logo_w.png) no-repeat center 10px;
	background-size: 80px;
	padding: 110px 0 0px;
	height: 20px;
	margin-top: 10px;
}
#page-top a:hover {
	text-decoration: none;
	background-color: #499FD7;
	color: #1B2A74;
}
#page-home {
	position: fixed;
	bottom: 50px;
	right: 20px;
	font-weight: bold;
	color: #FFF;
}
#page-home a {
	text-decoration: none;
	color: #499FD7;
	width: 100px;
	text-align: center;
	display: block;
	border-radius: 5px;
	font-weight: bold;
	background: #1B2A74 url(../img/logo_w.png) no-repeat center 10px;
	background-size: 80px;
	padding: 110px 0 0px;
	height: 20px;
	margin-top: 10px;
}
#page-home a:hover {
	text-decoration: none;
	background-color: #499FD7;
	color: #1B2A74;
}
}
/**********************************************
新北海道スタイル宣言
***********************************************/
.hokkaido_style_btnarea {width: 86%;margin: 0 auto;padding: 2em 0;position: relative;text-align: center;}
.md-btn {width: auto; position: relative;display: inline-block;background-color:#FFF; }
.md-btn:before {
    content: '';
    display: block;
    position: absolute;
    left: 5px;
    top: 4px;
    width: 40px;
    height: 40px;
    background-image: url(../img/newhokkaidoustyle.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.md-btn a {
    font-size: 3.6vw;
    letter-spacing: 0.1rem;
    font-weight: 700;
    color: #222;
    text-align: center;
    position: relative;
    display: block;
    padding: 16px 50px;
    cursor: pointer;
	margin: 0 auto;
}
.modal {
	display: none;
	position: fixed;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	padding-top: 5%;
	padding-right: 5%;
	padding-left: 5%;
	padding-bottom: 4%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: rgba(0,0,0,0.8);
	z-index: 100;
	overflow-y: scroll;
}
.hokkaido_style {max-width: 880px;margin: 100px auto 20px;padding: 0 0 30px;background-color: #FFF;}
@media screen and (min-width: 673px) {
.hokkaido_style_btnarea {width: 100%;padding: 2em 0;margin: 0 auto;position: relative;text-align: center;}
.md-btn {width: auto; position: relative;display: inline-block;background-color:#FFF; }
.md-btn:before {
    content: '';
    display: block;
    position: absolute;
    left: 10px;
    top: 6px;
    width: 40px;
    height: 40px;
    background-image: url(../img/newhokkaidoustyle.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.md-btn a {
    font-size: 16px;
    letter-spacing: 0.1rem;
    font-weight: 700;
    color: #222;
    text-align: center;
    position: relative;
    display: block;
    padding: 18px 60px;
    cursor: pointer;
}
.modal {
	display: none;
	position: fixed;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	padding-top: 5%;
	padding-right: 5%;
	padding-left: 5%;
	padding-bottom: 4%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: rgba(0,0,0,0.8);
	z-index: 100;
	overflow-y: scroll;
}
.hokkaido_style {max-width: 880px;margin: 100px auto 20px;padding: 0 0 30px;background-color: #FFF;}
}

.suisavon {width: 100%;text-align: center;float: left;padding: 40px 0 50px;margin-top: 60px;border-top: solid 1px #666;border-bottom: solid 1px #666;}
.suisavon .in {width: 100%;margin: 0 auto;display:block;}
.suisavon .in .ph {width: 100%;}
.suisavon .in .ph img  {width: 30%;height: auto;margin: 0 auto 0px;}
.suisavon .in .txt {width: 100%;text-align: center;margin-bottom: 16px;}
.suisavon .in .txt .txt_26 {font-size: 26px;font-family: 'Noto Serif JP', serif;line-height: 1.6;margin-bottom: 10px;}
.suisavon .in .txt .txt_33 {font-size: 32px;font-family: 'Noto Serif JP', serif;line-height: 1.6;}
.suisavon .in .link {font-size: 14px;font-family: 'Noto Serif JP', serif;line-height: 1.6;margin-bottom: 10px;text-align: center;}
.suisavon .in .link a {position: relative;padding-right: 1.5em;display: inline-block;color: #323232;}
.suisavon .in .link a:after {
content: '';
width: 6px;
height: 6px;
border-top: solid 2px #000;
border-right: solid 2px #000;
position: absolute;
right: 5px;
top: 8px;transform: rotate(45deg);}




