@charset "utf-8";
/* Simple fluid media
Note: Fluid media requires that you remove the media's height and width attributes from the HTML
http://www.alistapart.com/articles/fluid-images/ 
*/
img, object, embed, video {
max-width: 100%;
}

img {
image-rendering: -webkit-optimize-contrast;
}

/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
width:100%;
}
.gridContainer {
overflow: hidden;
}
.fluid {
clear: both;
margin-left: 0;
width: 100%;
float: left;
display: block;
}
.fluidList {
list-style:none;
list-style-image:none;
margin:0;
padding:0;        
}


.totop {
position: fixed;
bottom: 30px;
width: 54px;
height: 54px;
right: 10px;
display: block;
z-index: 200;
}

/* Mobile Layout: 480px and below. */


.en { font-family: 'Open Sans', sans-serif; }
.jp { font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", ヒラギノ角ゴ W3, "游ゴシック体", "Yu Gothic", "YuGothic", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, Roboto, "Droid Sans", sans-serif;
}

/* ホバー時に画像をズームする */
.HoverZoom .pic {
position: relative;
overflow: hidden;
}
.HoverZoom .pic figure img {
backface-visibility: visible;
-webkit-backface-visibility: hidden;
-webkit-transition: -webkit-transform 0.8s;
transition: -webkit-transform 0.8s;
transition: transform 0.8s;
transition: transform 0.8s, -webkit-transform 0.8s;
}
.HoverZoom:hover .pic figure img {
-webkit-transform: scale3d(1.05, 1.05, 1) rotate(0deg);
transform: scale3d(1.05, 1.05, 1) rotate(0deg);
}

/* ホバー時にラインを移動する */
@-webkit-keyframes line-in {
from {
width: 0;
left: 0; }
to {
width: 100%;
left: 0; } }
@keyframes line-in {
from {
width: 0;
left: 0; }
to {
width: 100%;
left: 0; } }

@-webkit-keyframes line-out {
from {
width: 100%;
left: 0; }
to {
width: 0;
left: 100%; } }

@keyframes line-out {
from {
width: 100%;
left: 0; }
to {
width: 0;
left: 100%; } }

@-webkit-keyframes line-in-top {
from {
width: 0;
left: 100%; }
to {
width: 100%;
left: 0; } }

@keyframes line-in-top {
from {
width: 0;
left: 100%; }
to {
width: 100%;
left: 0; } }

@-webkit-keyframes line-out-top {
from {
width: 100%;
right: 100%; }
to {
width: 0;
right: 0; } }

@keyframes line-out-top {
from {
width: 100%;
right: 100%; }
to {
width: 0;
right: 0; } }


/*PC*/
@media print, screen and (min-width: 769px) {
html {
overflow: auto;
height: 100%;
}

body {
min-width:1280px;
}


.totop {
position: fixed;
bottom: 30px;
width: 54px;
height: 54px;
right: 10px;
display: block;
z-index: 200;
}


/* com[PC]
--------------------------------------------*/
.gridContainer {
width:100%;
min-width: 1080px;
}
.pcBr {
display: inline-block;
}
.spBr {
display: none;
}
.pc {
display: block;
}
.sp {
display: none!important;
}
.comPd { padding-bottom: 120px; }	

.com_mb60 {
margin-bottom:60px;
}


/* ボックス[PC]
--------------------------------------------*/
.w1080 {
width: 1080px;
	width: 100%;
	max-width: 1080px;
margin: 0 auto;
}
.w1080Wrap {
padding-left:  100px;
padding-right:  100px;
}	


/* タイトル[PC]
--------------------------------------------*/
.comTit01 {
font-size: 22px;
font-weight: bold;
margin-bottom:60px;
}

.comTit01 span {
letter-spacing:-0.01em;
}

.comTit01 .en {
font-size: 14px;
font-weight: bold;
letter-spacing: 0.25em;
}
.comTit02 {
font-size: 18px;
font-weight: bold;
line-height: 2em;
margin-bottom:40px;
}
.comTit03 {
font-size: 14px;
font-weight: bold;
}	

.comTit04 {
font-size: 12px;
font-weight: bold;
margin-bottom:20px;
}
.comTit04 .en {
font-size: 18px;
font-weight: bold;
letter-spacing: 0.25em;
}


/* ボタン [PC]
--------------------------------------------*/
/* 矢印 */	
a .arw_s {
position: absolute;
top: 17px;
right: 10px;
width: 22px;
height: 9px;
background-repeat: no-repeat;
background-image: url(../images/com/arrow_r.svg);
transition: 0.3s ease-out;
}
a:hover .arw_s {
right: 0px;
transition: 0.08s ease-out;
}

/* ボタン */	
.btn01 {}
.btn01 a {
position: relative;
width: 274px;
height: 45px;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: center;	
background-color: #FFF;
border: 1px solid #222222;
text-decoration:none;
}
.btn01 a:hover {
color: #FFF;
background-color: #222222;
}
.btn01 a:hover .arw_s {
right: 4px;
background-image: url(../images/com/arrow_r_w.svg);
}

/* Reed More */	
.read_more_btn {
position: relative;
display: block;
padding: 30px 0;
text-align: right;
}

.link-line-default {
position: relative;
display: inline-block;
}

.link-line-default:after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 2px;
background-color: #c3c3c3;
-webkit-animation: line-in 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
animation: line-in 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html:not(.tablet) .link-line-default:hover:after {
-webkit-animation: line-out 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) both;
animation: line-out 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) both;
}
.readMore {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: absolute;
right: 0;
bottom: 0;
}

.readMore2 {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: relative;
margin: 0 0 0 auto;
}

.readMore3 {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: relative;
text-align: center;
color: #FFF;
}
    
.readMore.case{
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: absolute;
right: 140px;
bottom: 20px;
}

/* header[PC]
--------------------------------------------*/

/* ヘッダー[PC] */
header, #header {
width: 100%;
margin: 0 auto;
}
#header {
display: flex;
flex-direction: row;
}


/* ロゴ[PC] */
.logo_wrap { width:170px; position:relative;}
#logo_img { width: 102px; position:fixed; margin:40px 0 0 40px;}
#logo_img a { display: block; }





/* メニュー[PC]
--------------------------------------------*/
/*menu*/
.menuWrap {
width: 100px;
position: relative;
z-index: 20000;
cursor : pointer;
}

.menu{
display: block;
position: fixed;
width: 30px;
margin: 0 auto; 
height: 18px;
margin-top: 70px;
margin-left: 33px;
}
.menu__line{
background: #000;
display: block;
height: 2px;
position: absolute;
transition:transform .3s;
width: 30px;
}

.menu__line--center{
top: 8px;
}
.menu__line--bottom{
bottom: 0;
}
.menu__line--top.active{
top: 7px;
transform: rotate(45deg);
width: 100%;
}
.menu__line--center.active{
transform:scaleX(0);
}
.menu__line--bottom.active{
bottom: 9px;
transform: rotate(135deg);
}

.menuWrap p {
width: 100px;
transform: rotate(90deg);
display: block;
position: fixed;
font-size: 10px;
font-weight: bold;
line-height: 1em;
margin-top: 150px;
margin-left: -2px;
}

/*gnav*/
.gnav{
display: none;
height: 100%;
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 1000;
}
.gnav__wrap{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
align-items: center;
height: 100%;
position: absolute;
width: 100%;
}

.gnav_bg_img { flex-basis: 38%; width: 100%; height: 100%; align-items: center; }
.gnav_bg_img .bg_img { background: url(../images/com/gnav_bg_img.jpg) center center; background-size: cover; width: 100%; height: 100%; }

.gnav_contents { flex-basis: 62%; background: #fff; width: 100%; height: 100%; display: flex; background-position:bottom right,center center; background-repeat: no-repeat, repeat; overflow: auto; padding: 70px 0 0 ;box-sizing: border-box;}

.gnav_menu_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; align-content: flex-end; padding: 30px 0; box-sizing: border-box;}
.gnav_menu_boxL { flex-basis: 52%; max-width: 52%; margin-right: 5%; }
.gnav_menu_boxR { flex-basis: 43%; max-width: 43%; }
.gnav_menu_sub { width: 100%; margin: 0 auto; margin-bottom: 50px;  }
.gnav_menu_sub li:nth-child(n+2) { margin-top: 10px; }
.gnav_menu_sub li a { color: #888; display: block; }
.g_sns a { color: #888; margin: 10px 0px; font-weight: 500; display: block; }
.g_sns a span.icon { padding-right: 5px; display: inline-block; text-align: center; width: 20px;  }
.g_sns a span.icon i { font-size: 18px; text-align: center; }


.gnav_contents_box { width: 100%; align-items: center; padding: 0 70px; box-sizing: border-box; }

.gnav__menu{
height: 100%;
}
.gnav__menu__item{
opacity: 0;
}
.gnav__menu li:nth-child(n+2) { margin-top: 20px; }

.gnav__menu__item a{
color: #222;
font-size: 14px;
line-height: 1.2;
letter-spacing: 2px;
font-weight: bold;
text-decoration: none;
transition: .5s;
}

.gnav__menu__item a span.en { display: block; font-size: 12px; font-weight: bold; color: #909090; }
.gnav__menu__item a i { padding-left: 15px; }
.gnav__menu__item a span.gnav_link { padding-left: 10px; }

.gnav__menu__item a:hover{
color: #666;
}

.gnav_logo { width: 100px; margin: auto auto auto 0; margin-bottom: 10px; }
.gnav_logo img { width: 100%; height: auto; }



.gnav_thetrade {
width: 100%;
margin: 0 0 60px;
}


.sub_menu {
display: block;
margin:5px 0 0 25px;
font-family: 'Open Sans', sans-serif;
}

.sub_menu a{
font-size: 0.9em !important;
}


/* お問い合わせ
--------------------------------------------*/
#contactWrap {
/*min-width: 1280px;*/
	width: 100%;
	
padding-top: 100px;
background-image: url(../images/com/bg_dot.gif);
background-position: left top;
background-repeat: repeat;
}
#contact_bg {
padding: 60px 0 66px;
background-image: url("../images/index/contact_bg_img01.jpg");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
}
#contact_bg .comTit01 .en {
padding-bottom: 10px;
display: block;
line-height: 16px;
}
#contact_txt {
margin-bottom: 45px;
text-align: center;
font-weight: bold;
}

#contact_txt span{
font-size: 0.7em;
}

#contact_bg .tel {
margin-bottom: 45px;
font-size: 46px;
text-align: center;
font-weight: bold;
letter-spacing: 0.12em;
}


#contactWrap .com_fot_btn_wrap{
width: 600px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: auto;
}


/* footer
--------------------------------------------*/
#footerWrap {
width: 100%;
/*min-width: 1280px;*/
	
padding: 75px 0 90px;
color: #656565;
background-color: #222222;
}
#footer {
display: flex;
flex-direction: row-reverse;
justify-content: space-between;
}
/* 住所 */
#footer address{
width: 265px;

font-size: 12px;
line-height: 1.75em;
font-weight: bold;
font-style: normal;	
}
#footer address img.logo {
width: 126px;
padding-top: 5px;
}
.addressWrap{
margin-top: 20px;
}
/* フットナビ */
#footer nav {
width: 540px;
}
#footer nav ul {
display: flex;
flex-wrap: wrap;
font-size: 12px;
line-height: 2.58em;
font-weight: bold;
letter-spacing: 0.12em;
}
#footer nav ul li { margin-right: 20px; }
#footer nav ul li a{ color: #656565; }
#footer nav ul li a:hover{ color: #FFF; }

#footer p.copy { 
margin-top: 20px;
font-size: 10px;
font-weight: bold;
letter-spacing: 0.12em;
}




/* PAGE[PC]
--------------------------------------------*/
.com_hed_tit {
width: 1080px;
margin:200px auto 120px;
	width: 100%;
	max-width: 1080px;
}

.com_hed_tit h2 {
font-size:36px;
line-height:1.2;
letter-spacing:0.2em;
margin-bottom:15px;
}

.com_hed_tit h2 span {
letter-spacing:-0.01em !important;
}

.com_hed_tit h3 {
font-size:16px;
font-weight:500;
line-height:1;
margin-left:5px;
}

.com_hed_img {
width:1080px;
margin:0 auto 60px;
}

.com_page_box {
width:1080px;
	width: 100%;
	max-width: 1080px;
margin:0 auto 120px;
padding-bottom:120px;
border-bottom:1px solid #c2c2c2;
}

.com_page_box_end {
width:1080px;
	width: 100%;
	max-width: 1080px;
margin:0 auto 120px;
}

.com_page_box02{
width:1080px;
	width: 100%;
	max-width: 1080px;
box-sizing: border-box;
box-shadow: 
40px 0px 0px -38px #FFF,
0px 40px 0px -38px #FFF,
0px -40px 0px -38px #FFF,
-40px 0px 0px -38px #FFF,
0 0 0 1px #bcbcbc;
padding:40px;
box-sizing:border-box;
}

.com_page_box02_02{
width:1080px;
	width: 100%;
	max-width: 1080px;
box-sizing: border-box;
box-shadow: 
40px 0px 0px -38px #FFF,
0px 40px 0px -38px #FFF,
0px -40px 0px -38px #FFF,
-40px 0px 0px -38px #FFF,
0 0 0 1px #bcbcbc;
padding:40px;
box-sizing:border-box;
margin:0 auto 60px;
}

.com_page_box02_03{
width:1080px;
	width: 100%;
	max-width: 1080px;
box-sizing: border-box;
box-shadow: 
40px 0px 0px -38px #FFF,
0px 40px 0px -38px #FFF,
0px -40px 0px -38px #FFF,
-40px 0px 0px -38px #FFF,
0 0 0 1px #bcbcbc;
padding:40px;
box-sizing:border-box;
margin:0 auto 60px;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
}

.com_page_box02_03 div {
width:48%;
}

.com_page_box60 {
width:1080px;
	width: 100%;
	max-width: 1080px;
margin:0 auto 60px;
}

.com_tit_00 {
font-size:24px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:120px;
}

.com_tit_00 span {
color:#878787;
font-size:12px;
line-height:1;
letter-spacing:0.2em;
margin-left:10px;
}

.com_tit_01 {
font-size:24px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:60px;
}

.com_tit_01 span {
color:#878787;
font-size:12px;
line-height:1;
letter-spacing:0.2em;
margin-left:10px;
}

.com_tit_02 {
font-size:16px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:60px;
}

.com_tit_02 span {
letter-spacing:-0.005em;	
}

.com_tit_02 a {
text-decoration:underline;
}

.com_tit_03 span {
color:#878787;
font-size:12px;
line-height:1;
letter-spacing:0.2em;
margin-left:10px;
}

.com_tit_04 {
font-size:16px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:30px;
}

.com_tit_04 span {
font-size:12px;
color:#878787;
letter-spacing:0.1em;
margin-left:10px;
}



.com_tit_05 {
font-size:18px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:60px;
}

.com_tit_05 span {
color:#878787;
font-size:12px;
line-height:1;
letter-spacing:0.2em;
margin-left:10px;
}


.com_tit_06 {
font-size:16px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:30px;
}



.com_table {
border-top:1px solid #dcdcdc;
width:100%;
}

.com_table th {
border-bottom:1px solid #dcdcdc;
width:20%;
padding:10px;
text-align:left;
vertical-align:middle;
}

.com_table td {
border-bottom:1px solid #dcdcdc;
padding:10px;
}

.com_txt {
margin:0 0 60px;
}


}




/*sp*/
@media only screen and (max-width: 768px) {

.totop {
position: fixed;
bottom: 30px;
width: 30px;
height: 30px;
right: 5px;
display: block;
z-index: 200;
}

/* com[SP]
--------------------------------------------*/
.gridContainer {
width:100%;
min-width: 1080px;
}
.pcBr {
display: none;
}
.spBr {
display: inline-block;
}
.pc {
display: none!important;
}
.sp {
display: block;
}
.comPd { padding-bottom: 120px; }	

.com_mb60 {
margin-bottom:30px;
}



/* ボックス[SP]
--------------------------------------------*/
.w1080 {
width: 90%;
margin: 0 auto;
}
.w1080Wrap {
width: 100%;
}	


/* タイトル[SP]
--------------------------------------------*/
.comTit01 {
font-size: 18px;
font-weight: bold;
margin-bottom:40px;
}

.comTit01 span {
letter-spacing:-0.01em;
}

.comTit01 .en {
font-size: 10px;
font-weight: bold;
letter-spacing: 0.25em;
}
.comTit02 {
font-size: 16px;
font-weight: bold;
line-height: 1.8em;
margin-bottom:30px;
}
.comTit03 {
font-size: 14px;
font-weight: bold;
}	

.comTit04 {
font-size: 10px;
font-weight: bold;
margin-bottom:20px;
}
.comTit04 .en {
font-size: 18px;
font-weight: bold;
letter-spacing: 0.25em;
}


/* ボタン [SP]
--------------------------------------------*/
/* 矢印 */	
a .arw_s {
position: absolute;
top: 17px;
right: 10px;
width: 22px;
height: 9px;
background-repeat: no-repeat;
background-image: url(../images/com/arrow_r.svg);
transition: 0.3s ease-out;
}
a:hover .arw_s {
right: 0px;
transition: 0.08s ease-out;
}

/* ボタン */	
.btn01 {}
.btn01 a {
position: relative;
width: 274px;
height: 45px;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: center;	
background-color: #FFF;
border: 1px solid #222222;
text-decoration:none;
}
.btn01 a:hover {
color: #FFF;
background-color: #222222;
}
.btn01 a:hover .arw_s {
right: 4px;
background-image: url(../images/com/arrow_r_w.svg);
}

/* Reed More */
.read_more_btn {
position: relative;
display: block;
padding: 20px 0;
text-align:left;
}

.link-line-default {
position: relative;
display: inline-block;
}

.link-line-default:after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 2px;
background-color: #c3c3c3;
-webkit-animation: line-in 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
animation: line-in 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html:not(.tablet) .link-line-default:hover:after {
-webkit-animation: line-out 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) both;
animation: line-out 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) both;
}

.readMore {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: absolute;
right: 0;
bottom: 0;
}

.readMore2 {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: absolute;
margin: 0;
right: 0;
}

.readMore3 {
font-weight: bold;
line-height: 1em;
padding-bottom: 8px;
position: relative;
text-align: center;
color: #FFF;
}

/* header[SP]
--------------------------------------------*/

/* ヘッダー[PC] */
header, #header {
width: 100%;
/*margin: 0 auto;
z-index: 10000;
position: fixed;*/
}
#header {}


/* ロゴ[SP] */

#logo_img { 
/*position: fixed;
z-index: 10000;
width: 90%;*/
padding: 10px 5%;
background-color: #FFF;
}
#logo_img a { 
display: block;
width: 40px;
}
#logo_img a img { 
width: 40px;
}




/* メニュー[SP]
--------------------------------------------*/
/*menu*/
.mainMenu {
box-sizing: border-box;
width: 100%;
align-items: center;
height: 60px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}

.mainMenuInWrap,
.mainMenuIn {
display: none;
}

.inqBox {
display: none;
}

.logo_Hed_index { display: none; }


/*menu*/
.menuWrap {
width: 30px;
position: fixed;
right: 15px;
top: 0px;
z-index: 20000;
cursor : pointer;
}

.menu{
display: block;
position: fixed;
width: 30px;
margin: 0 auto; 
height: 18px;
margin-top: 24px;
margin-right: 0;
}
.menu__line{
background: #222;
display: block;
height: 2px;
position: absolute;
transition:transform .3s;
width: 30px;
}

.menu__line--center{
top: 8px;
}
.menu__line--bottom{
bottom: 0;
}
.menu__line--top.active{
top: 7px;
transform: rotate(45deg);
width: 100%;
}
.menu__line--center.active{
transform:scaleX(0);
}
.menu__line--bottom.active{
bottom: 9px;
transform: rotate(135deg);
}
.menuWrap p {
width: 100px;
display: block;
position: fixed;
font-size: 10px;
font-weight: bold;
line-height: 1em;
margin-top: 28px;
margin-left: -100px;
}
/*gnav*/
.gnav{
background: #fff;
display: none;
height: 100%;
position: fixed;
width: 100%;
top: 0;
z-index: 1000;
}
.gnav__wrap{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
align-items: center;
height: 100%;
position: absolute;
width: 100%;
}

.gnav_bg_img { display: none;}
/*.gnav_bg_img .bg_img { background: url(../images/com/gnav_bg_img.jpg) center center; background-size: cover; width: 100%; height: 100%; }*/

.gnav_contents { width: 100%; background: url(../images/com/gnav_contents_bg_icon.png),url(../images/com/gnav_contents_bg.jpg); background-size: 180px 224px,cover; height: 100%; display: flex; align-items: center; background-position:bottom right,center center; background-repeat: no-repeat, repeat; }

.gnav_contents_box { width: 95%; align-items: center;  overflow-y: auto; height: 70vh; }

.gnav__menu{
height: 100%;
padding: 0 5%;
/*position: absolute;
left: 50%;
transform: translateX(-50%);
width: 170px;*/
}
.gnav__menu__item{
opacity: 0;
text-align: center;
}
.gnav__menu li:nth-child(n+2) { margin-top: 25px; }

.gnav__menu__item a{
color: #333;
font-size: 16px;
font-weight: bold;
letter-spacing: 0.25em;
text-decoration: none;
transition: .5s;
text-align: center; 
}

.gnav__menu__item a span.en { display: block; font-size: 12px; font-weight: bold; color: #909090; }
.gnav__menu__item a i { padding-left: 15px; }

.gnav__menu__item a:hover{
color: #666;
}

.gnav_logo { width: 100px; margin: 0 auto 40px; }
.gnav_logo img { width: 100%; height: auto; }

.gnav_menu_sub { width: 100%; box-sizing: border-box;  margin: 0 auto; margin-bottom: 30px;  }
.gnav_menu_sub li:nth-child(n+2) { margin-top: 10px; }
.gnav_menu_sub li a { color: #888; display: block; font-size: 12px;  }
.g_sns a { color: #888; margin: 10px 0px; font-weight: 500; display: block; }
.g_sns a span.icon { padding-right: 5px; display: inline-block; text-align: center; width: 20px;  }
.g_sns a span.icon i { font-size: 18px; text-align: center; }
.gnav_menu_boxR { padding: 0 10%; margin-top: 50px; text-align: center; }


.sub_menu {
display: block;
margin:10px 0;
font-family: 'Open Sans', sans-serif;
letter-spacing: -0.1em;
}

.sub_menu a{
font-size: 1em !important;
}




/* お問い合わせ[SP]
--------------------------------------------*/
#contactWrap {
padding-top: 100px;
background-image: url(../images/com/bg_dot.gif);
background-position: left top;
background-repeat: repeat;
}
#contact_bg {
padding: 60px 0 ;
background-image: url("../images/index/contact_bg_img01.jpg");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
}
#contact_bg .comTit01 .en {
padding-bottom: 10px;
display: block;
line-height: 16px;
}
#contact_txt {
margin-bottom: 45px;
text-align: left;
font-weight: bold;
}

#contact_txt span{
font-size: 0.8em;
}

#contact_bg .tel {
margin-bottom: 45px;
font-size: 35px;
text-align: center;
font-weight: bold;
letter-spacing: 0.12em;
}


#contactWrap .com_fot_btn_wrap{
width: 100%;
margin: auto;
}

#contactWrap .com_fot_btn_wrap .btn01 {
margin-bottom: 20px;
}


/* footer[SP]
--------------------------------------------*/
#footerWrap {
padding: 60px 0 20px ;
color: #656565;
background-color: #222222;
}
#footer {
}
/* 住所 */
#footer address {
  gap: 20px;
  gap: 1.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 300px;
  font-size: 12px;
  font-style: normal;
  font-weight: bold;
  letter-spacing: 1.68px;
  line-height: 1.75em;
}
#footer address img.logo {
width: 92px;
padding-top: 5px;
}
#footer address p.link_sns {
padding-top: 5px;
text-align: right;
}
#footer address p.link_sns a img {
width: 20px;
}
/* フットナビ */
#footer nav {
display: none;
}
#footer nav ul {
display: flex;
flex-wrap: wrap;
font-size: 12px;
line-height: 2.58em;
font-weight: bold;
letter-spacing: 0.12em;
}
#footer nav ul li { margin-right: 20px; }
#footer nav ul li a{ color: #656565; }
#footer nav ul li a:hover{ color: #FFF; }

#footer p.copy { 
margin-top: 20px;
font-size: 10px;
font-weight: bold;
letter-spacing: 0.12em;
text-align: center;
}


/* PAGE[SP]
--------------------------------------------*/
.com_hed_tit {
width: 90%;
margin:60px auto;
}

.com_hed_tit h2 {
font-size:22px;
line-height:1.2;
letter-spacing:0.2em;
margin-bottom:15px;
}

.com_hed_tit h2 span {
letter-spacing:-0.01em !important;	
}

.com_hed_tit h3 {
font-size:12px;
font-weight:500;
line-height:1;
margin-left:5px;
}

.com_hed_img {
width:90%;
margin:0 auto 30px;
}

.com_page_box {
width:90%;
margin:0 auto 60px;
padding-bottom:60px;
border-bottom:1px solid #c2c2c2;
}

.com_page_box_end {
width:90%;
margin:0 auto 60px;
}

.com_page_box02{
width:90%;
box-sizing: border-box;
box-shadow: 
25px 0px 0px -23px #FFF,
0px 25px 0px -23px #FFF,
0px -25px 0px -23px #FFF,
-25px 0px 0px -23px #FFF,
0 0 0 1px #bcbcbc;
padding:25px;
box-sizing:border-box;
margin:auto;
}

.com_page_box02_02{
width:90%;
box-sizing: border-box;
box-shadow: 
25px 0px 0px -23px #FFF,
0px 25px 0px -23px #FFF,
0px -25px 0px -23px #FFF,
-25px 0px 0px -23px #FFF,
0 0 0 1px #bcbcbc;
padding:25px;
box-sizing:border-box;
margin:0 auto 60px;
}

.com_page_box02_03 {
width:90%;
box-sizing: border-box;
box-shadow: 
25px 0px 0px -23px #FFF,
0px 25px 0px -23px #FFF,
0px -25px 0px -23px #FFF,
-25px 0px 0px -23px #FFF,
0 0 0 1px #bcbcbc;
padding:25px;
box-sizing:border-box;
margin:0 auto 60px;
}

.com_page_box02_03 div {
width:100%;
margin:0 auto 30px;
}

.com_page_box60 {
width:100%;
margin:0 auto 60px;
}

.com_tit_00 {
font-size:16px;
font-weight: bold;
list-style:1;
letter-spacing:0.1em;
margin-bottom:60px;
}

.com_tit_00 span {
display:block;
color:#878787;
font-size:10px;
line-height:1;
letter-spacing:0.2em;
margin:5px 0 0;
}

.com_tit_01 {
font-size:16px;
font-weight: bold;
list-style:1;
letter-spacing:0.1em;
margin-bottom:30px;
}

.com_tit_01 span {
display:block;
color:#878787;
font-size:10px;
line-height:1;
letter-spacing:0.2em;
margin:5px 0 0;
}

.com_tit_02 {
font-size:12px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:30px;
}

.com_tit_02 span {
letter-spacing:-0.005em;	
}


.com_tit_02 a {
text-decoration:underline;
}

.com_tit_03 {
font-size:14px;
font-weight: bold;
list-style:1;
letter-spacing:0.15em;
margin-bottom:60px;
color:#878787;
text-decoration:underline;
}

.com_tit_04 {
font-size:12px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:30px;
}

.com_tit_04 span {
display:block;
font-size:10px;
color:#878787;
}

.com_tit_05 {
font-size:14px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:40px;
}

.com_tit_05 span {
color:#878787;
font-size:10px;
line-height:1;
letter-spacing:0.2em;
display: block;
}


.com_tit_06 {
font-size:14px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:20px;
}


.com_table {
border-top:1px solid #dcdcdc;
width:100%;
}

.com_table th {
display:block;
width:100%;
padding:10px 10px 0;
text-align:left;
box-sizing:border-box;
}

.com_table td {
display:block;
border-bottom:1px solid #dcdcdc;
padding:10px;
box-sizing:border-box;
}

.com_txt {
margin:0 0 30px;
}

}