/*
Theme Name: UNIRITA2024
Theme URI: 
Author: 
Author URI: 
Description: 
Version: 1.0
License: 
License URI: 
Tags: 
Text Domain: 
*/
@charset "UTF-8";
/*------------------------------------------------------------------
********************************************************************
 * ▼構成
 * ・ベースとなるCSS
 * ・スマホ用（@media screen and (max-width: 767px) {} ）
 * 
 * リセットCSS      css / destyle.min.css
 * モジュール系CSS  css / default.css
 * ページ共通CSS    style.css
 * 各ページCSS      css / (top.css, business.css, message.css,,,)
********************************************************************
--------------------------------------------------------------------*/

/*--- 基本 ---*/
body {
	margin: 0px;
	padding: 0px;
	background: none repeat scroll 0% 0%;
	background-attachment: scroll;
	font-family: "Noto Sans JP", YuGothic, "Yu Gothic Medium", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	letter-spacing: 0.8px;
	font-size: 14px;
	font-weight: 400;
	color: #333;
}


img{
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	font-style: italic;
	background-repeat: no-repeat;
	background-size: cover;
	shape-margin: 0.75rem;
}

/*--- メインコンテンツ ---*/
main .bg_gray{
	width: 100%;
	margin: 0;
	background-color: #F6F6F6;
}

/*--- テキスト ---*/
.red{
	color: #ff0000;
}
.blue{
	color: #0000ff;
}
.green{
	color: #008000;
}
.black{
	color: #000;
}
.white{
	color: #fff;
}


/*--- リンク系（アンカー） ---*/
a {
	color: #333;
	text-decoration: none;
	transition: all 1s ease;
}

	a:hover {
		color: #177889;
	}

a img{
	/* display: block; */
	transition: 0.5s;
}

	a img:hover {
		opacity: 0.7;
		transition: 0.5s;
	}

a[href^="tel:"] {
	pointer-events: none;
	color: #111;
}

/*--------------------------------------------------
**************************************************
  PC用
**************************************************
--------------------------------------------------*/
@media screen and (min-width: 767px) {
	/*--- ヘッダー ---*/
  /*HEADER*/	
	header .lower_container nav{
		display: flex;
		flex-wrap: wrap;
		padding-bottom: 15px;
		box-shadow: 0px 10px 14px -4px rgba(0, 0, 0, 0.2);
	}
	
	header .lower_container nav p{
		width: 180px;
		margin: 15px 0 0 3%;
	}
	
	header .lower_container nav ul{
		display: flex;
		margin-left: auto;
		margin-right: 5%;
		margin: 30px 3% 0 auto;
		column-gap: 50px;
		font-weight: 500;
	}
	
	header .lower_container nav ul li.btn_header_contact a{
		display: block;
		color: #FFF;
		border-radius: 30px;
		padding: 15px 50px;
		box-sizing: border-box;
		margin-top: -15px;
		background-color: #FF8800;
   		background-image: linear-gradient(90deg, #FF7600 0%, #FFA000 100%);
	}
	
	header .lower_container nav ul li.btn_header_contact a:hover{
	    background-color: #FF8800;
	    background-image: linear-gradient(90deg, #FF5400 0%, #FF7600 100%);
	}
	
	header .lower_container nav ul li.btn_header_contact a:before{
		content: '';
		display: inline-block;
		width: 25px;
		height: 28px;
		background-image: url(imgs/common/icon_mail.png);
		background-size: contain;
		vertical-align: middle;
		margin-right: 8px;
	}

	/*--- グローバルナビゲーション ---*/


	/*--- パンくず ---*/
	.breadcrumb{
		width: 1200px;
		margin: 30px auto 0;
		font-size: 12px;
	}
	.breadcrumb br {
		display:none;
	}


	main .main_container{
		width: 1200px;
		margin: 0 auto;
		padding: 50px 0 80px;
	}
  
	/*下層ページタイトル*/
	main .ttl_lower_area{
		width: 1200px;
		margin: 0 auto;
	}
	
	main .ttl_lower_area h1.ttl_lower{
		margin-top: 50px;
		font-size: 32px;
		font-weight: 700;
	}
	
	main .ttl_lower_area p.ttl_lower_en{
		text-align: right;
		margin-left: auto;
		font-size: 100px;
		font-weight: 700;
		line-height: 0.88em;
		color: #DFE9EB;
	}
	
	.pic_main img{
		width: 100%;
	}

	/*--- フッター ---*/
	footer{
		width: 100%;
		background-color: #4A4A4A;
		color: #FFF;
	}
	
	footer a{
		color: #FFF;
	}
  
	footer .footer_container{
		width: 1200px;
		margin: 0 auto;
		padding: 50px 0 20px 0;
		display: flex;
		column-gap: 100px;
		font-size: 12px;
	}
	
	footer .footer_container .company_area{
		width: 25%;
	}
	
	footer .footer_container .company_area .company_name{
		width: 240px;
	}
	
	footer .footer_container .company_area .company_address{
		margin-top: 30px;
	}
	
	footer .footer_container .company_area .btn_footer_contact a{
		display: block;
		color: #FFF;
		border-radius: 30px;
		padding: 20px 50px;
		box-sizing: border-box;
		margin-top: 50px;
		background-color: #FF8800;
  	 	background-image: linear-gradient(90deg, #FF7600 0%, #FFA000 100%);
		font-weight: 500;
		font-size: 13px;
	}
	
	footer .footer_container .company_area .btn_footer_contact a:hover{
	    background-color: #FF8800;
	    background-image: linear-gradient(90deg, #FF5400 0%, #FF7600 100%);
	}
	
	footer .footer_container .company_area .btn_footer_contact a:before{
		content: '';
		display: inline-block;
		width: 25px;
		height: 28px;
		background-image: url(imgs/common/icon_mail.png);
		background-size: contain;
		vertical-align: middle;
		margin-right: 8px;
	}
	
	footer .footer_text_container{
		display: flex;
		flex-wrap: wrap;
		column-gap: 50px;
		width: 70%;
	}
	
	footer .footer_text_container .footer_text_area p{
		font-size: 14px;
		font-weight: 600;
	}
	
	footer .footer_text_container .footer_text_area p a{
		text-decoration: underline;
	}
	
	footer .footer_text_container .footer_text_area p a:hover{
		color: #D9D9D9;
	}
	
	footer .footer_text_container .footer_text_area ul{
		margin-top: 10px;
	}
	
	footer .footer_text_container .footer_text_area ul li a{
		line-height: 2.5em;
		color: #D9D9D9;
	}
	
	footer .footer_text_container .footer_text_area ul li a:hover{
		line-height: 2.5em;
		color: #FFF;
	}
	
	footer .footer_text_container .footer_text_area ul li a:before{
		content: '─';
		margin-right: 5px;
	}
  
	footer .footer_text_container .footer_iso_area dl{
		display: flex;
		column-gap: 20px;
		margin-top: 30px;
	}
	
	footer .footer_text_container .footer_iso_area dl dt{
		width: 100px;
	}
	
	footer .footer_text_container .footer_iso_area dl dd{
		color: #D9D9D9;
		font-size: 12px;
	}
	
	footer #copyright{
		margin-top: 20px;
		padding-bottom: 20px;
		text-align: center;
		font-size: 11px;
		font-weight: 400;
	}
}
/*--------------------------------------------------
**************************************************
  スマホ用
**************************************************
--------------------------------------------------*/
@media screen and (max-width: 767px) {
	
	/*--- 基本 ---*/
	body {
		font-size: 16px;
	}
	
	/*--- リンク系（アンカー） ---*/
	a[href^="tel:"] {
		pointer-events: auto;
	}
	
	/*--- ヘッダー ---*/
	header{
		position: relative;
	}
	
	header nav{
		position: relative;
		height: 80px;
	}

	header .head_logo{
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	
	header .head_logo img{
		width: auto;
		height: 50px;
	}
	
	
	
	/*--- ハンバーガーメニュー ---*/
	.humberger{
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%);
		width: 26px;
		height: 18px;
	}
	
	header.top .humberger{
		top: 40px;
	} 
	
	.humberger span{
		position: absolute;
		display: inline-block;
		width: 26px;
		height: 2px;
		background-color: #111;
		transition: 0.2s;
	}
	
	.humberger.open span{
		transition: 0.2s;
	}
	
	.humberger span:nth-child(2){
		top: 50%;
		transform: translateY(-50%);
	}
	
	.humberger span:nth-child(3){
		bottom: 0;
	}
	
	.humberger.open span:nth-child(1){
		top: 8px;
		transform: rotate(45deg);
	}
	
	.humberger.open span:nth-child(2){
		display: none;
	}
	
	.humberger.open span:nth-child(3){
		bottom: 8px;
		transform: rotate(-45deg);
	}
	
	/*--- グローバルナビゲーション ---*/
	.main_nav{
		position: fixed;
		top: 80px;
		left: 100%;
		z-index: 9999;
		width: 100%;
		height: calc(100vh - 80px);
		background-color: rgba(255, 255, 255, 0.9);
		transition: 0.2s;
	}

	.main_nav.active{
		left: 0;
		transition: 0.2s;
	}
	
	.main_nav li{
		width: 95%;
		margin: 0 auto;
	}
	
	.main_nav li a{
		position: relative;
		display: block;
		padding: 20px 0;
		border-top: #ddd 1px solid;
	}
	
	.main_nav li:last-child a{
		border-bottom: #ddd 1px solid;
	}
	
	.main_nav li a::after{
		content: "";
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%) rotate(45deg);
		display: inline-block;
		width: 10px;
		height: 10px;
		border-top: #aaa 2px solid;
		border-right: #aaa 2px solid;
	}
	
	
	/*--- メインコンテンツ ---*/
	main .main_container{
		width: 96%;
		margin: 50px auto 0;
	}

	main .ttl_lower_area{
		width: 100%;
		margin: 0 auto;
	}
	
	main .ttl_lower_area h1.ttl_lower{
		margin-top: 0;
		font-size: 22px;
		font-weight: 700;
	}
	
	main .ttl_lower_area p.ttl_lower_en{
		text-align: right;
		font-size: 40px;
		font-weight: 700;
		line-height: 0.88em;
		color: #DFE9EB;
	}

	/*下層ページタイトル*/
	main .ttl_lower_area{
		width: 96%;
		margin: 0 auto;
	}
	
	main .ttl_lower_area h1.ttl_lower{
		margin-top: 0px;
		font-size: 6.5vw;
		font-weight: 700;
	}
	
	main .ttl_lower_area p.ttl_lower_en{
		text-align: right;
		margin-left: auto;
		font-size: 8vw;
		font-weight: 700;
		line-height: 0.88em;
		color: #DFE9EB;
	}
	
	/*--- パンくず ---*/
	.breadcrumb{
		width: 96%;
		margin: 30px auto 0;
		font-size: 3vw;
	}
	.breadcrumb br {
		display:none;
	}
	
	
	/*--- CTA ---*/
	
	
	/*--- フッター ---*/
	footer{
		width: 100%;
		margin-top: 50px;
		background-color: #4A4A4A;
		color: #FFF;
	}
	
	footer a{
		color: #FFF;
	}
  
	footer .footer_container{
		width: 96%;
		margin: 0 auto;
		padding: 50px 0 20px 0;
		font-size: 12px;
	}
	
	footer .footer_container .company_area{
		width: 100%;
	}
	
	footer .footer_container .company_area .company_name{
		width: 50%;
		margin: 0 auto;
	}
	
	footer .footer_container .company_area .company_address{
		margin-top: 20px;
		text-align: center;
	}
	
	footer .footer_container .company_area .btn_footer_contact a{
		width: 90%;
		margin: 30px auto 0;
		display: block;
		color: #FFF;
		border-radius: 30px;
		padding: 20px 50px;
		box-sizing: border-box;
		background-color: #FF8800;
  	 	background-image: linear-gradient(90deg, #FF7600 0%, #FFA000 100%);
		font-weight: 700;
		font-size: 4vw;
		text-align: center;
	}
	
	footer .footer_container .company_area .btn_footer_contact a:hover{
	    background-color: #FF8800;
	    background-image: linear-gradient(90deg, #FF5400 0%, #FF7600 100%);
	}
	
	footer .footer_container .company_area .btn_footer_contact a:before{
		content: '';
		display: inline-block;
		width: 25px;
		height: 28px;
		background-image: url(imgs/common/icon_mail.png);
		background-size: contain;
		vertical-align: middle;
		margin-right: 8px;
	}
	
	footer .footer_text_container{
		display: flex;
		flex-wrap: wrap;
		column-gap: 30px;
	}
	
	footer .footer_text_container .footer_text_area p{
		font-size: 3vw;
		font-weight: 700;
		margin-top: 30px;
	}
	
	footer .footer_text_container .footer_text_area p a{
		text-decoration: underline;
	}
	
	footer .footer_text_container .footer_text_area p a:hover{
		color: #D9D9D9;
	}
	
	footer .footer_text_container .footer_text_area ul{
		margin-top: 10px;
	}
	
	footer .footer_text_container .footer_text_area ul li a{
		line-height: 2.2em;
		color: #D9D9D9;
	}
	
	footer .footer_text_container .footer_text_area ul li a:hover{
		line-height: 2.2em;
		color: #FFF;
	}
	
	footer .footer_text_container .footer_text_area ul li a:before{
		content: '─';
		margin-right: 5px;
	}
  
	footer .footer_text_container .footer_iso_area dl{
    margin-top: 30px;
	}
	
	footer .footer_text_container .footer_iso_area dl dt{
		width: 100px;
		margin: 0 auto;
	}
	
	footer .footer_text_container .footer_iso_area dl dd{
		margin-top: 10px;
		color: #D9D9D9;
		font-size: 2.5vw;
	}
	
	footer #copyright{
		margin-top: 20px;
		padding-bottom: 20px;
		text-align: center;
		font-size: 11px;
		font-weight: 400;
	}
	
}/* End SP */


/* -- page 404 -- */
@media screen and (min-width: 768px) {
	.nf01 {
		margin-top:100px;
		text-align:center;
		font-size:48px;
		font-family:Arial;
		font-weight:700;
	}
	.nf02 {
		margin:50px 0 100px;
		text-align:center;
		font-size:18px;
	}
}
@media screen and (max-width: 767px) {
	.nf01 {
		margin-top:50px;
		text-align:center;
		font-size:6vw;
		font-family:Arial;
		font-weight:700;
	}
	.nf02 {
		margin:30px 0 50px;
		text-align:center;
		font-size:4vw;
	}
}


