@charset "UTF-8";

@media print, screen and (min-width: 701px) {
	.display-sp {
		display:none !important;
	}
}

@media screen and ( max-width:700px) {
	.display-pc {
		display:none !important;
	}
}

div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0; 
	padding:0; 
	letter-spacing:0;
	color:#000;
	font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal; 
	font-weight:normal; 
}
ul, ol, dl {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
caption,th {
	text-align:left; 
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%; 
	font-weight:normal; 
}
a:link {
	text-decoration: underline;
}
a:visited {
	color:#00e;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	text-decoration: none;
}

/* ---------- custom -------------------------------------------------- */
* {
	box-sizing:border-box;
	margin: 0;
	padding: 0;
	transition: 0.3s ease-in-out;
}
img {
  vertical-align: bottom;
  width:100%;
}
a img {
  border: none;
}

@media print, screen and (min-width: 701px) {
	.nb55aniv-header {
		background:#000;
		width:100%;
		height:60px;
	}
	.nb55aniv-header-inner {
		max-width:1280px;
		margin:0 auto;
		position:relative;
	}
}
@media screen and ( max-width:700px) {
	.nb55aniv-header {
		background:#000;
		width:100%;
		height:54px;
	}
	.nb55aniv-header-inner {
		width:100%;
		position:relative;
	}
}

@media print, screen and (min-width: 701px) {
	.nb-header-logo {
		width:203px;
		margin:0 auto;
		padding:6px 38px 0 0;
	}
}
@media screen and ( max-width:700px) {
	.nb-header-logo {
		width:149px;
		padding:7px 0 0 13px;
	}
}

@media print, screen and (min-width: 701px) {
	.nb-header-eng-logo-box {
		width:23%;
		height:22px;
		border-left:1px solid #fff;
		position:absolute;
		top:19px;
		right:0;
		padding:5px 0 0 4.9%;
	}
	.nb-header-eng-logo-box img {
		width:105px;
		vertical-align: top;
	}
}
@media screen and ( max-width:700px) {
	.nb-header-eng-logo-box {
		width:126px;
		height:19px;
		border-left:1px solid #fff;
		position:absolute;
		top:18px;
		right:0;
		padding:5px 0 0 21px;
	}
	.nb-header-eng-logo-box img {
		width:88px;
		vertical-align: top;
	}
}

.nb55aniv-header-underline {
	background:#c8a700;
	width:100%;
	height:3px;
}

@media print, screen and (min-width: 701px) {
	.content-wrap {
		max-width:1280px;
		margin:0 auto;
	}
}
@media screen and ( max-width:700px) {
	.content-wrap {
		width:100%;
	}
}

@media print, screen and (min-width: 701px) {
	.nb55aniv-main-wrap {
		position:relative;
		margin-bottom:40px;
	}
}
@media screen and ( max-width:700px) {
	.nb55aniv-main-wrap {
		background:#000;
		padding-top:28px;
		margin-bottom:25px;
	}
}

@media print, screen and (min-width: 1280px) {
	.nb55aniv-logo {
		position:absolute;
		width:277px;
		top:28px;
		left:56px;
		z-index:2;
	}
}
@media screen and (min-width:701px) and ( max-width:1280px) {
	.nb55aniv-logo {
		position:absolute;
		width:21.64%;
		top:28px;
		left:4.375%;
		z-index:2;
	}
}
@media screen and ( max-width:700px) {
	.nb55aniv-logo {
		width:63%;
		margin:0 auto 29px;
	}
}

@media print, screen and (min-width: 701px) {
	.body-wrap {
		padding:0 7%;
	}
	.body-wrap-inner {
		max-width:920px;
		margin:0 auto;
	}
}
@media screen and ( max-width:700px) {
	.body-wrap-inner {
		width:88%;
		margin:0 auto;
	}
}

@media print, screen and (min-width: 701px) {
	.lead {
		font-size:17.5px;
		font-weight:bold;
		line-height:1.7;
		text-align: justify;
		color:#808080;
		margin-bottom:70px;
	}
	.body-text {
		font-size:16.5px;
		color:#4e4e4e;
		line-height:1.8;
		text-align: justify;
		margin-bottom:12px;
	}
}
@media screen and ( max-width:700px) {
	.lead {
		font-size:17px;
		font-weight:bold;
		line-height:1.75;
		text-align: justify;
		color:#808080;
		margin-bottom:25px;
	}
	.body-text {
		font-size:16.5px;
		color:#4e4e4e;
		line-height:1.8;
		text-align: justify;
		margin-bottom:12px;
	}
}

@media print, screen and (min-width: 701px) {
	.heading-img {
		border-top:4px solid #d45327;
		margin-bottom:35px;
	}
	.heading-01 {
		margin-top:85px;
	}
	.heading-02 {
		margin-top:80px;
	}
}
@media screen and ( max-width:700px) {
	.heading-img {
		border-top:3px solid #d45327;
		margin-bottom:20px;
	}
	.heading-01 {
		margin-top:35px;
	}
	.heading-02 {
		margin-top:35px;
	}
}

@media print, screen and (min-width: 701px) {
	.cut-box-01 {
		background:#f4f3f9;
		padding:18px 30px 30px;
		margin:28px 0 100px;
	}
}
@media screen and ( max-width:700px) {
	.cut-box-01 {
		background:#f4f3f9;
		padding:17px 0 35px;
		margin:28px 0 55px;
	}
	.cut-01 {
		margin-bottom:13px;
	}
}

@media print, screen and (min-width: 701px) {
	.cut-title-01 {
		font-size:18px;
		font-weight:bold;
		color:#4e4e4e;
		margin-bottom:12px;
	}
}
@media screen and ( max-width:700px) {
	.cut-title-01 {
		font-size:17px;
		font-weight:bold;
		color:#4e4e4e;
		line-height:1.35;
		padding:0 0 12px 16px ;
	}
}

@media print, screen and (min-width: 931px) {
	.cut-box-02 {
		border:1px solid #aaa;
		margin:40px 0 97px;
	}
	.cut-box-02-inner {
		display:flex;
	}
	.cut-box-02-desc {
		width:43.805%;
		padding:30px 30px 20px 32px;
	}
	.cut-box-02-title {
		max-width:294px;
		margin:0 auto 21px;
	}
	.cut-box-02-img-wrap {
		width:56.195%;
		min-height:305px;
		position:relative;
		overflow:hidden;
	}
	.cut-box-02-img {
		width:517px;
		position:absolute;
		top:0;
		left: 50%;
		transform: translateX(-50%);
	}
}
@media screen and (min-width:701px) and ( max-width:930px) {
	.cut-box-02 {
		border:1px solid #aaa;
		margin:40px 0 97px;
	}
	.cut-box-02-desc {
		padding:30px 40px 25px 40px;
	}
	.cut-box-02-title {
		max-width:294px;
		margin:0 auto 21px;
	}
	.cut-box-02-img {
		padding:0 40px 40px;
	}
}
@media screen and ( max-width:700px) {
	.cut-box-02 {
		border:1px solid #aaa;
		border-radius:8px;
		margin:40px 0 60px;
		overflow:hidden;
	}
	.cut-box-02-desc {
		padding:25px 20px 17px 20px;
	}
	.cut-box-02-title {
		max-width:280px;
		margin:0 auto 19px;
	}
}
	
.cut-text {
	font-size:16px;
	color:#4e4e4e;
	line-height:1.65;
	text-align: justify;
}


@media print, screen and (min-width: 701px) {
	.contact-box {
		border-top:1px solid #aaa;
		padding:90px 0;
		text-align:center;
	}
	.idemitsu-logo {
		display:block;
		width:51.5%;
		min-width:440px;
		margin:0 auto 42px;
	}
	.address {
		font-size:16px;
		color:#4d4d4d;
		margin-bottom:14px;
	}
	.url-link {
		font-size:24px;
	}
}
@media screen and ( max-width:700px) {
	.contact-box {
		border-top:1px solid #aaa;
		padding:35px 0 55px;
		text-align:center;
	}
	.idemitsu-logo {
		display:block;
		width:70%;
		margin:0 auto 15px;
	}
	.address {
		font-size:15px;
		color:#4d4d4d;
		margin-bottom:25px;
	}
	.url-link {
		font-size:20px;
	}
}

