﻿@charset "utf-8";
/* CSS Document */

@import url(layout.css);
@import url(font-awesome.min.css);


* {
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
}

/*----------------------------------------
共通項目は最下部▼
-----------------------------------------*/



/*====================================
PC版
=====================================*/
@media print, screen and (min-width: 768px) {

.pc_box {
	margin: 0;
	padding: 0;
	position: relative;
}

.pc_box:after {
	content: "";
	display: block;
	clear: both;
}

.sp_box {
	display: none;
}

.pc_non {
	display: none;
}


body {
	font-size: 1rem;
    /*font-size: 16px;*/
	line-height: 1.76;
    margin: 80px 0 0 0;
    padding: 0;
}



/*-------------------------------------------
　レイアウト
--------------------------------------------*/
.container {
    width: 100%;
    min-width: 1240px;
    padding: 0;
    margin: 0 auto;
    /*background: #EEE;*/
}


.wrap {
	position: relative;
	width: 100%;
    max-width: 1240px;
	padding: 0 20px;
    margin: 0 auto;
	/*background: #DDD;*/
}


.row {
    width: 100%;
    position: relative;
    margin: 0;
    /*background-color: #CCC;*/
}


.row92 {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 4.1667%;
    /*background-color: #CCC;*/
}



.col20_l {
    float: left;
    width: 18%;
}


.col30_l {
    float: left;
    width: 28%;
}

.col40_l {
    float: left;
    width: 38%;
}

.col50_l {
    float: left;
    width: 48%;
}

.col60_l {
    float: left;
    width: 58%;
}

.col70_l {
    float: left;
    width: 68%;
}

.col80_l {
    float: left;
    width: 78%;
}

.col20_r {
    width: 18%;
    float: right;
}

.col30_r {
    width: 28%;
    float: right;
}

.col40_r {
    width: 38%;
    float: right;
}

.col50_r {
    width: 48%;
    float: right;
}

.col60_r {
    width: 58%;
    float: right;
}

.col70_r {
    width: 68%;
    float: right;
}

.col80_r {
    width: 78%;
    float: right;
}

.col_half_l {
    float: left;
    width: 48%;
}

.col_half_r {
    float: right;
    width: 48%;
}


.row:after {
	content: "";
	display: block;
	clear: both;
}



.row92:after {
    content: "";
	display: block;
	clear: both;
}



.wrap:after {
    content: "";
	display: block;
	clear: both;
}


.column01 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #E0E3C7;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column02 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #F5EFE0;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column03 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #E5F9FD;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column99 {
    width: 100%;
    margin: 0.5rem auto;
    padding: 1rem 1.4rem;
    background: #F3F3F3;
    border: 1px solid #999;
    border-radius: 0.4rem;
}







/*--------------------------------------------
　画像
---------------------------------------------*/
img {
	border: none;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	/*width: 100%;
	height: auto;*/
}

.img_auto {
    width: 100%;
    height: auto;
}




/*--------------------------------------------
　タイトル・テキスト
---------------------------------------------*/
h1, h2, h3, h4, h5 {
    line-height: 1.2;
    position: relative;
    margin: 0;
}


h1 {
    width: 100%;
    font-size: 32px;
    text-shadow: 1.414px 1.414px 0px #f8f8f8;
    padding-left: 10px;
}
.title-obi{
	background-image: url(../common/main-title.png);
    background-repeat: repeat-y;
    height: 24px;
    margin-top: -20px;
}



h2 {
    width: 100%;
    font-size: 24px;
    /*font-weight: bold; */
    border-top: 4px solid #007598;
    border-bottom: 1px solid #a5d6e0;
    padding: 8px 0 7px 0;
    margin-bottom: 2px;
    font-weight: normal;
}

h2::before{
	content: '';
	background-image: url(../common/sub-title.png);
	background-repeat: repeat;
	width: 15px;
	padding-left: 15px;
	margin: 10px 10px 5px 3px;
	height: 20px;
}



h3 {
    width: 100%;
    font-size: 20px;

}


h4 {
    color: #1D64A9;
    font-size: 18px;
    font-weight: bold;

}

.h_nom {
    margin-bottom: 0.14rem;
}



.txt_bottom {
    position: relative;
}

#bottom span {
    position: absolute;
    top: 50%;
}



/*--------------------------------------------
　ヘッダー
--------------------------------------------*/
.header_area {
    width: 100%;
    min-width: 1240px;
    position: fixed;
    top: 0;
    z-index: 9999;
    border-top: 10px solid #007598;
	background-color: #7EC4D3;
	background-image: url("../common/slash.png");
}

.header {
	width: 100%;
    max-width: 1240px;
    padding: 0 20px;
    margin: 0 auto;
    position: relative;
    /*background: #EF8D8E;*/
}


.header .head_logo {
    float: left;
	margin-top: 12px;
}

.header ul {
	float: right;
}

.header ul li {
	float: right;
	text-align: center;
	font-size: 1rem;
}

.header ul li a {
	display: block;
	padding: 1.6rem 1.24rem 1.6rem 1.24rem;
	transition: 0.5s;
}

.header ul li a:hover {
	color: #FFF;
	filter: drop-shadow(0 0 2px rgba(0,113,119,0.9));
	transition: 0.5s;
}


.header ul li.nav_rec a {
	display: block;
	width: 72px;
	height: 80px;
	text-align: center;
	color: #FFF;
	font-size: 0.75rem;
	background: #6591E3;
	padding: 10px 0 0 0;
	transition: 0.3s;
}

.header ul li.nav_rec a:hover {
	background: #3C73DB;
	filter: drop-shadow(0 0 0 rgba(0,0,0,0));
}

.header ul li.nav_rec a i {
	font-size: 2.74rem;
	color: #C1D3F4;
	margin-bottom: 4px;
}



/*-------------- プルダウン --------------*/
.dropmenu {
    *zoom: 1;
    padding: 0;
}

.dropmenu:before,
.dropmenu:after {
    content: "";
    display: table;
}


.dropmenu {
    width: 1190px;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}

.dropmenu li {
    position: relative;
    float: left;
    width: 170px;
    margin: 0;
    padding: 0;
    text-align: center;
    background: url("../common/nav_gradline.png") no-repeat left bottom;
}

.dropmenu li:last-child {
    background: url("../common/nav_gradline_last.png") no-repeat left bottom;
}

.nav_icon {
    position: absolute;
    top: -18px;
    left: 65px;
    z-index: 10;
}


.dropmenu li a {
  display: block;
  margin: 0;
  padding: 24px 0 6px 0;
  color: #FFF;
  transition: .5s;
}

.dropmenu li a:hover {
  background-color: rgba(0,0,0,0.2);
}

.dropmenu li ul {
  list-style: none;
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
}

.dropmenu li ul li {
  font-size: 0.785rem;
  background-image: none !important;
  margin-left: 1px;
}

.dropmenu li ul li a {
  display: block;
  width: 170px !important;
  height: 40px;
  padding: 10px 0 0 8px;
  border-top: 1px solid #CCC;
  text-align: left;
  background: rgba(50,115,177,0.8);
  background-image: none !important;
}

.dropmenu li ul li a:hover {
  background: rgba(50,115,177,0.9);
  background-image: none !important;
}

.dropmenu:after {
    content: "";
    display: block;
    clear: both;
}



/*------------ナビ-メイン（ドロップダウン）------------*/
#fade-in li ul {
  visibility: hidden;
  opacity: 0;
  transition: .5s;
}
#fade-in li:hover ul {
  visibility: visible;
  opacity: 1;
}
#fade-in li ul li a {
  visibility: hidden;
  opacity: 0;
  transition: .5s;
}
#fade-in li:hover ul li a {
  visibility: visible;
  opacity: 1;
}


.nav ul.main {
    padding: 0;
    background: url("../common/nav_dotline.png") repeat-y right top;
    /*background-color: red;*/
}

ul.main:before,
ul.main:after {
    content: "";
    display: table;
}

ul.main:after {
    clear: both;
}

.nav ul.main li {
    float: left;
    position: relative;
    /*width: 140px;*/
    width: 160px; /* 事業紹介ないときの幅 */
    margin: 0;
    text-align: center;
    line-height: 2.2;
}

.nav ul.main li a {
    display: block;
    margin: 0;
    padding: 4px 0 0 0;
    background-image: url("../common/nav_dotline.png");
    background-repeat: repeat-y;
    background-position: left top;
}


ul.main li ul {
  list-style: none;
  position: absolute;
  z-index: 9998;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #CCC;
}

ul.main li ul li {
  width: 210px !important;
  font-size: 14px;
  text-indent: 16px;
}

ul.main li ul li a {
  /*padding: 12px 0 10px 16px;*/
  border-top: 1px solid #CCC;
  background-image: none !important;
  background-color: rgba(255,255,255,0.8);
  text-align: left;
}


ul.main li:hover > a {
  /*background: yellow;*/
}

ul.main li a:hover {
    background-image: url("../common/nav_dotline.png");
    background-repeat: repeat-y;
    background-position: left top;
}


ul.main li ul li a:hover {
    background-color: #FFF;
}


.nav ul.main:after {
    content: "";
    display: block;
    clear: both;
}

.nav ul.sub:after {
    content: "";
    display: block;
    clear: both;
}

.header:after {
	content: "";
    display: block;
    clear: both;
}





/*------------------------------------------
　フッター
-------------------------------------------*/
.footer_area {
	width: 100%;
    min-width: 1240px;
    padding: 2rem 0;
	background-color: #7EC4D3;
	background-image: url("../common/slash.png");
}

.footer {
    width: 100%;
    max-width: 1240px;
    padding: 0 20px;
    margin: 0 auto;
}

.foot_add {
	float: left;
	width: 290px;
	margin-right: 240px;
	line-height: 1.6;
}

.foot_add_name {
	font-size: 1.375rem;
	padding-bottom: 1rem;
}

.foot_add_call {
	font-size: 1.4rem;
	font-weight: bold;
	padding-bottom: 1rem;
	width: 290px;
	text-align: center;
	color: #A62334;
	padding: 0.2rem 0 0 0;
	border: 1px solid #FFF;
	background: rgba(255,255,255,0.8);
	margin-top: 0.8rem;
}

.foot_add_call span {
	font-size: 1rem;
	font-weight: normal;
	vertical-align: middle;
}

.foot_link {
	display: inline;
	width: 530px;
}

.foot_link ul {
	float: left;
	margin-top: 3.4rem;
	padding-left: 0.5rem;
	padding-right: 4rem;
	border-left: 4px solid #007598;
	/*background: yellow;*/
}

.foot_link ul li {
	padding-bottom: 0.8rem;
	font-size: 0.875rem;
}

.foot_link ul li:last-child {
	padding-bottom: 0;
}

.foot_rec {
	width: 150px;
	float: left;
	margin-top: 3.4rem;
}

.foot_rec a {
	display: block;
	background: #6591E3;
	text-align: center;
	color: #FFF;
	font-size: 1.125rem;
	padding: 1rem 0 0.2rem 0;
	transition: 0.3s;
}

.foot_rec a i {
	font-size: 2.8rem;
	margin-bottom: 0.4rem;
	color: #C1D3F4;
}

.foot_rec a:hover {
	color: #FFF;
	background: #3C73DB;
	transition: 0.3s;
}



.footer:after {
	content: "";
	display: block;
	clear: both;
}

.copyright {
    width: 100%;
	min-width: 1240px;
	text-align: center;
    font-size: 0.75rem;
    padding: 0.56rem;
	background-color: #007598;
	background-image: url("../common/slash02.png");
	color: #FFF;
}


/*--------------------------------------
電話とメール
--------------------------------------*/
ul.sp_pam {
	display: none;
}

ul.sp_pam li {
	display: none;
}
ul.sp_pam li i {
	display: none;
}



ul.sp_pam:after {
	content: "";
	display: block;
	clear: both;
}

/*------------------------------------------
　　ページのトップへ
-------------------------------------------*/
.pagetop {
	display: none;
	position: fixed;
	bottom: 40px;
	right: 20px;
	z-index: 9999;
}

.pagetop a {
	display: block;
	width: 74px;
	height: auto;
	text-decoration: none;
	border: none;
	background: none;
	opacity: 0.6;
	transition: 0.5s;
}

.pagetop a:hover {
	display: block;
	width: 74px;
	height: auto;
	text-decoration: none;
	border: none;
	background: none;
	opacity: 1.0;
	transition: 0.5s;
}


/*----------------------------------------------
エラー表示
----------------------------------------------*/
.error {
    width: 100%;
    margin: 0 auto;
    border: 2px solid #DD4548;
    background: #FFFF33;
    border-radius: 4px;
    padding: 10px 20px;
}

.error p {
    font-size: 14px;
    line-height: 1.6;
    color: #C00;
}




}   /*  PC版ここまで  */






/*===================================
スマホ版
===================================*/
@media only screen and (max-width : 767.98px ) {


.sp_box {
	margin: 0;
	padding: 0;
	position: relative;
}

.sp_box:after {
	content: "";
	display: block;
	clear: both;
}

.pc_box {
	display: none;
}

.sp_non {
	display: none;
}


body {
	margin: 2vh 0 4.5rem 0;
    font-size: 1rem;
	/*font-size: 16px;*/
    /*font-size: 3.8vw;*/
	line-height: 1.74;
}


/*------------------------------------------------
　ヘッダー&ナビ
------------------------------------------------*/
#header {
	width: 100%;
	margin: 0 auto;
	padding: 0.4rem 3%;
	position: fixed;
	top: 0px;
	z-index: 9998;
    border-top: 8px solid #007598;
	background-color: #7EC4D3;
	background-image: url("../common/slash.png");
}

#header .sp_logo {
	float: left;
    width: 50%;
    margin: 0;
}

#header .sp_logo img {
	width: 100%;
    height: auto;
}


/*----------------------------------------
トグルナビ
----------------------------------------*/
#disable-layer {
	width: 100%;
	height: 100%;
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 998;
    background: rgba(0,0,0,0.5);
}


#header .open {
	float: right;
	width: 16%;
    font-weight: normal;
    line-height: 1.0;
	text-align: center;
	display: inline-block;
	color: #007598;
	text-decoration: none;
	cursor: pointer;
    margin-top: 0.2rem;
}

.open i {
	padding: 0.4vh 0 0 0;
	color: #333;
	font-size: 7vw;
    /*font-size: 240%;*/
    vertical-align: middle;
}


#header:after {
	content: "";
	display: block;
	clear: both;
}


#global-menu {
	margin: 4.2em 0 0 0;
	border-top: 1px solid #F0F0F0;
}

#global {
	width: 80%;
	height: 100%;
	line-height: 1.2;
	position: fixed;
	top: 0;
	left: 100%;
	z-index: 999;
	background: #FFF;
	overflow-y: auto;
}

#global a {
	color: #333;
	text-decoration: none;
}



#global-menu li {
	border-bottom: 1px solid #CCC;
}

#global-menu li ul li {
	/*border-bottom: 1px solid #CCC;*/
}



#global-menu li a {
	padding: 1em 0.8em;
	display: block;
	position: relative;
	border-bottom: none;
}

#global-menu > li > a:after {
	content: "\f054";
	margin-top: -7px;
	position: absolute;
	top: 50%;
	right: 10px;
	border-bottom: none;
    color: #007598;
}

#global-menu .children { /* サブメニューの項目 */
	background: #E3E3E3;
	/*border-top: 1px solid #CCC;*/
}

#global-menu .children li { /* サブメニューのライン */
	/*border-bottom: 1px solid #CCC;*/
	border: none;
}

#global-menu .children li .trigger {
	padding: 15px 10px;
	display: block;
	position: relative;
	cursor: pointer;
}

#global-menu .children li .trigger:after {
	content: "\f078";
	margin-top: -7px;
	position: absolute;
	top: 50%;
	right: 10px;
    color: #007598;
}

#global-menu .children li .trigger.active { /* サブメニュー開いた時の項目 */
	background: #CCC;
}

#global-menu .children li .trigger.active:after {
	content: "\f077";
	margin-top: -7px;
	position: absolute;
	top: 50%;
	right: 10px;
}

#global-menu .children li .target { /* サブメニュー開いた時 */
	background: #F3F3F3;
	display: none;
}


#global-menu .children li .target.active {
	display: block;
}

#global-menu .children li .target li {
	border-top: 1px solid #CCC;
}

#global-menu .children li .target li a:after {
	content: "\f054";
	margin-top: -7px;
	position: absolute;
	top: 50%;
	right: 10px;
	color: #F3F3F3;
	text-decoration: none;
}


#global-buttons a {
	color: #FFF;
}

#global-buttons .btn-1 {
	width: 48.5%;
	float: left;
}

#global-buttons .btn-2 {
	width: 48.5%;
	float: right;
}

#global-buttons .btn-1 a,
#global-buttons .btn-2 a {
	padding: 2px 10px;
	background: #000;
	border-radius: 10px;
	display: block;
	text-align: center;
	position: relative;
	z-index: 1;
	color: #CCC;
	text-decoration: none;
	font-size: 90%;
}


/*===========================================
transition
===========================================*/

#global,
#wrapper,
#global-menu,
.trigger,
.target,
.open {
	transition: all 0.5s ease;
}


/*===========================================
Font Awesome
===========================================*/

#global-menu > li > a:after,
#global-menu .children li a:after,
#global-menu .children li .trigger:after,
#global-menu .children li .target li a:after,
#global-pages li a:after {
	font-family: "FontAwesome";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	float: left;
	font-weight: normal;
	font-style: normal;
}

.target li a:before {
	content: "\f054";
	font-family: "FontAwesome";
	font: normal normal normal 14px/1 FontAwesome;
	padding-left: 18px;
	padding-right: 10px;
}

.target li a:after {
	color: #FFF;
}




/*-------------------------------------------
　レイアウト
--------------------------------------------*/
.container {
    width: 100%;
    padding: 0px;
    margin: 0 auto;
}



.wrap {
	position: relative;
	width: 96%;
	margin: 0 auto;
	padding: 0 2%;
	/*background: #C0D1FF;*/
}

.wrap .nopad {
    padding: 0;
}

.row {
    width: 100%;
    position: relative;
    padding-bottom: 2.4rem;
    margin: 0;
    /*background-color: #EEE;*/
}

.row96 {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 1% 2.4rem 1%;
    /*background-color: #DDD;*/
}

.row90 {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 1% 2.4rem 1%;
    /*background-color: #CCC;*/
}


.col20_l,
.col30_l,
.col40_l,
.col50_l,
.col60_l,
.col70_l,
.col80_l {
    width: 100%;
}

.col20_r,
.col30_r,
.col40_r,
.col50_r,
.col60_r,
.col70_r,
.col80_r {
    width: 100%;
}

.col_half_l {
    float: left;
    width: 48%;
}

.col_half_r {
    float: right;
    width: 48%;
}



.row:after,
.row96:after,
.row90:after,
.wrap:after {
	content: "";
	display: block;
	clear: both;
}


.column01 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #E0E3C7;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column02 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #F5EFE0;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column03 {
    width: 100%;
    margin: 1rem auto;
    padding: 1rem 1.4rem;
    background: #E5F9FD;
    border: 1px solid #999;
    border-radius: 0.4rem;
}

.column99 {
    width: 100%;
    margin: 0.5rem auto;
    padding: 1rem 1rem;
    background: #F3F3F3;
    border: 1px solid #999;
    border-radius: 0.4rem;
}




/*--------------------------------------------
　画像
---------------------------------------------*/
img {
	border: none;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	width: 100%;
	height: auto;
}




.img_60 {
    width: 60%;
    height: auto;
    margin: 0 20%;
}

.img_70 {
    width: 70%;
    height: auto;
    margin: 0 15%;
}

.img_80 {
    width: 80%;
    height: auto;
    margin: 0 10%;
}






/*--------------------------------------------
　タイトル・テキスト
---------------------------------------------*/
h1, h2, h3, h4, h5 {
    line-height: 1.28;
    position: relative;
    margin: 0;
}


h1 {
    width: 100%;
    font-size: 32px;
    text-shadow: 1.414px 1.414px 0px #f8f8f8;
    padding-left: 10px;
}
.title-obi{
	background-image: url(../common/main-title.png);
    background-repeat: repeat-y;
    height: 23px;
    margin-top: -20px;
}



h2 {
    width: 100%;
    font-size: 24px;
    /*font-weight: bold; */
    border-top: 4px solid #007598;
    border-bottom: 1px solid #a5d6e0;
    padding: 8px 0 7px 0;
    margin-bottom: 2px;
    font-weight: normal;
}

h2::before{
	content: '';
	background-image: url(../common/sub-title.png);
	background-repeat: repeat;
	width: 15px;
	padding-left: 15px;
	margin: 10px 10px 5px 3px;
	height: 20px;
}

/*
h2:before {
    content: "\f054";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 0.875rem;
	padding-right: 0.2rem;
	color: #968598;
}
*/


h3 {
    width: 100%;
    font-size: 1.25rem;
    font-weight: bold;
    margin-bottom: 16px;
    border-top: 3px solid #8BB7CD;
    background: #DCE9F0;
    padding: 0.4rem 0 0.2rem 14px;
    color: #333;
}





/*------------------------------------------
　フッター
-------------------------------------------*/
.footer_area {
	width: 100%;
    padding: 1.6rem 0 2.8rem 0;
    background-color: #7EC4D3;
	background-image: url("../common/slash.png");
}

.footer {
    width: 96%;
    padding: 0 2%;
    margin: 0 auto;
}

.foot_add {
	width: 100%;
	line-height: 1.6;
	text-align: center;
}

.foot_add_name {
	font-size: 1.65rem;
	padding-bottom: 1rem;
}

.foot_add_call {
	display: none;
}

.foot_add_call span {
	font-size: 1rem;
	font-weight: normal;
	vertical-align: middle;
}

.foot_link {
	width: 100%;
	margin-top: 2rem;
}

.foot_link ul {
	display: none;
}

.foot_link ul li {
	padding-bottom: 0.8rem;
	font-size: 0.875rem;
}

.foot_link ul li:last-child {
	padding-bottom: 0;
}

.foot_rec {
	width: 80%;
	margin: 0 auto;
}

.foot_rec a {
	display: block;
	background: #6591E3;
	color: #FFF;
	font-size: 1.5rem;
	padding: 0.6rem 0 0.3rem 0;
	text-align: center;
	text-indent: -4vw;
	transition: 0.3s;
}

.foot_rec a i {
	font-size: 2.2rem;
	color: #C1D3F4;
	margin-right: 6vw;
}

.foot_rec a:hover {
	color: #FFF;
	background: #3C73DB;
	transition: 0.3s;
}


.footer:after {
	content: "";
	display: block;
	clear: both;
}


.copyright {
    text-align: center;
    font-size: 0.75rem;
    padding: 0.56rem;
	background-color: #007598;
	background-image: url("../common/slash02.png");
	color: #FFF;
}


/*--------------------------------------
電話とメール
--------------------------------------*/
ul.sp_pam {
	width: 100%;
	position: fixed;
	bottom: 0;
	z-index: 999;
}

ul.sp_pam li {
	float: left;
	width: 49.79%;
	text-align: center;
}
ul.sp_pam li i {
	font-size: 2.4rem;
}


ul.sp_pam li:last-child {
	float: right;
}

ul.sp_pam li a {
	display: block;
	background: rgba(0,117,152,0.8);
	color: #FFF;
	padding: 0.8rem 0;
}

ul.sp_pam:after {
	content: "";
	display: block;
	clear: both;
}



/*------------------------------------------
　　ページのトップへ
-------------------------------------------*/
.pagetop {
	display: none;
}

.pagetop a {
	display: none;
}

.pagetop a:hover {
	display: none;
}


/*----------------------------------------------
エラー表示
----------------------------------------------*/
.error {
    width: 100%;
    margin: 0 auto;
    border: 2px solid #DD4548;
    background: #FFFF33;
    border-radius: 4px;
    padding: 8px 16px;
}

.error p {
    font-size: 90%;
    line-height: 1.6;
    color: #C00;
}





}  /*  スマホ版ここまで  */










/*---------------------------------------
　共通
---------------------------------------*/


input[type="button"],
input[type="submit"],
input[type="reset"] {
    -webkit-appearance: none;
}

#textarea,
#textfield {
    border-radius: 4px;
    border: 1px solid #999;
    padding: 0.32rem 0.4rem 0.2rem 0.4rem;
    font-size: 16px;
    font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
}



body {
    font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
}



p, ul, li, form {
	padding: 0;
	margin: 0;
	list-style: none;
}

dl, dt, dd {
    list-style: none;
    margin: 0;
    padding: 0;
}


a {
	color: #111;
	text-decoration: none;
}

a:hover {
	color: #000;
	text-decoration: none;
}

.page_link {
    width: 96%;
    margin: 0.4rem 2% 0 2%;
    line-height: 1.4;
}

.page_link a {
    display: block;
    padding: 0.4rem 1rem 0.2rem 0.6rem;
    background: #E4FAFF;
    border: 1px solid #999;
    border-radius: 50px;
    color: #0059C3;
}

.page_link a:hover {
    background: #CCF5FF;
}

.page_link a:before {
    content: "\f0a9";
	font-family: "FontAwesome";
	font: normal normal normal 1.4rem/1 FontAwesome;
    padding-right: 0.4rem;
    color: #006CCF;
}



.res {
	content: "";
	display: block;
	clear: both;
}

.blank05 {
	height: 0.5rem;
	margin: 0;
	padding: 0;
}


.blank10 {
	height: 1rem;
	margin: 0;
	padding: 0;
}

.blank15 {
	height: 1.5rem;
	margin: 0;
	padding: 0;
}


.blank20 {
	height: 2rem;
	margin: 0;
	padding: 0;
}

.blank25 {
	height: 2.5rem;
	margin: 0;
	padding: 0;
}

.blank30 {
	height: 3rem;
	margin: 0;
	padding: 0;
}

.blank40 {
	height: 4rem;
	margin: 0;
	padding: 0;
}


.blank50 {
	height: 5rem;
	margin: 0;
	padding: 0;
}

.blank60 {
	height: 6rem;
	margin: 0;
	padding: 0;
}

.blank70 {
	height: 7rem;
	margin: 0;
	padding: 0;
}


.blank80 {
	height: 8rem;
	margin: 0;
	padding: 0;
}

.blank100 {
	height: 10rem;
	margin: 0;
	padding: 0;
}




table {
	border-collapse: collapse;
}


span,
div {
	margin: 0;
	padding: 0;
}

.line_999 {
	width: 100%;
	height: 1px;
	background: #999;
	margin: 24px 0;
}


.line_000 {
	width: 100%;
	height: 1px;
	background: #000;
	margin: 40px 0;
}


.line_top_000 {
    border-top: 1px solid #000;
}

.line_top_999 {
    border-top: 1px solid #999;
}

.line_top_ccc {
    border-top: 1px solid #CCC;
}

.line_top_fff {
    border-top: 1px solid #FFF;
}

.line_btm_000 {
    border-bottom: 1px solid #000;
}

.line_btm_999 {
    border-bottom: 1px solid #999;
}

.line_btm_ccc {
    border-bottom: 1px solid #CCC;
}

.line_btm_fff {
    border-bottom: 1px solid #FFF;
}


/*------------ テキスト -------------*/

.txt_center {
	text-align: center;
}

.txt_left {
	text-align: left;
}

.txt_right {
	text-align: right;
}

.txt_just {
	text-align: justify;
}

.txt_black {
    color: #000;
}

.txt_red {
	color: #C00;
}

.txt_blue {
	color: #00A5E0;
}

.txt_strong {
	font-weight: bold;
}

.txt_normal {
	font-weight: normal;
}


/*-- フォントサイズ16pxを基準 --*/

.txt_08 {
	font-size: 0.5rem;
}

.txt_10 {
	font-size: 0.625rem;
}

.txt_12 {
	font-size: 0.75rem;
}

.txt_13 {
	font-size: 0.8125rem;
}

.txt_14 {
	font-size: 0.875rem;
}

.txt_16 {
	font-size: 1rem;
}

.txt_18 {
	font-size: 1.125rem;
}

.txt_20 {
	font-size: 1.25rem;
}

.txt_22 {
	font-size: 1.375rem;
}

.txt_24 {
	font-size: 1.5rem;
}

.txt_28 {
	font-size: 1.75rem;
}

.txt_32 {
	font-size: 2rem;
}

.txt_vm {
    vertical-align: middle;
}

.txt_ind01 {
    padding-left: 1rem;
}

.txt_ind02 {
    padding-left: 2rem;
}

.txt_ind03 {
    padding-left: 3rem;
}

.txt_idt-01 {
	text-indent: -1rem;
}

.txt_idt-02 {
	text-indent: -2rem;
}

.txt_idt-03 {
	text-indent: -3rem;
}

.txt_lh14 {
	line-height: 1.4;
}

.txt_lh16 {
	line-height: 1.6;
}

.txt_lh18 {
	line-height: 1.8;
}

.txt_lh20 {
	line-height: 2.0;
}

.txt_cap12 {
    font-size: 0.75rem;
    padding-bottom: 0.5rem;
}

.txt_cap14 {
    font-size: 0.875rem;
    padding-bottom: 0.7rem
}


/*-------- パディング --------*/
.p_top05 {
	padding-top: 0.5rem;
}

.p_top10 {
	padding-top: 1rem;
}

.p_top15 {
	padding-top: 1.5rem;
}

.p_top20 {
	padding-top: 2rem;
}

.p_top25 {
	padding-top: 2.5rem;
}

.p_top30 {
	padding-top: 3rem;
}

.p_top40 {
	padding-top: 4rem;
}

.p_top50 {
	padding-top: 5rem;
}

.p_top60 {
	padding-top: 6rem;
}

.p_top70 {
	padding-top: 7rem;
}

.p_top80 {
	padding-top: 8rem;
}



.p_right05 {
	padding-right: 0.5rem;
}

.p_right10 {
	padding-right: 1rem;
}

.p_right15 {
	padding-right: 1.5rem;
}

.p_right20 {
	padding-right: 2rem;
}

.p_right25 {
	padding-right: 2.5rem;
}

.p_right30 {
	padding-right: 3rem;
}

.p_right40 {
	padding-right: 4rem;
}

.p_right50 {
	padding-right: 5rem;
}



.p_btm05 {
	padding-bottom: 0.5rem;
}

.p_btm10 {
	padding-bottom: 1rem;
}

.p_btm15 {
	padding-bottom: 1.5rem;
}

.p_btm20 {
	padding-bottom: 2rem;
}

.p_btm25 {
	padding-bottom: 2.5rem;
}

.p_btm30 {
	padding-bottom: 3rem;
}

.p_btm40 {
	padding-bottom: 4rem;
}

.p_btm50 {
	padding-bottom: 5rem;
}

.p_btm60 {
	padding-bottom: 6rem;
}

.p_btm70 {
	padding-bottom: 7rem;
}

.p_btm80 {
	padding-bottom: 8rem;
}

.p_btm90 {
	padding-bottom: 9rem;
}

.p_btm100 {
	padding-bottom: 10rem;
}




.p_left05 {
	padding-left: 0.5rem;
}

.p_left10 {
	padding-left: 1rem;
}

.p_left15 {
	padding-left: 1.5rem;
}

.p_left20 {
	padding-left: 2rem;
}

.p_left25 {
	padding-left: 2.5rem;
}

.p_left30 {
	padding-left: 3rem;
}

.p_left40 {
	padding-left: 4rem;
}

.p_left50 {
	padding-left: 5rem;
}

.p_left60 {
	padding-left: 6rem;
}

.p_left70 {
	padding-left: 7rem;
}

.p_left80 {
	padding-left: 8rem;
}

.p_left90 {
	padding-left: 9rem;
}

.p_left100 {
	padding-left: 10rem;
}


/*------ 画像 ------*/
.img_center {
	width: 100%;
	text-align: center;
}

.img_right {
	float: right;
}

.img_left {
	float: left;
}



.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 180px;
}

.sticky_box {
	margin: 0 auto;
    display: flex;
    justify-content: space-between;
	/*background: #EEE;*/
}

.sticky_box:after {
	content: "";
    display: block;
    clear: both;
}



