@charset "UTF-8";
/* CSS Document */

html {
	font-size: 62.5%;
}

body {
	color: #262626;
	font-family: 'Noto Sans JP', sans-serif;	
	font-size: 1.6rem;
	font-feature-settings: "palt";
	letter-spacing: 0.16em;
	-webkit-fonts-moothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1.6;
	overflow-x: hidden;
}


a {
	color: #1a1a1a;
	text-decoration: none;
}

li {
	list-style: none;
}

img {
	max-width: 100%;
	height: auto;
}

.sp {
	display: none;
}

/*--------セクション共通---------*/

.comingsoon{
	margin: 70px 0 70px;
	text-align: center;
	font-size: 5rem;
	font-weight: bold;
	color: #0d3563;
	font-family: 'Roboto', sans-serif;
}


.section_title {
	text-align: center;
	margin: 0 auto 70px;
	width: 100%;
}

.section_title h2{
	font-size: 3rem;
}

.section_title p {
	font-size: 2rem;
	margin-bottom: 13px;
	font-weight: 500;
}

.page_title {
	background-image: url("../image/common/section_title.png");
	background-size: cover;
	background-repeat: no-repeat;
	padding: 150px 0 60px;
	text-align: center;
	width: 100%;
}

.page_title h2 {
	font-size: 3rem;
}

.page_title p {
	font-size: 2rem;
	margin-bottom: 10px;
}
/*--------///セクション共通---------*/



/*------------------

ヘッダー

-------------------*/

header {
	width: 100%;
	height: 80px;
	background-color: rgba(242,244,245,0.9);
	border-bottom: 1px solid #0D3563;
	position: fixed;
	z-index: 100;
	box-sizing: border-box;
}

.header_wrapper {
    width: 90%;
	max-width: 1400px;
	margin: 0 auto;
	font-size: 1.8rem;
}

/*----------リボン-------------*/
.title { 
	position: absolute;
	top: 0;
	width: 30%;
	max-width: 300px;
}

.title img {
	width: 100%;
}

/*----------///リボン-------------*/

/*----------ナビゲーション-------------*/

.nav_sp {
	display: none;
}

.header_list {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	align-items: center;
	height: 80px;
}

.nav_pc {
	margin-right: 60px;
}

.nav_list {
    margin: 0;
	padding: 0;
    display: flex;
	justify-content: space-between;
}

.nav_item {
	margin-left: 30px;
}

.nav_item a {
	color: #0D3563;
	font-weight: bold;
	line-height:50px;
	padding: 5px;
}

.nav_item a:hover{
    margin-left:3px;
    margin-top:3px;
	font-size: 2rem;
	border-bottom: solid 2px #0D3563;
	cursor: pointer;
}


/*----------///ナビゲーション-------------*/


/*-------------問い合わせボタン-------------------*/
.contact_btn{
    max-width:180px;
    max-height: 50px;
    line-height:50px;
}

.contact_btn a{
    display:inline-block;
    width:100%;
    height:100%;
	padding: 0 5px;
    text-decoration: none;
    background:linear-gradient(to bottom,#FFBA00 10%,#FC9F0A 80%);
    text-align:center;
    border:1px solid #E37B00;
    color:#FFFFFF;
    font-weight:bold;
    border-radius:11px;
    -webkit-border-radius:11px;
    -moz-border-radius:11px;
    box-shadow:2px 2px 3px 1px #DEDEDE;
}

.contact_btn a:hover{
    background:linear-gradient(to bottom,#FC9F0A 0%,#ffba00 80%);
    color:#FFFFFF;
    margin-left:3px;
    margin-top:3px;
    border:1px solid #E37B00;
    box-shadow:none;
}

.fa-envelope{
	font-size: 2.5rem;
	vertical-align: -10%;
	margin-left: 10px;
}

/*-------------///ボタン-------------------*/


/*------------------

///ヘッダー

-------------------*/

/*------------------

フッター

-------------------*/

footer {
	background-color: #0D3563;
	color: #fff;
	width: 100%;
}

.footer_inner {
	padding: 100px 0;
	margin: 0 auto;
	width: 80%;
	max-width: 800px;
	text-align: center;
	position: relative;
}


footer .nav_item a {
	color: #fff;
}

footer .nav_item a:hover {
	border-bottom: 3px solid #fff;
}

.footer_logo {
	margin: 80px auto 50px;
}

.footer_logo p {
	margin-bottom: 10px;
	font-size: 1.8rem;
}

.footer_logo img {
	max-width: 180px;
	width: 30%;
}

.footer_instagram {
	margin: 0 auto 50px;
	width: 50px;
}

.footer_instagram > img{
	display: block;
	width: 100%;
}

small {
	font-size: 1.2rem;
	letter-spacing: normal;
}

.page_top{
    width:70px;
    height:70px;
	position: absolute;
	bottom: 25%;
	right: -10%;
}

.page_top a{
    display:block;
    width:100%;
    height:100%;
    text-decoration: none;
    background:#FFFFFF;
    text-align:center;
    color:#0D3563;
    font-size:1.8rem;
	line-height: 1.8rem;;
	text-transform: uppercase;
    font-weight:bold;
    border-radius:9px;
    -webkit-border-radius:9px;
    -moz-border-radius:9px;
  	box-shadow:1px 1px 3px 1px #071D36;
    transition: all 0.1s ease;
}

.page_top a:hover{
    background:#FFFFFF;
    color:#0D3563;
    margin-bottom:3px;
    box-shadow:1px 1px 5px 1px #071D36;
}

.top_arrow {
	font-size: 4.4rem;
	display: block;
}

/*------------------

///フッター

-------------------*/



/*------------------

お問い合わせ

-------------------*/

/* --- inquiryForm Common --- */
.inquiry {
	width: 100%;
	background-color: #F2F4F5;
}

.inquiry_inner {
	width: 80%;
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 0 140px;
}

.inquiry_section_title {
	display: flex;
	justify-content: center;
}

.inquiry_section_title > img {
	max-width: 100px;
	margin-right: 1%;
}

.inquiry_section_title_inner  {
	padding-top: 15px;
	margin-right: 100px;
}

.inquiry_section_title_inner > p{
	margin-bottom: 0;
}


.inquiry-sub-title {
	width: 350px;
	font-weight: 500;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	color: #0D3563;
}


.input-target {
	border-color: #0D3563;
	border-radius: 5px;
	border-width: 1px;
	padding: 0 10px;
	font-size: 1.6rem;
	box-sizing: border-box;
}

::placeholder {
	color: #CACACA;
}

.text-box {
	width: 100%;
	height: 42px;
}


.text-area {
	width: 100%;
	height: 270px;
	padding: 5px 10px;
}


.inquiry-type-container {
  	width: 100%;
	line-height: 2;
	font-size: 1.8rem;
}

.inquiry-type {
	height: 20px;
	width: 20px;
	margin-right: 10px;
}


.send-inquiry-container {
	text-align: center;
	margin: 70px auto 0;
	color: #0D3563;
}

.agreement {
	margin-bottom: 30px;
}

.send-inquiry-button {
	width: 50%;
	height: 73px;
    text-decoration: none;
    background:linear-gradient(to bottom,#FFBA00 10%,#FC9F0A 80%);
    text-align:center;
    border:1px solid #E37B00;
    color:#FFFFFF;
    font-weight:bold;
    border-radius:11px;
    -webkit-border-radius:11px;
    -moz-border-radius:11px;
    box-shadow:2px 2px 3px 1px #DEDEDE;
	font-weight: bold;
	font-size: 2.6rem;
	letter-spacing: .1em;
	cursor: pointer;
}

.send-inquiry-button:hover{  
	background:linear-gradient(to bottom,#FC9F0A 0%,#ffba00 80%);
    color:#FFFFFF;
	margin-left: 3px;
    margin-top:3px;
	height: 70px;
    border:1px solid #E37B00;
    box-shadow:none;
}

    /* --- question --- */
.question {
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  margin-top: 50px;
}

.address-question {
	width: 100%;
}

.tel-address-question,.mail-address-question {
	display: flex;
	justify-content: space-between;
}

.address-question span {
	display: block;
	color: #0D3563;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	width: 20%;
	height: 18px;
	padding: 12px 0;
	margin-right: 10px;
}

.tel-address-question {
	margin-bottom: 40px;
}

.contact-address-form {
    width: 80%;
    }


    /* --- Message --- */
.require-form-comment {
	font-size: 1.2rem;
	float: right;
	background-color: #ff9d00;
	color: #fff;
	padding: 5px 4px;
	margin-right: 8%;
}

    .error-message > p {
      color: #D01F22;
      font-size: 2.8rem;
	  margin-bottom: 30px;
    }

    .send-message > p {
      font-size: 2.4rem;
	  margin-top: 30px;
    }

    .display-none {
      display: none;
    }

	
.agreement > a {
	color: #78AAE2;
}

.agreement > a:hover {
	opacity: 0.7;
}
/*------------------

///お問い合わせ

-------------------*/









@media screen and (max-width: 1350px){
	

/*----------ナビゲーション/ハンバーガー-------------*/
.nav_pc {
	display: none;
	}
	
.nav_sp {
	top: 0px;  /*headerの余白分*/
	left: 0px;  /*headerの余白分　ヘッダーには左右に15px余白があるので、headerの子要素となる.smは15px分内側に設置されます。その余白を埋めるために左に寄せる。*/
	position: absolute; /*絶対配置　top　leftからの位置を絶対配置する*/
	z-index: 10;
	width: 50%;
	background-color: rgba(245, 245, 245, 0.9);
	padding: 80px 0 0;
	height: 100vh
}
	
.nav_list {
	flex-direction: column;	/*ulのflexboxを縦並びにする*/ 
	text-align: center;
}

.nav_item {
	margin: 50px 0 0 0;
	text-align: center;
	font-size: 2rem;
}

	
#hamburger {
	background-color: transparent;  /*透明の背景*/
	position: relative;             /*ハンバーガーの横線の位置を決めるための基準*/
	cursor: pointer;                /*リンクを示すカーソルを表示（指差しマーク）*/
	margin: 0 0 0 30px;             /*左側に余白を作り、ハンバーガーメニューを右端に配置*/
	height: 50px;                   /*ヘッダーの高さと同じ60px*/
	width: 50px;                    /*高さと同じ幅*/
  }
	
.icon span {
	position: absolute;       /*親要素である#hamburgerを基準に位置を指定*/
	left: 15px;               /*#hamburger内の左がら15pxに横線を配置（幅が60pxなので右からも15px）*/
	width: 40px;              /*横線の幅が30px*/
	height: 3px;              /*横線の高さが4px*/
	background-color: #0D3563;  /*横線を白色*/
	border-radius: 8px;       /*横線の両端の角に丸みを持たせる*/
	transition: ease 0.75s;   /*変化の時間（easeは初期値）*/
  }
	

.icon span:nth-of-type(1) {
 top: 12px;
}
.icon span:nth-of-type(2) {
  top: 26px;
 }
.icon span:nth-of-type(3) {
  bottom: 8px;
}
	
 .close span:nth-of-type(1) {
transform: rotate(45deg); /*反時計回りに45度回転*/
top: 28px;
}

.close span:nth-of-type(2) {
opacity: 0;
}

.close span:nth-of-type(3) {
  transform: rotate(-45deg); /*時計回りに45度回転*/
  top: 28px;
}
	
/*----------///ナビゲーション/ハンバーガー-------------*/
	
}





/*-----------------------------------------------------------------

スマホ

----------------------------------------------------------------*/
@media screen and (max-width: 800px){

/*ーーーー共通ーーーーー*/
.pc {
	display: none;
}
	
.sp {
	display: inline-block;
}

.section_title {
	margin: 0 auto 40px;
}

.section_title p {
	margin-bottom: 0;
}

.page_title {
	padding: 100px 0 30px;
}

.page_title h2 {
	font-size: 2rem;
}

.page_title p {
	font-size: 1.4rem;
	margin-bottom: 1px;
}
	

/*ーーーー共通ーーーーー*/
	
/*ーーーーヘッダーーーーーーーー*/
header {
	height: 65px;
	box-sizing: border-box;
}
	
.header_list{
	height: 65px;
}

.title {
	width: 40%;
	max-width: 150px;
	min-width: 120px;
}

.nav_sp {
	width: 80%;
	padding: 50px 0 100px;
}	
	
.nav_item {
	margin: 30px 0 0 0;
	font-size: 1.6rem;
}
	

	


	
/*ーーーー///ヘッダーーーーーーーー*/
	
/*ーーーー///お問い合わせボタンーーーーーーー*/
.contact_btn{
    height: 45px;
    line-height:45px;
}


/*ーーーー///お問い合わせボタンーーーーーーー*/

/*ーーーーーー問い合わせフォームーーーーーーーー*/
.question {
	  display: block;
	  margin-top: 60px;
}

.inquiry-sub-title {
	display: block;
	margin-bottom: 20px;
}

.require-form-comment {
	float: none;
	margin-left: 15px;
}

.tel-address-question,.mail-address-question {
	display: block;
}

.contact-address-form {
    width: 100%;
}
	
.address-question span {
    width: 100%;
}

/*ーーーーーー///問い合わせフォームーーーーーーーー*/	

/*ーーーーーーフッターーーーーーーーー*/	
.footer_logo img {
	width: 40%;
}	
/*ーーーーーー///フッターーーーーーーーー*/	

}

@media screen and (max-width: 450px){
	
.section_title h2 {
	font-size: 1.6rem;
}
	
.section_title p {
	font-size: 1rem;
}
	
/*問い合わせボタン＿sp*/
.contact_btn{
    width:70px;
    height: 44px;
	line-height: 10px;
}

.contact_btn a{
    display:block;
    width:100%;
    height:100%;
	padding: 0 1px;
    text-decoration: none;
    background:linear-gradient(to bottom,#FFBA00 10%,#FC9F0A 80%);
    text-align:center;
    border:1px solid #E37B00;
    color:#FFFFFF;
    font-size: 1rem;
	letter-spacing: normal;
    border-radius:2px;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    box-shadow:2px 2px 3px 1px #DEDEDE;
}

.contact_btn a:hover{
    background:linear-gradient(to bottom,#FC9F0A 0%,#ffba00 80%);
    color:#FFFFFF;
    margin-left:3px;
    margin-top:3px;
    border:1px solid #E37B00;
    box-shadow:none;
}

.fa-envelope{
	font-size: 2.4rem;
	display: block;
	margin: 2px 0;
	width: 100%;
}
	
#hamburger {
	margin-left: 2px;
}
/*問い合わせボタン＿sp*/
	


/*ーーーーーー問い合わせフォームーーーーーーーー*/	

.question {
	margin-top: 40px;
}
	
.inquiry_inner {
	width: 90%;
	padding: 30px 0 140px;
}

.inquiry_section_title_inner {
 	margin-right: 60px;
}
	
.inquiry_section_title > img {
	width: 60px;
	height: 55px;
	margin-right: 3%;
}

.inquiry-sub-title {
	font-size: 1.4rem;
	margin-bottom: 10px;
	width: 100%;
}

.input-target {
	font-size: 1.2rem;
}

.inquiry-type-container {
	font-size: 1.2rem;
}

.inquiry-type {
	height: 18px;
	width: 18px;
}


.send-inquiry-container {
	margin: 30px auto 0;
}

.agreement {
	margin-bottom: 20px;
}

.send-inquiry-button {
	width: 90%;
	height: 60px;
	font-size: 2rem;
}

.send-inquiry-button:hover{  
	height: 57px;
}

/* --- question --- */


.address-question span {
	font-size: 1.2rem;
}

.tel-address-question {
	margin-bottom: 5px;
}

    /* --- Message --- */
.require-form-comment {
	font-size: 1rem;
	padding: 3px 3px;
}

    .error-message > p {
      color: #D01F22;
      font-size: 1.4rem;
	  margin-bottom: 30px;
    }

    .send-message > p {
      font-size: 1.4rem;
	  margin-top: 30px;
    }
	
.agreement {
	font-size: 1.2rem;
}

	
/*ーーーーーー///フッターーーーーーーーー*/	

.footer_logo img {
width: 50%;
}
	
.footer_logo p {
font-size: 1.2rem;
}
	
.page_top {
	bottom: 40%;
	right: -5%;
}

	
}
	
