@charset "utf-8";



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



	.cont {

		max-width: 90%;

	}



	.pageTop {

		right: -40px;

	}



	html {

		font-size: 15px;

	}

	.slInfo p{

		max-width: 80%;

	}



	.pageTop::after {

		bottom: 0.5rem;

	}



	.hdNav ul.menu>li {

		padding-left: 1.2vw;

		padding-right: 1.2vw;

	}



	.hdNav ul.menu>li>a::before {

		width: 0.625rem;

		height: 0.625rem;

	}



	ul.sub-menu {

		top: 1.75rem;

		left: 1.75rem;

	}

	.hdNav ul.menu>li>a::before{

		top: 1.1rem;

	}



	.hdNav ul.menu>li:last-child a {

		padding-left: 1.734vw;

		background-size: 1.272vw;

	}



	.selectTheme span {

		padding-left: 18px;

	}



	.ho02Full table tr td ul li input[type=checkbox] {

		width: 2.023vw;

		height: 2.023vw;

	}



	.ho02Full table tr td ul li label {

		padding-left: 15px;

	}



	.hdRows01 ul li:first-child img,

	.ft02Right ul li:first-child img {

		width: 10px;

	}



	.hdRows01 ul li:nth-child(2) img,

	.ft02Right ul li:nth-child(2) img {

		width: 18px;

	}



	.hdRows01 ul li:nth-child(3) img,

	.ft02Right ul li:nth-child(3) img {

		width: 20px;

	}



	.hdRows01 ul.hdSo li:not(:first-child) {

		padding-left: 20px;

	}



	ul.hdLang::before {

		width: 80px;

	}



	ul.hdLang {

		padding-left: 80px;

	}



	span.menuSearch img {

		width: 20px;

	}



	span.menuSearch {

		padding-left: 20px;

	}



	.wrapHeader {

		padding-top: 18px;

	}



	.ho01Item p {

		line-height: 150%;

	}



	.ho01Item h2 {

		padding-right: 6.647vw;

		background-size: 5.780vw;

		padding-bottom: 1.734vw;

	}



	.scrollId {

		/* right: -10.9vw; */

		right: -130px;

	}



	/* .sl03Left img {

		height: 100%;

		object-fit: cover;

	} */



	/* span.slImg img {

		max-width: 75%;

		width: 100%;

	} */







	#hoContent02 {

		padding-top: 3.757vw;

		padding-bottom: 7.803vw;

	}



	.ho02Full h2 {

		padding-bottom: 2.428vw;

	}



	.ho02Full p {

		max-width: 41.329vw;

	}



	.ho02Full table tr td input,

	.ho02Full table tr td select {

		height: 4.682vw;

		padding-left: 1.734vw;

		padding-right: 1.734vw;

	}



	.ho02Full table tr td textarea {

		padding: 2.023vw 1.734vw;

	}



	.ho02Full table tr td ul li input[type=submit] {

		width: 17.746vw;

		height: 4.740vw;

		margin-top: 2.601vw;

	}

}



/* @media (min-width: 1440px) { .cont { max-width: 82%; } } @media (min-height: 1600px) and (min-width: 2560px) { .cont { max-width: 82%; } .slImg img{ max-width: 52%; width: 100%; } } */

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

	.cont {

		max-width: 100%;

		padding-left: 25px;

		padding-right: 25px;

	}



	.scrollId {

		right: -13.538vw;

	}

	.slInfo a{

		width: 12.0556rem;

		right: -9%;

	}

	.pageTop::after {

		bottom: 0.4rem;

	}

	.pageTop {

		right: -60px;

	}

	.scrollId {

		right: -15vw;

	}

}



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

	/* .logo img {

		width: 180px;

	} */



	.ft02Left>ul>li:not(:first-child) {

		padding-left: 4.673vw;

	}

}

@media screen and (max-width: 1024px), screen and (max-height: 600px) {

	.slImg img{

		max-width: 34.8889rem;

	}

	.slInfo{

		padding-top: 0.5rem;

		padding-bottom: 0.5rem;

	}

}



@media screen and (min-width:991px) {



	.hdNav ul.menu>li.menu-item-has-children>a {

		background-image: url(../img/hd-img05.png);

		background-position: right center;

		background-repeat: no-repeat;

		padding-right: 22px;

	}



	.hdNav ul.menu>li.menu-item-has-children:hover ul.sub-menu {

		opacity: 1;

		pointer-events: all;

	}



	ul.sub-menu>li>a:hover {

		opacity: 0.75;

	}



	ul.sub-menu>li>a::before {

		content: "ー";

		padding-right: 5px;

	}



	ul.sub-menu {

		width: 100%;

		opacity: 0;

		position: absolute;

		top: 1.6667rem;

		left: 0.4444rem;

		z-index: 99;

		transition: ease all 0.35s;

		padding-top: 0.5556rem;

		pointer-events: none;

		background-color: rgb(0 0 91 / 80%);

		padding-bottom: 0.5556rem;

		min-width: 12.5rem;

	}



	ul.sub-menu>li {

		width: 100%;

		display: block;

		text-align: left;

	}



	ul.sub-menu>li>a {

		font-size: 0.7222rem;

		font-weight: 500;

		letter-spacing: 0.21px;

		text-transform: inherit;

		padding-top: 10px;

		padding-bottom: 10px;

		display: inline-block;

		position: relative;

		z-index: 1;

		transition: ease all 0.35s;

		opacity: 1;

		text-align: left;

		padding-left: 8px;

		padding-right: 8px;

		color: #fff;

		text-transform: uppercase;

	}

}



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

	.form-search{
		width: 100%;
		right: 0;
		padding: 0 20px;
	}
	.form-search input{
		height: 48px;
	}
	.form-search.active{
		top: 90%;
	}
	#searchSP{
		display: inline-block !important;
	}

	.pNav ul{

		padding-left: 15px;

		padding-right: 15px;

	}

	.pNav ul li{

		padding-left: 8px;

		padding-right: 8px;

	}

	.abT,

	.arSha{

		padding-left: 3.7778rem;

		padding-right: 3.7778rem;

	}

	.arSha{

		padding-bottom: 3.7778rem;

		align-items: flex-start;

	}

	.arLeft{

		line-height: 140%;

	}

	.arRight ul li:not(:last-child){

		padding-bottom: 10px;

	}

	.abFullTxt{

		padding-left: 3.7778rem;

		padding-right: 3.7778rem;

		padding-top: 4.5556rem;

	}

	#areContent02 ul li:not(:last-child) {

		padding-right: 2.5556rem;

	}

	.iconNav {

		display: inline-block;

		float: right;

	}

	.container{

		max-width: 100% !important;

		padding-left: 20px;

		padding-right: 20px;

	}



	.hdNav ul.menu {

		display: none;

		position: absolute;

		top: 115px;

		left: 0;

		width: 100%;

		z-index: 99;

		background-color: rgb(0 0 91 / 100%);

		height: calc(100vh - 115px);

	}



	span.menuSearch {

		display: none;

	}



	.hdNav {

		/* position: relative; z-index: 1; */

		width: calc(100% - 180px);

		text-align: right;

	}



	.hdNav {

		display: block;

	}



	.hdNav ul.menu>li {

		float: left;

		width: 100%;

		text-align: center;

		padding-top: 28px;

		padding-bottom: 28px;

		padding-left: 0;

		padding-right: 0;

	}



	.hdNav ul.menu>li>a {

		font-size: 24px;

		/* display: block; */

		padding-top: 0;

		padding-bottom: 0;

		padding-left: 0 !important;

		padding-right: 0 !important;

		display: inline-block;

		vertical-align: middle;

		background: none !important;

	}



	.hdNav ul.menu>li:last-child a {

		padding-left: 0;

		background-image: none;

	}



	.hdNav ul.menu>li>a::before {

		width: 15px;

		height: 15px;

		top: 4px;

		left: -20px;

	}



	.iClickSub {

		display: inline-block;

		vertical-align: middle;

		cursor: pointer;

		width: 50px;

		text-align: center;

		position: absolute;

		top: 0;

		right: 0;

		height: 100%;

		line-height: 100%;

		padding-top: 35px;

		padding-bottom: 28px;

	}



	.sub-menu.active {

		display: block;

		opacity: 1;

		position: relative;

		text-align: center;

		z-index: 1;

		left: unset;

		top: unset;

		padding-bottom: 0;

		max-width: 255px;

		width: 100%;

		margin-left: auto;

		margin-right: auto;

		padding-top: 25px;

	}



	.sub-menu.active li {

		text-align: center;

		float: left;

		width: 100%;

	}



	.sub-menu.active li a {

		font-size: 15px;

		pointer-events: all;

		text-align: center;

		border-bottom: 1px dotted #fff;

		display: block;

		padding-top: 15px;

		padding-bottom: 15px;

		transition: ease all 0.35s;

		color: #fff;

	}



	.sub-menu.active li a:hover {

		opacity: 0.75;

	}



	.sub-menu.active li:last-child a {

		border: 0;

	}



	.ft01R {

		border: 0;

	}



	.ho02Full table tr td ul li input[type=submit] {

		width: 100%;

		height: 45px;

	}



	.hdRows01 {

		padding-bottom: 36px !important;

	}



	.scrollId {

		display: none;

	}

	#slCt .slImg img{

		height: 40vh;

	}

	.slInfo a {

		/* position: relative;

		z-index: 1;

		top: unset;

		right: unset;

		transform: none;

		margin-top: 10px; */

		left: 0;

		right: unset;

		top: unset;

		transform: none;

		bottom: -2.5vh;

	}



	.slInfo {

		height: auto;

		max-height: none;

		padding-left: 0;

		max-width: 102%;

		width: 102%;

		padding-right: 1%;

		bottom: 7vh;

		padding-top: 2vh;

		padding-bottom: 5vh;

	}



	.slInfo p{

		max-width: 100%;

		height: 50px;

		overflow: hidden;

	}



	.slick-dots {

		bottom: 22vh;

		left: 0;

	}



	.slick-dots li {

		/* width: 30px;

		height: 3px; */

	}



	.ft01R02Nav {

		display: none;

	}



	.ft01R02Info {

		text-align: center;

		width: 100%;

	}



	.ftRows01 .cont {

		display: -webkit-box;

		display: -moz-box;

		display: -ms-flexbox;

		display: -webkit-flex;

		display: flex;

		flex-wrap: wrap;

		align-items: stretch

	}



	.ft01R {

		width: 100%;

	}



	.ft01R02 {

		width: 100%;

	}

	#pCt{

		padding-top: 0;

	}

	.ctContent02 table tr td ul li:last-child{

		margin-top: 10px;

	}

	.ctContent02{

		margin-top: 8vw;

		margin-bottom: 8vw;

	}

}

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

	#areContent02 ul li{

		display: block;

	}

	#areContent02 ul li:not(:last-child){

		padding-right: 0;

		padding-bottom: 30px;

	}

}

@media screen and (min-width: 768px) {

	#co6p{

		padding-right: 0;

	}

}

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

	.hdRows01{

		padding-top: 0;

	}

	.logo img ,

	.ft01RLeft img{

		width: 120px;

	}

	.ft01RRight h2{

		border-bottom: 1px solid rgba(255, 255, 255, 0.5);

	}



	.toggle-btn .bar {

		width: 25px;

		height: 1px;

	}



	#toggle:checked+label.toggle-btn .bar:nth-child(1) {

		transform: translateY(10px) rotate(45deg);

	}



	.abFullTxt blockquote{

		padding-left: 0;

	}

	.pNav ul li{

		padding-left: 10px;

		padding-right: 10px;

	}

	.abFullTxt blockquote::before{

		display: none;

	}

	.pNav ul{

		width: 1000px;

	}

	#posD.pNav{

		overflow: hidden;

	}

	#posD.pNav ul{

		width: 100%;

	}

	.pNav{

		overflow-x: scroll;

	}

	.col-sm-6{

		width: 100%;

	}

	#pBanner{

		height: 500px;

	}

	.abFullTxt .col-sm-6:not(:first-child){

		margin-top: 5.333vw;

	}

	#areContent01 .ho01Rows{

		padding-bottom: 2.7778rem;

	}

	#areContent02{

		padding-top: 3.3333rem;

		padding-bottom: 3.3333rem;

	}

	.sl03R{

		display: block;

		padding-top: 35.333vw;

		

	}

	.sl03Left{

		width: 100%;

	}

	.sl03Right{

		width: 100%;

	}

	.element{

		display: none;

	}

	/* .slInfo {

		max-width: 100%;

		width: 100%;

		font-size: 12px;

		padding-left: 15px;

		padding-right: 15px;

	}



	.slInfo p {

		white-space: nowrap;

		overflow: hidden;

		text-overflow: ellipsis;

	} */



	#homeContent02 table tr td {

		width: 100% !important;

		float: left;

		padding: 10px 0 !important;

	}



	#homeContent02 {

		padding-bottom: 8vw;

	}



	#homeContent01 {

		padding-top: 8vw;

		padding-bottom: 8vw;

	}



	.ho01Rows {

		margin-top: 8vw;

	}



	.ho01Item {

		margin-bottom: 40px!important;

		padding-left: 20px;

		padding-right: 20px;

		width: 100%;

		margin-right: 0;

	}



	.ho02Full table tr td ul li input[type=submit] {

		margin-top: 15px;

	}



	.ho01Item:last-child {

		margin-bottom: 0 !important;

	}



	#hoContent02 {

		margin-top: 15.645vw;

	}



	html {

		font-size: 14px;

	}



	.sl03Left {

		width: 100%;

		margin-right: 0;

		margin-bottom: 15px;

	}



	.sl03Right {

		width: 100%;

		padding-top: 0;

	}



	.slTop {

		padding-left: 0;

		padding-right: 0;

		overflow: hidden;

	}

	#slideTop .container{

		padding-left: 0;

		padding-right: 0;

	}

	.slImg{

		/* padding-left: 20px;

		padding-right: 20px; */

		margin-left: 20px;

		margin-right: 20px;

	}

	#slideTop .slide-item{

		padding-bottom: 10vh;

	}

	.slInfo{

		max-width: 100%;

		width: 100%;

		padding-right: 20px;

		padding-left: 20px;

	}

	.slick-dots{

		left: 20px;

	}

	

	.sl03Left img {

		height: auto;

	}



	.sl03Txt {

		display: none;

	}



	.slTop .slide-item a {

		width: 150px;

		height: 45px;

		line-height: 45px;

		font-size: 14px;

		left: 20px;

		bottom: -3.5vh;

	}

	.slick-dots{

		bottom: 28vh;

	}



	.arTxt{

		max-width: 100%;

		font-size: 14px;

		height: 80px;

	}

	/* .slick-dots {

		bottom: -40px;

		left: 50%;

		transform: translateX(-50%);

		right: unset;

		display: none !important;

	}

 */





	span.slImg img {

		max-width: 100% !important;

	}







	.selectTheme span {

		padding-left: 20px;

		font-size: 14px;

	}



	.ho02Full table tr td {

		padding-top: 10px;

		padding-bottom: 10px;

	}



	.ho02Full table tr td:last-child {

		padding-left: 15px;

	}



	.ho02Full table tr td:first-child {

		padding-right: 15px;

	}



	.ho02Full table tr td {}



	.ho02Full {

		padding-left: 0;

		padding-right: 0;

	}



	.ttStyle01 {

		padding-left: 0;

	}



	/* #slideTop{ margin-top: 30px; } */

	.loading-text {

		font-size: 32px;

	}



	.pageTop {

		display: inline-block;

		right: -42px;

		font-size: 11px;

	}



	#slideTop .slide-item img {

		max-width: 100%;

		width: 100%;

	}



	.slInfo h2 {

		font-size: 20px;

	}



	.pageTop::after {

		left: 1px;

		height: 1px;

		bottom: 4px;

	}



	.pageTop::before {

		left: -8px;

	}

	#co6p{

		position: relative;

	}

	.dxC{

		height: auto;

		padding-top: 8vw;

	}

	.dxC iframe{

		height: 66.667vw;

	}

	.ctContent02 h2{

		margin-bottom: 20px;

	}

	.ctContent02 table tr td ul li{

		display: block;

		margin-right: 0 !important;

		width: 100%;

	}

	.ctContent02 table tr td ul{

		display: -webkit-box;

		display: -moz-box;

		display: -ms-flexbox;

		display: -webkit-flex;

		display: flex;

		flex-wrap: wrap;

		align-items: stretch

	}

	.ctContent02 table tr td ul li:first-child{

		order: 1;

	}

	.ctContent02 table tr td ul li:last-child{

		order: 0;

		margin-top: 0;

		margin-bottom: 20px;

	}

	.news .col-sm-8,

	.news .col-sm-4{

		width: 100%;

		padding-left: 0;

		padding-right: 0;

	}

	.nItem{

		margin-bottom: 13.333vw;

	}

	.nINo{

		padding: 4vw;

	}

	.dxC table tr td p{

		max-width: 100%;

	}

}



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

	#pBanner {

		height: 430px;

	}

	.ho01Item {

		width: 100%;

		margin-right: 0;

		padding-top: 30px;

		padding-bottom: 30px;

	}



	.ho01Item h2 {

		padding-bottom: 15px;

	}



	.ho02Full p {

		max-width: 100%;

	}



	.ho02Full p br {

		display: none;

	}



	.ho02Full table {

		margin-top: 25px;

	}



	.ho02Full table tr td {

		float: left;

		width: 100%;

		padding: 8px 0 !important;

	}



	.ho02Full table tr td input,

	.ho02Full table tr td select {

		height: 45px;

		padding: 0 15px;

	}



	.ho02Full table tr td select {

		background-position: center right 15px;

	}



	.ttStyle01 {

		font-size: 32px;

		padding-right: 0;

		background-image: none;

	}



	.ho01Item h2 {

		padding-right: 0;

		background-image: none;

	}



	.ho02Full table tr td ul li input[type=checkbox] {

		width: 15px;

		height: 15px;

	}



	.ho02Full table tr td textarea {

		padding: 15px;

	}



	.ft01R {

		padding-top: 30px;

		padding-bottom: 30px;

	}



	/* .ft01R{ display: block; } */

	.ft01Left {

		width: 100%;

		text-align: center;

	}



	.ft01Right {

		width: 100%;

		text-align: center;

		font-size: 14px;

		margin-top: 30px;

		line-height: 160%;

	}



	/* .pageTop{ right: 15px; } */

	.pageTop img {

		width: 30px;

	}



	.ho01Item h3 {

		padding-right: 0;

		background-image: none;

	}



	.ho01Item h3::before {

		display: none;

	}



	#homeContent01 h2,

	#areContent02 h2 {

		font-size: 35px;

	}

	#areContent02 ul li a{

		font-family: 'silkamedium';

		/* width: 17.0556rem;

		height: 4.5556rem; */

		width: 60%;

		height: 50px;

		padding: 0;

		border-radius: 0;

		font-size: 1.1667rem;

		font-weight: 500;

		font-stretch: normal;

		font-style: normal;

		line-height: normal;

		letter-spacing: 0.24px;

		opacity: 1;

		border: 1px solid #fff;

	}

	#homeContent01 h2::before,

	#homeContent02 h2::before,

	#areContent02 h2::before {

		height: 2px;

		width: 20%;

	}



	#homeContent02 h2 {

		font-size: 35px;

	}



	.cp {

		display: inline-block;

	}



	.ftRows02 {

		line-height: 160%;

	}



	#homeContent02 table tr td ul li input[type=checkbox] {

		width: 15px;

		height: 15px;

	}



	#homeContent02 table tr td ul li label {

		padding-left: 15px;

	}



	#homeContent02 table tr td input {

		height: 45px;

		padding: 0 15px;

	}



	#homeContent02 table tr td textarea {

		padding: 15px;

	}



	#homeContent02 table tr td select {

		height: 45px;

		padding: 0 15px;

		background-position: center right 15px;

	}

	.ctIntro{

		font-size: 14px;

	}

	#pCt{

		padding-top: 30%;

	}

	.ctContent02 h2{

		font-size: 35px;

		padding-bottom: 15px;

	}

	.ctContent02 h2::before{

		height: 2px;

		width: 20%;

	}

	.ctContent02 table tr td input{

		height: 45px;

    	padding: 0 15px;

	}

	.ctContent02 table tr td textarea{

		padding: 15px;

	}

	.ctContent02 table tr td ul li input[type="checkbox"]{

		width: 15px;

		height: 15px;

	}

	.ctContent02 table tr td ul li label{

		padding-left: 15px;

		margin-left: 0;

	}

	.dxC table tr td h3 span:first-child{

		width: 25px;

	}

	.dxC table tr td h3 span {

		width: calc(100% - 25px);

	}

	.dxC table tr td p,

	.dxC table tr td ul{

		padding-left: 25px;

	}

	.dxC table tr td ul li img {

		height: 16px;

	}

	

}



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

	#pBanner h2{

		font-size: 40px;

	}

	.abT, .arSha{

		padding-left: 30px;

		padding-right: 30px;

	}



	.abFullTxt{

		padding: 30px;

	}

	#aboutUs{

		padding-bottom: 0;

	}

	.ft01RLeft {

		width: 100%;

	}



	.ft01RRight {

		width: 100%;

		margin-top: 20px;

	}

	.psTt{

		margin-top: 0;

	}

	.ft01R {

		display: block;

	}



	.ft01RRight ul {

		display: inline-block;

	}



	.ft01RRight ul li {

		padding-right: 20px;

	}



	.ft01R02 {

		padding-top: 0;

	}



	.ft01R02Info {

		text-align: left;

	}

	.ho01Rows{

		padding-left: 0;

		padding-right: 0;

	}

}



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

	ul.hdLang::before {

		display: none;

	}

	.iClickSub{

		padding-top: 25px;

	}

	.hdRows01 {

		padding-bottom: 40px !important;

		justify-content: space-between;

	}



	.wrapHeader {

		padding-top: 10px;

	}



	.cont {

		padding-left: 15px;

		padding-right: 15px;

	}



	.hdRows01 ul.hdSo li:not(:first-child) {

		padding-left: 8px;

	}



	.menu {

		top: 128px !important;

		height: calc(100vh - 128px) !important;

		overflow-y: auto;

	}





	.hdNav ul.menu>li>a {

		font-size: 18px;

	}



	.hdNav ul.menu>li {

		padding-top: 20px;

		padding-bottom: 20px;

	}



	.hdNav ul.menu>li>a::before {

		width: 10px;

		height: 10px;

		top: 4px;

		left: -16px;

	}

}



@media screen and (max-height: 900px) {

	span.slImg img {

		max-width: 50%;

		width: 100%;

	}

}



@media screen and (max-width: 1440px),

screen and (max-height: 900px) {

	.sl03Txt {

		padding-top: 2.556vw;

	}

}