@charset "UTF-8";

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,body{	height:100%;}
html{
	font-size:62.5%;
    overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family:"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: justify;
	color:#4d4d4d;
}

a {
	text-decoration: none;
	color:#ff0000;
	transition: all .3s;
}
a:hover {
  color: #fff;
  background-color: #043698;
}

*, *:before, *:after {
	box-sizing: border-box;
}

/* ------------------------------
    clearfix
------------------------------ */

.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */


/* ----------------------------------------------------------
*  基本設定
* ---------------------------------------------------------*/

.red {
	color: #ed1c24;
}
.sp{display: none!important;}


/* ------------------------------
    button
------------------------------ */

.btn {
	text-align: center;
    margin: 10px;
}

.btn a,
.btn button {
	position: relative;
	display: inline-block;
	font-size: 2.2rem;
	font-weight: bold;
	margin-top: 4px;
	padding: 20px 45px;
	letter-spacing: 0.25em;
	line-height: 1;
	z-index: 1;
}

.btn a,
.btn a:after,
.btn button,
.btn button:after  {
	display: inline-block;
	font-size: 2.2rem;
	font-weight: bold;
	padding: 14px 45px 18px 45px;
	border-radius: 28px;
	letter-spacing: 0.25em;
	line-height: 1;
}

.btn a:after ,.btn button:after{
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: -4px;
	left: 0;
}

.btn span {
	position: relative;
	background-repeat: no-repeat;
	background-position: right top 4px;
	background-size: auto 70%;
	padding-right: 1.25em;
	z-index: 5;
}

.btn-ye a {
	background-color: #f49c00;
}

.btn-ye a:after {
	background-color: #fcee21;
}

.btn-ye a span {
	color: #ed1c24;
	background-image: url(../img/common/icon_arrow01_pc.png);
}


.btn-or a,.btn-or button {
	background-color: #f15a24;
}

.btn-or a:after,.btn-or button:after {
	background-color: #f49c00;
}

.btn-or a span,.btn-or button span {
	color: #fff;
}

.btn-bl a,.btn-bl button {
	background-color: #007382;
}

.btn-bl a:after,.btn-bl button:after{
	background-color: #00aac8;
}

.btn-bl a span,.btn-bl button span {
	color: #fff;
	background-image: url(../img/common/icon_arrow02.png);
}

.btn-dbl a {
	background-color: #043698;
}

.btn-dbl a:after {
	background-color: #0071bc;
}

.btn-dbl a span {
	color: #fff;
	background-image: url(../img/common/icon_arrow02.png);
}


.btn-gr button {
	background-color: #666666;
}

.btn-gr button:after {
	background-color: #999999
}

.btn-gr button span {
	color: #fff;
}

/* ----------------------------------------------------------
*  基本レイアウト
* ---------------------------------------------------------*/

.wrapper {
	width: 100%;
	min-width: 900px;
	margin: 0 auto;
}

.inner {
	display: block;
	width: 800px;
	margin: 0 auto;
}


h2 {
	color: #000;
	background-color: #f49c00;
	font-size: 3rem;
	font-weight: bold;
	padding: 30px 0;
	text-align: center;
}
h2.new {
	padding: 7px 0 3px;
}
h2.ul{
	border-bottom: 2px solid #000;
}
h2.blue{
	color: #fff;
	background-color: #043698;
}
h2.normal{
	color: #f49c00;
	background-color: transparent;
}

h2.stop{
	color: #000;
	background-color: transparent;
	padding: 7px 0 3px;
}

h2 .small{
	font-size: 2rem;
	vertical-align: middle;
}

/* ------------------------------
    header
------------------------------ */

.header {
	width: 100%;
	background-color: #043698;
	padding: 30px 0;
}

.header .inner {
	width: 850px;
}

.header .logo {
	width: 40%;
	float: left;
	font-size: 2.5rem;
	font-weight: bold;
}

.header .logo a {
	color: #fff;
}

.global-nav {
	width: 60%;
	float: right;
}

.global-nav ul {
	font-size: 0;
}

.global-nav ul li {
	display: inline-block;
	font-size: 1.5rem;
	padding-left: 22px;
	line-height: 2.5rem;
}

.global-nav ul li a {
	color: #fff;
	text-align: center;
}

.global-nav ul li a:hover{
	text-decoration: underline;
}

/* ------------------------------
    footer
------------------------------ */

.footer {
	border-top: 12px solid #043698;
}

.footer .inner {
	position: relative;
	width: 850px;
	padding: 15px 0;
}

.footer .contents {
	box-shadow: 1px 1px 4px 0 rgba(0,0,0,0.2);
}

.footer .contents p {
	font-size: 1.4rem;
	line-height: 1.5;
}

.footer .contents .catch {
	font-size: 2rem;
	margin-bottom: 14px;
}

.footer .contents .contact-info {
	font-size: 1.7rem;
}

.footer .contents .contact-info .tel {
	font-size: 2.8rem;
	vertical-align: middle;
}

.footer .contents .contact-info a{
	color: #ed1c24;
}

.footer .contents .contact-info .tel:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/common/icon_phone.png) no-repeat center center;
	margin: 0 4px;
}

.footer .contents .logo,
.footer .contents .footer-block-l {
	display: inline-block;
	vertical-align: middle;
}

.footer .contents .logo{
	width: 168px;
}

.footer .contents .logo img{
	width: 168px;
}

.footer .contents .footer-block-l {
	margin-left: 24px;
}

.footer .privacy-mark {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -48px;
}

.footer .copyright {
	color: #999;
	font-size: 1.1rem;
	text-align: center;
	padding: 14px 0 14px;
}
.foot_menu{
	display: none;
}



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


	img{max-width: 100%;}

	.inner{
		width: 94%!important;
	}
	.wrapper{
		min-width: 100%;
	}

	.pc{display: none!important;}
	.sp{display: block!important;}

	h2 {
		padding: 5% 0 3%;
		font-size: 1.7rem;
		line-height: 1.5;
		letter-spacing: -0.05em;
	}

	h2.new {
		padding: 3% 0 0%;
	}

	h2 .small{
		font-size: 1.5rem;
		vertical-align: middle;
	}


	/* ------------------------------
	    button
	------------------------------ */
	.btn a, .btn a:after {
		display: block;
		font-size: 2rem;
		font-weight: bold;
		padding: 14px 5px 18px 5px;
		border-radius: 28px;
		letter-spacing: 0.1em;
		line-height: 1;
	}

	.btn-ye a span {
		color: #ed1c24;
		background-image: url(../img/common/icon_arrow01_sp.png);
		background-size: 13px;
	}




	/* --------------------------------------------------------
	*  header
	* ---------------------------------------------------------*/

	.header {
		width: 100%;
		background-color: #043698;
		padding: 0;
	}

	.header .inner {
		padding: 18px 0 17px;
	}

	.header .logo {
	 	width: calc(100% - 40px);
		float: left;
		font-size: 1.9rem;
		font-weight: bold;
	}

	.header .global-nav{
		display: none;
		position: absolute;
		z-index: 999;
		top: 54px;
		left: 0;
		width: 100%;
		background-color: #043698;
	}

	.header .global-nav ul li{
		display: block;
		float: none;
		border-top: 1px solid #fff;
		padding-left: 3%;
		font-size: 1.2rem;
	}

	.header .global-nav ul li:last-child{
		border-bottom: 1px solid #fff;
	}

	.header .global-nav ul li a{
		padding: 10px 0;
		display: block;
		text-align: left;
		position: relative;
	}

	.header .global-nav ul li a:after{
		content: '';
		position: absolute;
		top: 50%;
		margin-top: -4px;
		right: 3%;
		width: 8px;
		height: 8px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-o-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.header .toggle{
		width: 40px;
		height: 30px;
		top: 15px;
		right: 3%;
		position: absolute;
		cursor: pointer;
		overflow: hidden;
		z-index: 99;
	}

	.header .toggle span{
		width: 40px;
		height: 3px;
		background-color: #fff;
		position:absolute;
	}

	.header .toggle span:nth-child(1){
		top:0px;
	}

	.header .toggle span:nth-child(2){
		top: 10px;
	}

	.header .toggle span:nth-child(3){
		top: 20px;
	}

	.header .toggle span{
		transition: all 0.5s ease-out;
		-o-transition: all 0.5s ease-out;
		-moz-transition: all 0.5s ease-out;
		-webkit-transition: all 0.5s ease-out;
		-ms-transition: all 0.5s ease-out;
	}

	.header .toggle.action span:nth-child(1){
		top: 14px;
		-o-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.header .toggle.action span:nth-child(2){
		background-color:rgba(255,255,255,0);
	}

	.header .toggle.action span:nth-child(3){
		top: 14px;
		-o-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}




	/* --------------------------------------------------------
	*  footer
	* ---------------------------------------------------------*/

	.footer {
		border-top: 3px solid #043698;
	}

	.footer .inner {
		padding: 10% 0 8%;
	}

	.footer .contents {
		box-shadow: none;
	}

	.footer .contents p {
		font-size: 1.2rem;
		line-height: 1.5;
		text-align: center;
	}

	.footer .contents .catch {
		font-size: 1.7rem;
		text-align: center;
		font-weight: bold;
		margin-bottom: 14px;
	}

	.footer .contents .logo, .footer .contents .footer-block-l {
		display: block;
		text-align: center;
		margin: auto;
	}

	.footer .contents .logo{
		width: 55%;
		margin: 8% auto 0;
	}

	.footer .privacy-mark{
		position: static;
		text-align: center;
		margin-top: 8%;
	}

	.footer .contact-info{
		text-align: center;
		font-weight: bold;
		margin-top: 8%;
		margin-bottom: 8%;
	}

	.footer .contact-info span.sp{
		display: inline!important;
		font-size: 2.4rem;
		vertical-align: middle;
	}

	.footer .contents .contact-info .tel:before{
		display: none;
	}

	.footer .contents .contact-info .tel {
		font-size: 2.4rem;
		vertical-align: middle;
	}

	.footer .copyright {
		font-size: 1.2rem;
		padding: 5% 0 4%;
	}
	
	.foot_menu{
		display: inherit;
		position: fixed;
		bottom: -1px;
		left: 0;
		z-index: 999;
	}
	.foot_menu ul{
		display: flex;
	}


}