@charset "UTF-8";

.pc, 
.tabPhone {
		display: none !important;
}
/* --
[ base colr ]
color: #735433; font base
color: #5281ca; link base
-- */
html,body {
		width: 100%;
		height: auto;
		font-family: "Shin Go Medium";/* sakura web font */
		-webkit-overflow-scrolling: auto;/* ie is js */
		-webkit-scroll-behavior: smooth;
		        scroll-behavior: smooth;
		 }
		#container {
			display: none;/*js*/
			width: 100vw;
			height: auto;
			position: relative;
}
/* header */
header {
		width: 100vw;
		height: 450px;
		position: relative;
		}
		#header {
				width: 100vw;
				height: 100px;
				background: #fff;
				position: absolute;
				top: 0px;
				z-index: 3;
		}
		h1 {
				width: 45%;
        height: auto;
        max-height: 100px;
        margin: 30px 0px 0px 20px;
}
/* decoration */
section.decoration_top {
		width: 100vw;
		height: auto;
		position: absolute;
		top: 100px;
		z-index: 103;
}
section.decoration_top img {
	  display: block;
		height: 10px;
}
section.decoration_bottom {
		width: 100vw;
		height: auto;
		position: absolute;
		bottom: -3px;
		top: calc(500px - 35px);
		z-index: 3;
}
section.decoration_bottom img {
	  display: block;
		height: 40px;
}
/* decoration end */
nav.pc {
  display: none;
}
		/* --- hide menu --- */
		section.hideMenu {
				width: 35px;
				height: 40px;
				margin: 0px 0px 0px 0px;
				position: absolute;
				right: 25px;
        top: 30px;
				z-index: 999;
				}
				section.hideMenu p {
					  width: 100%;
						height: auto;
					  font-size: 72%;
						letter-spacing: 0.05em;
						text-align: center;
						color: #146bdb;/*pastel blue*/
				}
				/*humbager*/
				.menu-trigger,
				.menu-trigger span {
						display: inline-block;
								 -o-box-sizing: border-box;
								-ms-box-sizing: border-box;
							 -moz-box-sizing: border-box;
						-webkit-box-sizing: border-box;
										box-sizing: border-box;
								 -o-transition: all .4s;
								-ms-transition: all .4s;
							 -moz-transition: all .4s;
						-webkit-transition: all .4s;
										transition: all .4s;
						}
						/*border line*/
						.menu-trigger {
								position: relative;
								width: 100%;
								height: 20px;
								margin: 5px auto 0px;
						}
						section.hideMenu .menu-trigger span {
								position: absolute;
								left: 0;
								width: 100%;
								height: 1px;
								background-color: #146bdb;/*pastel blue*/
										 -o-border-radius: 2px;
										-ms-border-radius: 2px;
									 -moz-border-radius: 2px;
								-webkit-border-radius: 2px;
												border-radius: 2px;
						}
						.menu-trigger span:nth-of-type(1) {
								top: 0;
						}
						.menu-trigger span:nth-of-type(2) {
								top: 10px;
						}
						.menu-trigger span:nth-of-type(3) {
								bottom: 0px;
						}
						.menu-trigger.active span:nth-of-type(1) {
										 -o-transform: translateY(7px) rotate(-42deg);
										-ms-transform: translateY(7px) rotate(-42deg);
									 -moz-transform: translateY(7px) rotate(-42deg);
								-webkit-transform: translateY(7px) rotate(-42deg);
												transform: translateY(7px) rotate(-42deg);
						}
						.menu-trigger.active span:nth-of-type(2) {
								opacity: 0;
						}
						.menu-trigger.active span:nth-of-type(3) {
										 -o-transform: translateY(-11px) rotate(42deg);
										-ms-transform: translateY(-11px) rotate(42deg);
									 -moz-transform: translateY(-11px) rotate(42deg);
								-webkit-transform: translateY(-11px) rotate(42deg);
												transform: translateY(-11px) rotate(42deg);
		}
		/*humbager end*/
		/*overlay*/
		#overlay {
				display: none;
				width: 100vw;
				height: calc(100vh - 100px);/* 90 + 80px is URL bar for iPhone */
				background: rgba(245,245,245,1);
				margin: auto;
				position: fixed;
				z-index: 100;
				top: 100px;
				/*
				bottom: 0;
				left: 0;
				right: 0;
				*/
				}
        /* overlay 装飾線 */
        #overlay img {
            display: block;
            position: fixed;
            bottom: 0px;
            height: 8px;
    }
    /*overlay end*/
		section.hideNav {
				display: none;
				width: 240px;
				height: 180px;/*check*/
				/*background: rgba(249,249,249,1);*/
				margin: auto;
				position: fixed;
				z-index: 1000;
				top: 0;
				bottom: 0;
				left: 0;
				right: 0;
				}
				section.hideNav nav ul {
						width: 90%;
						height: auto;
						margin: 0px auto;
						padding: 30px 0px 20px;
				}
				section.hideNav nav ul li a {
						display: block;
						width: 100%;
						padding: 13px 0px;
						margin: 0px auto 20px;
						letter-spacing: 0.1em;
						color: #2a93f0;/*pastel blue*/
						font-size: 116%;
						text-align: center;
						font-weight: bold;
						/* Neumorphism */
								 -o-border-radius: 3px;
								-ms-border-radius: 3px;
							 -moz-border-radius: 3px;
						-webkit-border-radius: 3px;
										border-radius: 3px;
								 -o-transition: .2s ease-in-out;
								-ms-transition: .2s ease-in-out;
							 -moz-transition: .2s ease-in-out;
						-webkit-transition: .2s ease-in-out;
										transition: .2s ease-in-out;
						-wevkit-box-shadow: -6px -6px 14px rgba(255, 255, 255, .7),
												        -6px -6px 10px rgba(255, 255, 255, .5),
												         6px 6px 8px rgba(255, 255, 255, .075),
												         6px 6px 10px rgba(0, 0, 0, .15);
										box-shadow: -6px -6px 14px rgba(255, 255, 255, .7),
																-6px -6px 10px rgba(255, 255, 255, .5),
																 6px 6px 8px rgba(255, 255, 255, .075),
																 6px 6px 10px rgba(0, 0, 0, .15);
														}
				section.hideNav ul li a:hover,
				section.hideNav ul li.hvr a {
						color: #74b5ee;/*light pastel blue*/
						/* Neumorphism */
						-webkit-box-shadow: inset -2px -2px 6px rgba(255, 255, 255, .7),
												        inset -2px -2px 4px rgba(255, 255, 255, .5),
												        inset 2px 2px 2px rgba(255, 255, 255, .075),
												        inset 2px 2px 4px rgba(0, 0, 0, .15);
										box-shadow: inset -2px -2px 6px rgba(255, 255, 255, .7),
																inset -2px -2px 4px rgba(255, 255, 255, .5),
																inset 2px 2px 2px rgba(255, 255, 255, .075),
																inset 2px 2px 4px rgba(0, 0, 0, .15);
				}
/* --- hide menu end--- *//* --- header end --- */

/* main_img */
#main_img {
		width: 100vw;
		height: 400px;
		position: absolute;
		top: 100px;
		z-index: 2;
		}
		/* slide show jquery */
		#main_img h4.tablet img {
				display: none;
				width: 100vw;
				height: 400px;
				position: absolute;
				z-index: 2;
				-webkit-backface-visibility: hidden;
								backface-visibility: hidden;
				object-fit: cover;
				font-family: object-fit: cover;
}
#main_img h3.sPhone img {
    display: none !important;
}


/* scroll a.scrBtn */
header img.scroll {
			display: none;
}

/* contents */
#contents {
		width: 100%;
		height: auto;
		margin: 0px auto;
		background: url(../img/index/decoration/decoration_background_02_pc.png) no-repeat top center / 100% 50%;
		}
		
/* one point logo */
img.point {
	  display: block;
		width: 45px;
		height: auto;
		margin: 60px auto;
		clear: both;
}
/* one point logo end */

/*事業内容*/
#greeting {
	  width: calc(90vw - 0px);
		height: auto;
		margin: 0px auto;
		}
		#greeting h2.title {
				width: 50%;
				height: auto;
				padding: 5%;
				margin: 80px auto 30px;
				text-align: center;
        text-indent: 1em;
				letter-spacing: 0.1em;
				color: #044a79;
				font-size: 160%;
				background: rgb(255,255,255);
				background: url(../img/logo/logo_accent_02.png) no-repeat 110px 33px / 30px;
    }
    #greeting div.fadein img.sPhone {
       display: none;
    }
		#greeting p {
				width: 90%;
				height: auto;
				line-height: 1.8em;
				margin: 40px auto 0px;
				font-size: 110%;
        text-align: justify;
				letter-spacing: 0.1em;
				}
				#greeting p strong {
						color: #215EBD;
				}
				#greeting p b {
						display: block;
						color: #E4007F;
				}
				#greeting p span {
						display: block;
						width: 100%;
						height: auto;
						margin: 20px auto;
						text-align: right;
						color: #111;
						font-size: 90%;
}

    /*業務*/
    #works,
    #works_02 {
        width: calc(100vw - 0px);
        height: auto;
        margin: 0px auto;
        position: relative;
    }
		#works h2.title {
				width: 50%;
				height: auto;
				padding: 5%;
				margin: 40px auto 30px;
				text-align: center;
        text-indent: 1em;
				letter-spacing: 0.1em;
				color: #044a79;
				font-size: 160%;
				background: rgb(255,255,255);
				background: url(../img/logo/logo_accent_02.png) no-repeat 110px 33px / 30px;
		}
    #works img.title,
    #works_02 img.title {
      display: block;
      width: 70%;
      margin: 0px auto -8px;
      position: relative;
    }
    #works img.under,
    #works_02 img.under {
      display: block;
      width: 70%;
      margin: -10px auto 0px;
      position: relative;
    }
    /*01*/
    section.view {
      width: 70%;
      height: auto;
      margin: 0px auto 0px;
    }
    section.view img.obfit {
      display: block;
      width: 100%;
      height: 200px;
    }
    section.cont {
      display: none;
    }
    section.comment {
      width: calc(70% - 0px);
      height: auto;
      margin: 0px auto 0px;
    }
    #works section.comment p {
      width: 100%;
      height: auto;
      margin: 40px auto 0px;
      line-height: 1.8em;
      font-size: 110%;
      letter-spacing: 0.1em;
      text-align: justify;
    }
    #works_02 section.comment p {
      width: 100%;
      height: auto;
      margin: 40px auto 0px;
      line-height: 1.8em;
      font-size: 110%;
      letter-spacing: 0.1em;
      text-align: justify;
    }
    section.comment p strong {
        color: #215EBD;
    }
/* scroll */
a.page_top {
		display: block;
		width: 8%;
		height: auto;
		margin: 0px auto 40px;
}

/* footer */
footer {
		width: 100vw;
		height: auto;
		background: #fff;
         -o-box-shadow: -3px -5px 16px -9px rgba(0, 0, 0, 0.8);
        -ms-box-shadow: -3px -5px 16px -9px rgba(0, 0, 0, 0.8);
       -moz-box-shadow: -3px -5px 16px -9px rgba(0, 0, 0, 0.8);
    -webkit-box-shadow: -3px -5px 16px -9px rgba(0, 0, 0, 0.8);
            box-shadow: -3px -5px 16px -9px rgba(0, 0, 0, 0.8);	
    }
    img.ftTop {
        position: relative;
        display: block;
        padding-bottom: 30px;
        top: -10px;
        height: 10px;
    }
		#info {
				width: calc(95vw - 0px);
				height: auto;
				margin: 0px auto 0px;
				}
				#info img.footer_logo {
					  display: block;
						width: calc(50% - 0px);
						height: auto;
						margin: 0px auto 40px;
						}
				#info ul {
						width: calc(90% - 0px);
						height: auto;
						margin: 0px auto;
								 -o-justify-content: between;
								-ms-justify-content: between;
							 -moz-justify-content: between;
						-webkit-justify-content: between;
										justify-content: between;
								 -o-flex-wrap: wrap;
								-ms-flex-wrap: wrap;
							 -moz-flex-wrap: wrap;
						-webkit-flex-wrap: wrap;
										flex-wrap: wrap;
								 -o-display: flex;
								-ms-display: flex;
							 -moz-display: flex;
						-webkit-display: flex;
										display: flex;
						}
				#info ul li {
						width: calc(48% - 0px);
						height: auto;
						margin: 0px auto 0.5em;
						text-align: left;
						font-size: 110%;
						}
            #info ul li:first-child {
              width: 98%;
            }
						#info ul li span {
							  display: inline;
								color: #016fb8;
						}
						#info ul li b {
							  display: inline;
								padding-left: 8px;
								font-size: 88%;
								font-weight: normal;
								color: #f467db;
		}
		/* small */
		small {
			  font-family: "Shin Go Regular";/* sakura web font */
				display: block;
				width: 100vw;
				height: auto;
				margin-top: 30px;
				padding: 15px 0px;
				font-size: 65%;
				letter-spacing: 0.1em;
				text-align: center;
				color: #fff;
		    /*border-top: 5px solid #016fb8;*/
				background: #044a79;
				clear: both;
        }
				small b {
			  font-family: "Shin Go Medium";/* sakura web font */
}