@charset "utf-8";

/*==============================================================

	Reset

==============================================================*/
html,
body,article,section,nav,aside,h1,h2,h3,h4,h5,h6,hgroup,header,footer,address,
p,ol,ul,li,dl,dt,dd,figure,figcaption,div,
em,strong,small,sub,sup,i,b,mark,span,
img,iframe,object,video,audio,
table,caption,tbody,thead,tfoot,tr,td,th,
canvas {
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	border:0;
	padding:0;
	margin:0;
	outline:0;
}
article,section,nav,aside,hgroup,header,footer,
figure,figcaption,main { 
	display:block;
}
h1,h2,h3,h4,h5,h6 {
	font-weight:normal;
}
address {
	font-weight:normal;
	font-style:normal;
}
ol,ul {
	list-style:none;
}
em {
	font-style:normal;
}
a {
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	padding:0;
	margin:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
th {
	font-weight:normal;
	text-align:left;
}

/*==============================================================

	Global

==============================================================*/
*,*:before,*:after {
	-ms-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
html,body {
	height:100%;
	-webkit-text-size-adjust:100%;
}
html {
	font-size:10px;
	overflow-y:scroll;
}
html.is-font-size-large {
	font-size:11px;
}
body {
	height:100%;
	font-family:'游ゴシック Medium','Yu Gothic Medium','游ゴシック','Yu Gothic','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
	font-size:1.6rem;
	line-height:1.8;
	letter-spacing:0;
	word-wrap:break-word;
	overflow-wrap:break-word;
	color:#333;
	background-color:#fff;
}
b, strong, .bold {
	font-family:'游ゴシック','Yu Gothic','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
}
a {
	color:#333;
	text-decoration:none;
}
a:hover {
	color:#333;
}
a:visited {
	color:#333;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
button {
	border:0;
}
@media screen and (max-width:767px) {
html {
	font-size:8px;
}
a:hover {
	text-decoration:none;
}
}

/*==============================================================

	Common

==============================================================*/
/* Container */
.container {
	position:relative;
	width:1000px;
	margin:0 auto;
}
@media screen and (max-width:767px) {
.container {
	width:100%;
}
}

/* Main Title */
.main_title {
	height:160px;
	background-color:#194178;
	background-repeat:no-repeat;
	background-size:cover;
}
.main_title_container {
	display:flex;
	align-items:center;
	height:160px;
}
.main_title h2 {
	display:inline-block;
	font-size:3.8rem;
	font-weight:700;
	text-align:left;
	line-height:1.2;
	letter-spacing:0.25rem;
	color:#fff;
	padding-left:1.5rem;
}
.main_title .en {
	display:block;
	font-size:1.2rem;
	font-weight:400;
	letter-spacing:0.25rem;
	color:#fff;
	padding-left:0.5rem;
}
@media screen and (max-width:767px) {
.main_title {
	height:120px;
}
.main_title_container {
	height:120px;
}
}

/* Title */
.title {
	position:relative;
	font-size:2.8rem;
	font-weight:700;
	text-align:center;
	padding-top:80px;
	margin-bottom:40px;
}
.title::after {
	content:"";
	display:inline-block;
	position:absolute;
	left:0;
	right:0;
	bottom:-10px;
	width:50px;
	height:3px;
	background:linear-gradient(90deg,#194178,#0098f0);
	margin:0 auto;
}
@media screen and (max-width:767px) {
.title {
	padding-top:60px;
}
}

/* Tel */
.tel {
	text-align:center;
	line-height:1.2;
	padding:40px 0;
}
.tel_title {
	font-size:2rem;
	font-weight:700;
	margin-bottom:20px;
}
.tel_container {
	line-height:1;
}
.tel-num {
	font-family:'Roboto',sans-serif;
	font-size:6rem;
	font-weight:700;
}
.tel-num i {
	width:50px;
	color:#194178;
	margin-right:0.5rem;
}
.tel-num i img {
	width:50px;
}
.tel-open {
	font-size:1.5rem;
}
a[href^="tel:"] {
	cursor: default;
}
@media screen and (max-width:767px) {
.tel-num {
	font-size:5rem;
}
.tel-num i {
	width:40px;
}
.tel-num i img {
	width:40px;
}
}

/* Parking Address */
.parking-address dt {
	display:inline-block;
	font-size:1.3rem;
	line-height:1;
	vertical-align:middle;
	color:#fff;
	background-color:#194178;
	padding:2px 4px;
}
.parking-address dd {
	display:inline-block;
	font-size:1.8rem;
	vertical-align:middle;
}

/* Etc */
.en {
	font-family:'Roboto',sans-serif;
	font-weight:400;
}
.word-wrap {
	display:inline-block;
}

/*==============================================================

	Header

==============================================================*/
.header{
	position:fixed;
	width:100%;
	height:90px;
	background:#fff;
	box-shadow:0 2px 20px rgba(0,0,0,.08);
	z-index:999
}
.header_container {
	display:flex;
	justify-content:space-between;
	height:100%;
	min-width:1000px;
	padding:0 0 0 5%;
	margin:0 auto;
}
.header_corporate {
	display:flex;
	align-items:center;
	height:100%;
	font-size:3.2rem;
	font-weight:700;
}
@media screen and (max-width:767px) {
.header{
	height:60px;
}
.header_corporate {
	font-size:2.8rem;
}
}

/*==============================================================
	Header Navigation
==============================================================*/

/*--------------------------------------------------------------
	Header Navigation > PC
--------------------------------------------------------------*/
.header_nav {
	display:flex;
}
.header_nav_container ul {
	display:flex;
	justify-content:flex-end;
	align-items:center;
	height:100%;
}
.header_nav_container li {
	font-size:1.4rem;
	padding-right:40px;
}
.header_nav_container a {
	position:relative;
	padding:10px 0;
}
.header_nav_container a::after {
	content:"";
	display:inline-block;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:2px;
	background:linear-gradient(90deg,#194178,#0098f0);
	transform:scaleX(0);
	transform-origin:right top;
	transition:transform 0.25s cubic-bezier(0.25,1,0.5,1);
}
.header_nav_container a:hover:after {
	transform-origin:left top;
	transform:scaleX(1);
}
.header_nav_container a.is-current {
	cursor:pointer
}

/* お問い合わせボタン */
.header_nav_container-contact {
	box-shadow:0 2px 20px rgba(0,0,0,.08);
}
.header_nav_container-contact a {
	position:relative;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	width:260px;
	height:120px;
	font-size:1.6rem;
	font-weight:700;
	text-align:center;
	line-height:1.4;
	color:#fff;
	background:linear-gradient(90deg,#194178,#0098f0);
	z-index:1;
}
.header_nav_container-contact a::after {
	content:"";
	display:inline-block;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:100%;
	background:#0098f0;
	transform:scaleX(0);
	transform-origin:right top;
	transition:transform 0.25s cubic-bezier(0.25,1,0.5,1);
	z-index:-1;
}
.header_nav_container-contact a:hover::after {
	transform-origin:left top;
	transform:scaleX(1);
}
.header_nav_container-contact .nav-tel {
	font-size:2.6rem;
}
.header_nav_container-contact i {
	margin-right:0.5rem;
	font-size:2.4rem;
}
@media screen and (max-width:767px) {
.header_nav_container-contact {
	display:block;
}
}

/*--------------------------------------------------------------
	Header Navigation > SP
--------------------------------------------------------------*/

/*	Header Navigation > Trigger
--------------------------------------------------------------*/
.header_nav-trigger-sp {
	display:none;
	position:absolute;
	top:0;
	right:0;
	width:60px;
	height:60px;
	z-index:999
}
.header_nav-trigger-sp button {
	position:relative;
	width:100%;
	height:100%;
	background:#194178;
	border:none;
	cursor:pointer;
	outline:0
}
.header_nav-trigger-sp button span {
	display:inline-block;
	position:absolute;
	left:0;
	right:0;
	width:24px;
	height:2px;
	background-color:#fff;
	border-radius:2px;
	margin:auto;
	transition:all 0.4s;
}
.header_nav-trigger-sp button span:nth-of-type(1) {
	top:20px;
}
.header_nav-trigger-sp button span:nth-of-type(2) {
	top:0;
	bottom:0;
}
.header_nav-trigger-sp button span:nth-of-type(3) {
	bottom:20px;
}
@media screen and (max-width:767px) {
.header_nav-trigger-sp {
	display:block;
}
}

/*	Header Navigation > Trigger > Open
--------------------------------------------------------------*/
html.is-sp-menu-open,
body.is-sp-menu-open {
	/*position:fixed;*/
	/*height:100%;*/
}
body.is-sp-menu-open .site-header {
	/*height:100%;*/
}
body.is-sp-menu-open main,
body.is-sp-menu-open fotter {
	display:none;
}
body.is-sp-menu-open .header_nav-trigger-sp button span:nth-of-type(1) {
	transform:translateY(9px) rotate(-315deg);
}
body.is-sp-menu-open .header_nav-trigger-sp button span:nth-of-type(2) {
	opacity:0;
}
body.is-sp-menu-open .header_nav-trigger-sp button span:nth-of-type(3) {
	transform:translateY(-9px) rotate(315deg);
}

/*	Header Navigation > SP Menu
--------------------------------------------------------------*/
@media screen and (max-width:767px) {
.header_nav {
	display:none;
	position:absolute;
	top:60px;
	left:0;
	width:100%;
	max-width:100%;
}
.header_nav_container {
	flex:0 0 100%;
	width:100%;
	max-width:100%;
}
.header_nav_container-contact {
	flex:0 0 100%;
	width:100%;
	max-width:100%;
}
.header_nav ul {
	display:block;
	width:100%;
}
.header_nav li {
	width:100%;
	font-size:1.4rem;
	padding:0;
}
.header_nav_container li {
	border-bottom:1px solid #fff
}
.header_nav_container a {
	display:block;
	width:100%;
	height:auto;
	text-align:center;
	color:#fff;
	background-color:#194178;
	padding:2.5rem;
}
.header_nav_container-contact a {
	width:100%;
	height:auto;
	padding:2rem 0;
}
.header_nav_container a::after,
.header_nav_container-contact a::after {
	content:none;
}
.header_nav_container a::before,
.header_nav_container-contact a::before {
	content: url(/itp-jigyokaihatsu/assets/images/common/icon_chevron-right.svg);
	display:block;
	position:absolute;
	right:2rem;
}

/*	Header Navigation > SP Menu > Open
--------------------------------------------------------------*/
body.is-sp-menu-open .header_nav {
	display:block;
}
}

/*==============================================================

	Main

==============================================================*/
.main_container {
	padding-top:90px;
}
@media screen and (max-width:767px) {
.main_container {
	padding-top:60px;
}
}

/*==============================================================

	Footer

==============================================================*/
.footer{
	width:100%;
	min-width:1280px;
	padding:10px;
	color:#fff;
	background-color:#194178;
	background-image:linear-gradient(90deg,transparent,#2080c9)
}
@media screen and (max-width:767px) {
.footer{
	min-width:auto;
	min-width:initial;
}
}

/*==============================================================
	Footer > Go Top
==============================================================*/
.footer_gotop {
	position:absolute;
	right:20px;
	top:20px;
	width:54px;
	height:54px;
}
.footer_gotop-link {
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	height:100%;
	text-align:center;
	background-color:#fff;
	box-shadow:0 2px 20px rgba(0,0,0,.05);
	transform:rotate(45deg);
	transition:all 0.2s
}
.footer_gotop-link:hover {
	background-color:#0098f0;/*#33adf3 #0098f0 80%*/
	transform:rotate(0);
}
.footer_gotop-link img {
	transform:rotate(-45deg);
	transition:all 0.2s
}
.footer_gotop-link:hover img {
	transform:rotate(0);
}
@media screen and (max-width:767px) {
.footer_gotop {
	right:10px;
	top:0;
}
}

/*==============================================================
	Footer > Corporate
==============================================================*/
.footer_corporate {
	margin:20px 0 100px;
}
.footer_corporate-name {
	font-size:3.6rem;
	font-weight:700;
}
.footer_corporate_address a {
	color:#fff;
}
.footer_copyright{
	font-size:1rem;
	text-align:right;
	line-height:1;
	padding:20px 0;
}
@media screen and (max-width:767px) {
.footer_corporate-name {
	font-size:2.6rem;
}
}

