@charset "UTF-8";
/* ===================================
 * reste css
==================================== /* 
/* http://meyerweb.com/eric/tools/css/reset/ */
/* v1.0 | 20080212 */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ===================================
 * reste css end
==================================== /* 
                               
                                    
/* ------------------------------------
// common
------------------------------------ */

body {
margin:0;
font-size:1.2em;
background:url("/img/bg2.jpg");
background-attachment: fixed;
}

img {
	max-width:100%;
}

header {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0.2em 40px;
  background: #fff;
  box-sizing: border-box;
}
header .inner {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
}
.logo {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100px;
  font-weight: bold;
}

/* header-navi */

header .navi {
  margin: 0 0 0 auto;
  padding: 0;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  list-style: none;
}
header .navi li {
  margin: 5px 0 5px 40px;
}
header .navi li:first-child {
  margin-left: 0;
}
header .navi li a {
  display: block;
  box-sizing: border-box;
  text-decoration: none;
  color: #333;
}
header .navi li a:hover {
  text-decoration: underline;
}
/*#header{
  height: 10%;/*高さ指定*/
/*  width:98%;/*横幅指定*/
  /*以下はレイアウトのためのCSS*/
/*  display: flex;
  justify-content: space-between;
  align-items: center;
  background:#fff;
  color:#fff;
  text-align: center;
  padding: 1em;
}

/*JSを使いfixedクラスが付与された際の設定*/
/*#header.fixed{
  position: fixed;/*fixedを設定して固定*/
 /*   z-index: 999;/*最前面へ*/
/*    top:0;/*位置指定*/
/*    left:0;/*位置指定*/
/*}


/*========= レイアウトのためのCSS ===============*/

h1{
	font-size:1.2rem;
	margin:0;
}

h2{
  font-size:1.2rem;
  text-align: center;
  margin: 0 0 30px 0;
}
h3 {
	font-size:4.5rem;
	color:#1E90FF;
	display:inline-block;
	vertical-align:middle;
	text-align:left;
}
p{
  margin-top:20px;  
}

small{
  background:#333;
  color:#fff;
  display: block;
  text-align: center;
  padding:20px;
}



nav ul{
  list-style: none;
  display: flex;
  justify-content: center;
}

nav ul li a{
  display: block;
  text-decoration: none;
  color: #666;
  padding:10px;
  transition:all 0.3s;
}

nav ul li.current a,
nav ul li a:hover{
  color:#eba675; 
}


section{
  padding:30px;
}

section:nth-child(2n){
  background:#f3f3f3; 
}


.agency {
	width:100%;
padding-top:3.5em;
	
}
.ag-content {
width:85%;
margin:0 auto;
background:rgba(255,255,255,0.9);
text-align:center;
padding:0.5em;
border-radius: 10px;
}
.pr1 {
width:95%;
margin:0 auto;
padding:1em;
color:#fff;
font-weight:bold;
text-align:center;
background:rgba(30,144,255,0.7);
border-radius: 10px;
}
.pr2 .ms {
font-size:1.5em;
	color:#3990c6;
  font-weight: bold;
  border: 3px solid #4c9ac0;
  background-color: #fff;
  padding: 0.5em 1em;
  position: relative;
  width:50%;
  margin:0.2em auto;
}
.pr2 .ms::after {
  content: '';
  background-color: #4c9ac0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: rotate(-1deg);
}
span {display:block;}
.service {
	width:85%;
	margin:0 auto;
	padding:1em; 
	background:#feb557; 
	color:#fff; 
	border:1px solid blue;
	border-radius: 10px;
}

footer {
	margin-top:1.5em;
	background:#3990c6;
	font-size:0.7em;
	color:#fff;
	padding:3em;
}
footer ul {
	list-style:none;
	margin:0;
	padding:0;
}
footer ul li {
	width:auto;
	margin:1em;
	display:inline-block;
	text-align:left;
}
footer ul li p {
	margin:0.1em;
}
.bt {
	width:fit-content;
	margin:auto;
	display:block;
	padding:0.2em;
	border-radius:3px;
	background:#fff;
}
.bt a:hover{

}
.nstep {
	
}
dl.nstep {
	max-width:90%;
	margin:1em auto;
}
dl.nstep dt {
	width:fit-content;
	background:#3990c6;
	color:#def5ff;
	font-size:2em;
	font-weight:bold;
	padding:0.5em;
	text-align:left;
	border-radius: 0 10px 10px 0;
}
dl.nstep dd {
	margin:0 0 0.7em 0;
	background:#d6e8f4;
	padding:0.7em;
	text-align:left;
	font-size:1.5em;
	color:#111;
}
dl.nstep dd span {
	font-size:1.1em;
	font-weight:bold;
	margin-left:2em;
}
.anker {
	margin:2.5rem;
}
.info {
	width:fit-content;
	margin:1.5em auto;
	text-align:left;
}
.info ul {

}
.info ul li {
	line-height:1.8em;
	display:inline-block;
	vertical-align:middle;
}

@media screen and (max-width: 1200px) {
	body {
padding:0;
}
body::before {
content:"";
display:block;
position:fixed;
top:0;
left:0;
z-index:-1;
width:100%;
height:100vh;
background-repeat:no-repeat !important;
background-position:80% 50% !important;
background-image:url(/img/bg2.jpg);
background-size:cover !important;
}
		nav ul li {
		margin-left:1em;
		border-bottom:1px solid #777;
	}
		nav ul li a{
		padding:1px;
		font-size:0.8em;
	}
	.ag-content, .pr1, .pr2, .service {
		max-width:95%;
	}
	.agency h3 {
		margin:1.5em 0 0 0 !important;
		font-size:5vw !important;
	}
	.ph1 {
		max-width:80% !important;
	}
}/* 1200 end */

@media screen and (max-width: 850px) {
	body {
padding:0;
}
body::before {
content:"";
display:block;
position:fixed;
top:0;
left:0;
z-index:-1;
width:100%;
height:100vh;
background-repeat:no-repeat;
/* background-position:50% 100%; */

/* background-image:url(/img/bg2.jpg); */
background-image:url("/img/spback.jpg");
background-color:rgba(255,255,255,0);
background-blend-mode:lighten;
background-size:cover;
}
	p {
		padding:0;
		margin:0;
	}
	header {
		padding:0;
		max-width:100%;
	}
	header .inner {
		height:50%;
		text-align:center;
	}
	h1 {
		width:70%;
		display:block;
		margin-right:0.5em;
	}
	h1 img {
		width:100%;
	}
	nav {
		text-align:left;
		margin-top:0.5em;
	}
	nav ul {
		display:block;
		margin:0;
		padding:0;
	}
	nav ul li {

	}
	.agency {
		display:block;
		margin-top:2.5em;

	}
	nav ul li a{
		padding:1px;
		font-size:0.8em;
	}
	.agency h3 {
		margin:0 !important;
	}
	.agency h3 p {
		margin:0 !important;
		font-size:7vw !important;
	}
	.ag-content {
		padding-top:1em;
		width:95%;
	}
	.ag-content img {
		max-width:100%;
	}
	.ag-content h3 p {
		margin-bottom:1.5em;
	}
	.ag-content p {
		font-size:0.7em !important;
	}
	.pr1 {
		width:98%;
		max-width:100% !important;
		padding:0.3em;
	}
	.pr2 {
		margin:1em 0 !important;
		padding:0.5em !important;
		font-weight:bold;
	}
	.pr2 .ms {
		border-left:none;
		border-right:none;
		width:85%;
	}
	.ph1 {
		width:30% !important;
		margin-left:0 !important;
		padding:0;
	}
	p.kituke {
		font-size:10vw !important;
		word-break: keep-all;
	}
	dl.nstep {
	max-width:100%;
	margin:0;
}
dl.nstep dt {
	width:96%;
	font-size:1.5em;
	margin:0;
	padding:0.3em;
	text-align:left;
	border-radius: 0;
}
dl.nstep dd {
	margin:0 0 0.7em 0;
	background:#d6e8f4;
	padding:0.2em;
	font-size:0.8em;
}
dl.nstep dd span {
	font-size:1em;
	font-weight:bold;
	margin-left:0;
}
.anker {
	margin:1.5rem;
}
	
	/*　ハンバーガーメニューボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 20px;
  top   : 20px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #BBBBBB;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}


/* メニュー背景　*/
nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #fff;
  background: rgba( 71,70,73,0.6 );
  text-align: center;
  width: 100%;
  opacity: 0;
  display: none;
  transition: opacity .6s ease, visibility .6s ease;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active {
  opacity: 100;
  display: block;
}
	
}/* 850 end */
