@charset "utf-8";

/*-------------------------------------------------------------------

real_japan_TOP

-------------------------------------------------------------------*/

body { font:13px/1.231 "Noto Sans Japanese" , "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Osaka; }

section { display:block; }

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

/*--------------------------------------- 
section1
--------------------------------------- */
#s01 {
background-image:url(../images/top/p_main.jpg);
background-position:center top;
background-repeat:no-repeat;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
position:relative;
min-width:1080px;
}

#s01 h2 {
position:absolute;
margin:auto;
top: -80px;
left: 0;
right: 0;
bottom: 0;
width: 80%;
height: 3.2rem;
text-align:center;
font-size: 5em;
font-family: arial,helvetica;
color: #fff;
}

/*--------------------------------------- 
header
--------------------------------------- */
#header {
background-image:url(../images/common/bg_header.png);
background-position:center top;
background-repeat:repeat-x;
border-top:5px solid #e6001a;
min-width:1300px;
width:100%;
top:0;
position:absolute;
}
#header #header_cont { margin:0 auto; padding:0 20px; text-align:center; min-width:1040px; position:relative; max-width:100%; letter-spacing:-.40em; }
#header #header_cont #head_txt { display:inline-block; width:40%; height:93px; letter-spacing:-.40em; /*margin-top:23px;*/ margin-top:10px; text-align:left; }
/*#header #header_cont #head_txt p { width:260px; height:93px; margin:0; padding:0; }*/
/*#header #header_cont #head_txt p img { width:288px; height:86px; }*/

#header #header_cont #head_txt p.large { display:inline-block; letter-spacing:normal; max-width:292px; height:auto; margin:0; padding:0; /*position:absolute; top:12px; left:10px;*/ vertical-align:middle; }
#header #header_cont #head_txt p.large img { width:100%; height:auto; }

#header #header_cont #head_txt p.large.en { width:347px; height:104px; margin:0; padding:0; position:absolute; top:12px; left:10px; }
#header #header_cont #head_txt p.large.en img { width:347px; height:104px; }

#header #header_cont #head_txt div.lead { display:inline-block; font-size:116%; font-weight:700; letter-spacing:normal; line-height:1.4; vertical-align:middle; margin-left:10px; }

#header #header_cont h1 { display:inline-block; margin:0; letter-spacing:normal; text-align:center; vertical-align:top; width:20%; }
#header #header_cont h1 span { display:inline-block; margin:0; text-align:center; padding:0; height: 155px; width:178px; box-shadow:0px 2px 2px 2px  rgba(0,0,0,0.35); -moz-box-shadow:0px 2px 2px 2px  rgba(0,0,0,0.35); -webkit-box-shadow:0px 2px 2px 2px  rgba(0,0,0,0.35); display:inline-block; vertical-align:top; height: 155px; /*width:178px;*/ letter-spacing:normal; }
#header #header_cont #info { display:inline-block; margin-top:8px; /*width:390px;*/ width:40%; height:96px; padding:0; vertical-align:top; text-align:right; letter-spacing:-.40em; }
#header #header_cont #info:after { content:" "; display:block; clear:both; }
#header #header_cont #info dl { display:inline-block; letter-spacing:normal; margin:0 20px 0 0; padding:0; vertical-align:top; text-align:left; width:334px; }
#header #header_cont #info dl dt { font-size:116%; font-weight:700; margin-bottom:3px; }
#header #header_cont #info dl dd {}
#header #header_cont #info dl dd img  { width:334px; height:38px; }
#header #header_cont #info dl dd span { display:block; font-size:100%; font-weight:600; margin-top:3px; }

#header #header_cont #info a {
background-image:url(../images/common/p_inquiry.png);
background-repeat:no-repeat;
background-position:center center;
color:#fff;
display:inline-block;
font-weight:700;
font-size:15px;
letter-spacing:normal;
line-hieght:1;
padding:55px 0 10px;
vertical-align:top;
text-decoration:none;
text-align:center;
width:103px;
}

#header #header_cont #info .lang_select { padding-bottom:8px; letter-spacing:-.40em; }
#header #header_cont #info .lang_select p { display:inline-block; font-size:85%; font-weight:600; letter-spacing:normal; margin-right:10px; vertical-align:middle; }
#header #header_cont #info .lang_select ul { display:inline-block; letter-spacing:-.40em; }
#header #header_cont #info .lang_select ul li { display:inline-block; letter-spacing:normal; vertical-align:middle; }
#header #header_cont #info .lang_select li:first-child { margin-right:10px; }
#header #header_cont #info .lang_select li img { vertical-align:middle; display:inline-block; padding-right:5px; }
#header #header_cont #info .lang_select ul li a { display:block; font-weight:400; width:auto; background:none; font-size:85%; line-hieght:1.6; padding:0 0 0 30px; vertical-align:middle; }
#header #header_cont #info .lang_select li:first-child a {
background-image:url(../images/common/i_english_off.png);
background-position:left center;
background-repeat:no-repeat;
background-size:24px 16px;
background-color:transparent;
color:#666;
}
#header #header_cont #info .lang_select li:nth-child(2) a {
background-image:url(../images/common/i_thailand_off.png);
background-position:left center;
background-repeat:no-repeat;
background-size:24px 16px;
background-color:transparent;
color:#666;
}
#header #header_cont #info .lang_select li:first-child.selected a,
#header #header_cont #info .lang_select li:first-child a:hover {
background-image:url(../images/common/i_english.png);
background-position:left center;
background-repeat:no-repeat;
background-size:24px 16px;
background-color:transparent;
color:#333;
}
#header #header_cont #info .lang_select li:nth-child(2).selected a,
#header #header_cont #info .lang_select li:nth-child(2) a:hover {
background-image:url(../images/common/i_thailand.png);
background-position:left center;
background-repeat:no-repeat;
background-size:24px 16px;
background-color:transparent;
color:#333; 
}

/*--------------------------------------- 
s01_footer
--------------------------------------- */
#s01_footer { background-image:url(../images/common/bg_footer.png); background-position:center bottom; background-repeat:repeat-x; bottom:0; border-bottom:5px solid #e6001a; height:140px; position:absolute; min-width:1080px; width:100%; }
#s01_footer #menu { background-image:url(../images/common/bg_menu.png); background-position:right center; background-repeat:no-repeat; letter-spacing:-.40em; margin:0 auto; text-align:center; min-width:1080px; width:100%; }
#s01_footer #menu li { display:inline-block; letter-spacing:normal; position:relative; max-width:235px; width:20%; }
#s01_footer #menu li .ico { text-align:center; display:inline; position:absolute; width:100px; height:28px; }
#s01_footer #menu li:first-child .ico { left:67px; margin:-18px 0 0; }
#s01_footer #menu li:nth-child(2) .ico { left:67px; margin:-22px 0 0; }
#s01_footer #menu li:nth-child(3) .ico { left:87px; margin:-50px 0 0; width:69px; height:88px; }
#s01_footer #menu li:nth-child(3) .ico img { width:100%; height:auto; }
#s01_footer #menu li:nth-child(4) .ico { left:67px; margin:-14px 0 0; }
#s01_footer #menu li:nth-child(5) .ico { left:87px; margin:-50px 0 0; width:69px; height:88px; }
#s01_footer #menu li:nth-child(5) .ico img { width:100%; height:auto; } 
#s01_footer #menu li a { background-image:url(../images/common/bg_menu.png); background-position:left center; background-repeat:no-repeat; display:block; text-decoration:none; }
#s01_footer #menu li a:hover { background-color:#e6001a; }
#s01_footer #menu li a dl { height:44px; padding:48px 10px; }
#s01_footer #menu li a dl dt { color:#fff; font-size:116%; font-weight:600; text-align:center; }
#s01_footer #menu li a dl dt img { max-width:100%; text-align:center; margin:0 auto; }
#s01_footer #menu li a dl dd { color:#fff; font-weight:600; margin-top:17px; text-align:center; }
#s01_footer #menu li a dl dd img { max-width:100%; text-align:center; margin:0 auto; }

/*--------------------------------------- 
section2
--------------------------------------- */
#s02 { background:#efefef; padding:3% 0 0; position:relative; }

#s02 #title_area { background-color:#fff; position:relative; width:100%; }
#s02 #title_area #title_area_cont { background-color:#fff; letter-spacing:-.40em; margin:0 auto; padding:5%; text-align:center; }
#s02 #title_area #title_area_cont .figure { position:absolute; max-width:139px; max-height:100%; width:auto; height:auto; bottom:0; right:28%; }
#s02 #title_area #title_area_cont .voice { position:absolute; max-width:84px; max-height:100%; width:auto; height:auto; bottom:60%; right:35%; }

#s02 #title_area #title_area_cont .left_area { background-color:#ddd; display:inline-block; letter-spacing:-.40em; max-width:33.3%; padding:0; vertical-align:middle; }
#s02 #title_area #title_area_cont .left_area ul { display:inline-block; letter-spacing:-.40em; padding:0; }
#s02 #title_area #title_area_cont .left_area ul li { display:inline-block; letter-spacing:normal; width:25%; }
#s02 #title_area #title_area_cont .left_area ul li img { width:100%; height:auto; }

#s02 #title_area #title_area_cont .center_area { display:inline-block; letter-spacing:-.40em; width:33.4%; padding:10px 0; vertical-align:middle; position:relative; }
#s02 #title_area #title_area_cont .center_area h2 { display:inline-block; letter-spacing:normal; font-size:232%; font-weight:600; text-align:center; vertical-align:middle; line-height:1.6; }

#s02 #title_area #title_area_cont .right_area { background-color:#ddd; display:inline-block; letter-spacing:-.40em; max-width:33.3%; padding:0; vertical-align:middle; }
#s02 #title_area #title_area_cont .right_area ul { display:inline-block; letter-spacing:-.40em; padding:0; }
#s02 #title_area #title_area_cont .right_area ul li { display:inline-block; letter-spacing:normal; width:25%; }
#s02 #title_area #title_area_cont .right_area ul li img { width:100%; height:auto; }

#s02 #contents_area { background-color:#efefef; letter-spacing:-.40em; margin:0; padding:0; width:100%; }
#s02 #contents_area .title_area { padding:0 5%; }
#s02 #contents_area .title_area h2 {
color: #333;
display: inline-block;
letter-spacing: normal;
font-weight: 700;
font-size: 250%;
vertical-align:top;
}
#s02 #contents_area .title_area p {
border-left: 1px solid #999;
color: #333;
display: inline-block;
letter-spacing: normal;
line-height: 1.4;
margin-left: 20px;
padding-left: 20px;
vertical-align:top;
}
#s02 #contents_area #fit { background-color:#fff; width:100%; height:500px; letter-spacing:-.40em; margin-top: 3%; }
#s02 #contents_area #fit #fit_cont { padding:0; display:inline-block; letter-spacing:normal; width:50%; height:500px; }
#s02 #contents_area #fit div.photo {
background-position:center top;
background-repeat:no-repeat;
/*background-size:contain;*/
position:relative;
width:100%;
height:500px;
}
#s02 #contents_area #fit div.photo span {
border:3px solid #fff;
color:#fff;
font-size:280%;
font-weight:700;
position:absolute;
margin:auto;
top:0;
left:0;
bottom:0;
right:0;
padding:10px 5px;
text-align:center;
width:40%;
height:40px;
line-height:1.0;
opacity:0.8;
}
#s02 #contents_area #fit .introduction { margin:0 auto; text-align:center; vertical-align:top; height:500px; }
#s02 #contents_area #fit .introduction .introduction_cont { padding:2% 5%; }
#s02 #contents_area #fit .introduction ul { display:inline-block; letter-spacing:-.40em; margin:0 auto; text-align:center; vertical-align:middle; padding:15px 0; width:100%; }
#s02 #contents_area #fit .introduction ul li { display:inline-block; letter-spacing:normal; margin-left:2%; width:31.3%; }
#s02 #contents_area #fit .introduction ul li:first-child { margin-left:0; }
#s02 #contents_area #fit .introduction ul li img { width:100%; height:auto; max-width:141px; }
#s02 #contents_area #fit .introduction ul li dl { max-width:100%; margin:0 auto; }
#s02 #contents_area #fit .introduction ul li dl dt { margin:0; }
#s02 #contents_area #fit .introduction ul li dl dt span { display:block; font-size:187%; color:#ccc; padding-bottom:3px; }
#s02 #contents_area #fit .introduction ul li dl dd { padding:5px 0 0; text-align:center; }
#s02 #contents_area #fit .introduction .introduction_cont h3 { border-bottom:1px solid #ccc; color:#666; font-weight:700; font-size:200%; padding-bottom:10px; }
#s02 #contents_area #fit .introduction .introduction_cont p { color:#666; line-height:1.6; text-align:center; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area { display:inline-block; margin:0 auto; text-align:center; width:100%; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul { letter-spacing:-.40em; width:100%; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul li { display:inline-block; letter-spacing:normal; margin:0 5%; width:40%; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul li a { border:3px solid #ccc; display:block; padding:8px 10px; text-align:center; text-decoration:none; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul li a:hover { background-color:#e6001a; color:#fff; }
#s02 #contents_area #fit .introduction .introduction_cont h4 { color:#666; font-weight:700; font-size:200%; margin-top:10px; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul li a i { font-size:1em; color:#999; padding-right:5px; }
#s02 #contents_area #fit .introduction .introduction_cont .link_area ul li a:hover i { color:#fff; }

#s02 #contents_area #group { background-color:#fff; margin-top:30px; width:100%; height:520px; letter-spacing:-.40em; }
#s02 #contents_area #group #group_cont { padding:0; display:inline-block; letter-spacing:normal; width:50%; height:520px; }
#s02 #contents_area #group div.photo {
background-position:center top;
background-repeat:no-repeat;
/*background-size:contain;*/
position:relative;
width:100%;
height:520px;
}
#s02 #contents_area #group div.photo span {
border:3px solid #fff;
color:#fff;
font-size:280%;
font-weight:700;
position:absolute;
margin:auto;
top:0;
left:0;
bottom:0;
right:0;
padding:10px 5px;
text-align:center;
width:40%;
height:40px;
line-height:1.0;
opacity:0.8;
}
#s02 #contents_area #group .introduction { margin:0 auto; text-align:center; vertical-align:top; height:520px; }
#s02 #contents_area #group .introduction .introduction_cont { padding:2% 5%; }
#s02 #contents_area #group .introduction ul { display:inline-block; letter-spacing:-.40em; margin:0 auto; text-align:center; vertical-align:middle; padding:15px 0; width:100%; }
#s02 #contents_area #group .introduction ul li { display:inline-block; letter-spacing:normal; margin-left:2%; width:31.3%; }
#s02 #contents_area #group .introduction ul li:first-child { margin-left:0; }
#s02 #contents_area #group .introduction ul li img { width:100%; height:auto; max-width:141px; }
#s02 #contents_area #group .introduction ul li dl { max-width:100%; margin:0 auto; }
#s02 #contents_area #group .introduction ul li dl dt { margin:0; }
#s02 #contents_area #group .introduction ul li dl dt span { display:block; font-size:187%; color:#ccc; padding-bottom:3px; }
#s02 #contents_area #group .introduction ul li dl dd { padding:5px 0 0; text-align:center; }
#s02 #contents_area #group .introduction .introduction_cont h3 { border-bottom:1px solid #ccc; color:#666; font-weight:700; font-size:200%; padding-bottom:10px; }
#s02 #contents_area #group .introduction .introduction_cont p { color:#666; line-height:1.6; text-align:center; }
#s02 #contents_area #group .introduction .introduction_cont .link_area { display:inline-block; margin:0 auto; text-align:center; width:100%; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul { letter-spacing:-.40em; width:100%; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul li { display:inline-block; letter-spacing:normal; margin:0 5%; width:40%; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul li a { border:3px solid #ccc; display:block; padding:8px 10px; text-align:center; text-decoration:none; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul li a:hover { background-color:#e6001a; color:#fff; }
#s02 #contents_area #group .introduction .introduction_cont h4 { color:#666; font-weight:700; font-size:200%; margin-top:10px; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul li a i { font-size:1em; color:#999; padding-right:5px; }
#s02 #contents_area #group .introduction .introduction_cont .link_area ul li a:hover i { color:#fff; }

#s02 .banner_area { padding:2% 5%; }
#s02 .banner_area img { width:100%; height:auto; }

/*--------------------------------------- 
section3
--------------------------------------- */
#s03 { background:#ddd; padding:0 5%; position:relative; }
#s03 ul.menu { letter-spacing:-.40em; width:100%; }
#s03 ul.menu li { display:inline-block; letter-spacing:normal; width:25%; }
#s03 ul.menu li .item { margin:0 10px; position:relative; }
#s03 ul.menu li .item .item_cont { background-color:#fff; padding:20px 10px; text-align:center; margin:0 auto 20px; position:relative; }

#s03 ul.menu li .item h3 { color:#f00; font-size:126%; font-weight:700; letter-spacing:normal; }
#s03 ul.menu li .item h4 { color:#000; font-size:116%; font-weight:700; margin-top:10px; line-height:1.4; letter-spacing:normal; }
#s03 ul.menu li .item .arrow { position:absolute; bottom:-10px; left:50%; margin-left:-10px; }
#s03 ul.menu li .item .pic { background-color:#fff; text-align:center; padding:10px; vertical-align:middle; }
#s03 ul.menu li .item .pic img { width:100%; max-width:100%; min-width:50%; height:auto; }
#s03 ul.menu li:first-child .item .pic { background-color:#ff9999; }
#s03 ul.menu li:nth-child(2) .item .pic { background-color:#ffcc33; }
#s03 ul.menu li:nth-child(3) .item .pic { background-color:#33cccc; }
#s03 ul.menu li:nth-child(4) .item .pic { background-color:#66cc66; }

#s03 ul.menu li .item .figure { position:absolute; z-index:300001; }
#s03 ul.menu li:first-child .item .figure { bottom:-35px; left:-35px; }
#s03 ul.menu li:nth-child(2) .item .figure { bottom:-35px; left:-25px; }
#s03 ul.menu li:nth-child(3) .item .figure { bottom:-35px; left:-25px; }
#s03 ul.menu li:nth-child(4) .item .figure { bottom:-35px; left:-25px; }
#s03 ul.menu li .item .figure img { width:70%; max-width:109px; height:auto; }

#s03 ul.menu li .item .btn { background-color:#fff; display:block; font-weight:600; font-size:116%; padding:0 5% 15px 5%; text-decoration:none; text-align:center; }
#s03 ul.menu li .item .btn a { background-color:#fff; background-image:url(../images/common/i_ar_detail.png); background-position: 95% center; background-repeat: no-repeat; border:2px solid #000; display:block; text-align:center; text-decoration:none; padding:15px 0; }

#s03 ul.menu li:first-child .item .btn { background-color:#ff9999; }
#s03 ul.menu li:nth-child(2) .item .btn { background-color:#ffcc33; }
#s03 ul.menu li:nth-child(3) .item .btn { background-color:#33cccc; }
#s03 ul.menu li:nth-child(4) .item .btn { background-color:#66cc66; }

#s03 #experience { padding:3% 0 5%; letter-spacing:-.40em; }
#s03 #experience h2 { border-right:1px solid #999; color:#333; display:inline-block; letter-spacing:normal; font-weight:700; font-size:250%; margin-right:20px; padding-right:20px; }
#s03 #experience p { color:#333; display:inline-block; letter-spacing:normal; line-height:1.4; }

#s03 #experience ul { width:100%; letter-spacing:-.40em; height:250px; }
#s03 #experience ul li {
display:inline-block;
letter-spacing:normal;
height:250px;
margin:0;
position:relative;
}
#s03 #experience ul li a {
background-image:url(../images/top/section3/bg_experience.png);
background-position:left top;
background-repeat:repeat; 
display:block;
height:250px;
width:100%;
}
#s03 #experience ul,
#s03 #experience ul li,
#s03 #experience ul li a { height:230px; }

#s03 #experience ul.pattern03,
#s03 #experience ul.pattern03 li,
#s03 #experience ul.pattern03 li a { height:230px; }
#s03 #experience ul li a:hover { background-image:none; }

#s03 #experience ul.pattern00,
#s03 #experience ul.pattern01,
#s03 #experience ul.pattern02,
#s03 #experience ul.pattern03,
#s03 #experience ul.pattern04,
#s03 #experience ul.pattern05,
#s03 #experience ul.pattern06,
#s03 #experience ul.pattern07	{ margin-top:3%; }


#s03 #experience ul li span {
color:#fff;
font-weight:400;
position:absolute;
letter-spacing:-.40em; 
margin:auto;
top:0;
left:0;
bottom:0;
right:0;
padding:0;
text-align:center;
line-height:1.3;
vertical-align:middle; 
width:90%;
padding:0 5%;
}

#s03 #experience ul li span i {
display:inline-block;
letter-spacing:normal;
vertical-align:middle;
font-size:1.2vw;
opacity:0.8;
padding-right:10px;
width:15%:
}

#s03 #experience ul li span u {
border-left:1px solid #fff;
display:inline-block;
letter-spacing:normal;
vertical-align:middle;
padding-left:10px;
text-align:left;
text-decoration:none;
font-size:1.2vw;
position:relative;
width:85%:
}
#s03 #experience ul li a:hover u { text-shadow:; }

.w50p { width:50%; }
.w60p { width:60%; }
.w70p { width:70%; }
.w80p { width:80%; }
.w85p { width:85%; }
.w90p { width:90%; }
.w100p { width:100%; }

.h_2e { min-height:2em; max-height:4em; }
.h_3e { min-height:3em; max-height:5.2em; }

/*--------------------------------------- 
section4
--------------------------------------- */
#s04 { background:#fff; padding:5%; position:relative; }

/*--------------------------------------- 
page_nav
--------------------------------------- */
.page_nav {
position:absolute;
top:100px;
right:0;
height: 333px;
z-index: 111170;
width: 100px;
padding: 0;
margin:0;
text-align:right;
}
.page_nav ul {
text-align:right;
}
.page_nav ul li {
margin-bottom:2px;
text-align:right;
}
.page_nav ul li a {
background-color:#fff;
color:#000;
display:block;
font-weight:700;
font-size:85%;
margin:0;
padding:20px 0 0;
text-align:center;
text-decoration:none;
width:100px;
}
.page_nav ul li a:hover {}
.page_nav ul li a span {
display:block;
line-height:1.2;
padding:10px 0 20px;
text-align:center;
}

/*--------------------------------------- 
#information_area
--------------------------------------- */
#information_area { margin: 30px 0 0; width:100%; }
#information_area #information_area_cont { min-width:100%; }
#information_area #information_area_cont:after { content:" "; clear:both; display:block; }
#information_area .right_area { float:right; display:inline-block; letter-spacing:-.40em; min-height:700px; margin:0; width:68%; }
#information_area .right_area #instagram { display:inline-block; letter-spacing:normal; min-height:700px; margin-right:2%; vertical-align:top; width:49%; }
#information_area .right_area #facebook { display:inline-block; letter-spacing:normal; min-height:700px; vertical-align:top; width:49%; }

#information_area .left_area { margin: 0 70% 0 0; vertical-align:top; }
#information_area .left_area #news { margin:0; }
#information_area .left_area #news h3 { padding-bottom:30px; }
#information_area .left_area #news ol { width:100%; }
#information_area .left_area #news ol li { border-bottom:1px solid #ccc; letter-spacing:-.40em; margin-bottom:10px; padding-bottom:10px; display:inline-block; width:100%; }
#information_area .left_area #news ol li p { float:left; letter-spacing:normal; vertical-align:middle; width:100px; }
#information_area .left_area #news ol li dl { letter-spacing:normal; margin-left:120px; vertical-align:middle; }
#information_area .left_area #news ol li dl dt { font-size:93%; font-family:helvetica, arial; letter-spacing:normal; line-height:1.6; }
#information_area .left_area #news ol li dl dd { color:#666; font-size:93%; letter-spacing:normal; line-height:1.6; }
#information_area .left_area #news ol li dl dd a { color:#666; }
#information_area .left_area #news .link {  }
#information_area .left_area #news .link a { background-color:#f8f7f7; display:block; font-size:116%; letter-spacing:normal; padding:20px 0; text-align:center; text-decoration:none; width:100%; }
#information_area .left_area #news .link a:hover { background-color:#ffefef; }

/*--------------------------------------- 
#slider_area 
--------------------------------------- */
#slider_area { margin:0; position:relative; width:100%; }
#slider_area ul {
display:inline-block;
margin:0 5%;
text-align:center;
width:90%;
overflow:hidden;
text-align:center;
}
#slider_area ul:after { content:" "; display:block; clear:both; }
#slider_area ul li { display:inline-block; margin:0 15px; /*max-width:345px;*/ width:33.3%; }
#slider_area ul li a { display:block; }
#slider_area ul li img { max-width:100%; height:auto; }


/*--------------------------------------- 
button
--------------------------------------- */
button { background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; }
button.slick-prev.slick-arrow { min-height:95px; height:100%; background-color:#ccc; background-image:url(../images/top/section2/i_ar_left.png); background-position:center center; background-repeat:no-repeat; position:absolute; left:0; top:0px; text-indent:-9999px; width:3%; }
button.slick-next.slick-arrow { min-height:95px; height:100%; background-color:#ccc; background-image:url(../images/top/section2/i_ar_right.png); background-position:center center; background-repeat:no-repeat; position:absolute; right:0; top:0px; text-indent:-9999px; width:3%; }

/*--------------------------------------- 
pagetop
--------------------------------------- */
#pagetop { position:relative; margin:0 auto; text-align:center; margin:0 5%; width:90%; }
#pagetop a { display:block; position:absolute; width:109px; height:109px; right:0; bottom:-50px; }
#pagetop a img { width:100%; height:auto; }

/*--------------------------------------- 
footer
--------------------------------------- */
#footer { background-color:#000; margin:15px 0 0; padding:0; width:100%; }
#footer_cont { margin:0 auto; padding:20px 5%; text-align:center; letter-spacing:-.40em; }
#footer:after { content:" "; display:block; clear:both; }
#footer_cont:after { content:" "; display:block; clear:both; }
#footer #left_area { display:inline-block; letter-spacing:normal; margin:0 30px 0 0; text-align:left; float:left; width:222px; vertical-align:top; }
#footer #left_area h2 { display:inline-block; vertical-align:top; width:100%; }
#footer #left_area h2 img { width:100%; height:auto; vertical-align:top; }
#footer #left_area .info { clear:both; }
#footer #left_area p { text-align:left; color:#000; line-height:1.6; margin-top:0; }
#footer #center_area { float:left; display:inline-block; letter-spacing:normal; margin:0; width:400px; text-align:left; vertical-align:top;  }
#footer #center_area .info { display:inline-block; padding:0; vertical-align:top; text-align:right; letter-spacing:-.40em; }
#footer #center_area .info:after { content:" "; display:block; clear:both; }
#footer #center_area .info dl { display:inline-block; letter-spacing:normal; margin:0 20px 0 0; padding:0; vertical-align:top; text-align:left; }
#footer #center_area .info dl dt { color:#fff; font-size:116%; font-weight:700; margin-bottom:3px; }
#footer #center_area .info dl dd { text-align:left; }
#footer #center_area .info dl dd p { display:inline-block; letter-spacing:normal; margin:0 20px 0 0; padding:0; vertical-align:top; width:286px; height:38px; }
#footer #center_area .info dl dd p img { width:334px; height:38px; }
#footer #center_area .info dl dd span { color:#fff; display:block; font-size:100%; margin-top:3px; }
#footer #center_area .info dl dd span a { color:#fff; }

#footer #right_area { display:inline-block; letter-spacing:normal; margin:0; float:left; width:auto; vertical-align:top; }
#footer #right_area .info { text-align:left; }
#footer #right_area .info p { color:#fff; text-align:left; margin-top:10px; }
#footer #right_area .link_area { margin-top:5px; }
#footer #right_area .link_area:after { content:" "; display:block; clear:both; }
#footer #right_area .link_area ul { float:left; text-align:left; margin-right:15px; }
#footer #right_area .link_area ul li { text-align:left; }
#footer #right_area .link_area ul li a {
background-image:url(../images/common/i_ar_link2.png);
background-position:left 8px;
background-repeat:no-repeat;
color:#fff;
font-size:93%;
font-weight:500;
line-height:1.6;
padding-left:14px;
text-align:left;
}

#footer #right_area dl { margin:0; padding:0; }
#footer #right_area dl dt { text-align:left; }
#footer #right_area dl dt a {
background-image:url(../images/common/i_ar_link.png);
background-position:left 3px;
background-repeat:no-repeat;
font-weight:700;
line-height:1.6;
padding-left:24px;
text-align:left;
}

#footer #right_area dl dd { text-align:left; }
#footer #right_area dl dd a {
background-image:url(../images/common/i_ar_link2.png);
background-position:left 10px;
background-repeat:no-repeat;
font-weight:700;
line-height:1.6;
padding-left:14px;
text-align:left;
}
#footer p.copyright {
background-color:#e6001a;
clear:both;
color:#fff;
font-size:85%;
padding:5px 0;
text-align:center;
width:100%;
}

/*-------------------------------------------------------------------
max-width:1024px
-------------------------------------------------------------------*/
@media screen and (max-width:1024px) {

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

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

#s01 { min-width:100%; }

/*
#header { width:100%; min-width:100%; }
#header #header_cont { display:inline-block; table-layout:fixed; padding:0; width:100%; min-width:100%; max-width:100%; letter-spacing:-.40em; }
#header #header_cont #head_txt { display:inline-block; margin-top:1%; margin-right:5%; margin-left:0; width:33%; position:relative; top:0; left:0; height:auto; vertical-align:top; letter-spacing:normal; text-align:left; }
#header #header_cont #head_txt p { margin-top:0; width:100%; }
#header #header_cont #head_txt p a { display:block; }
#header #header_cont #head_txt p a img { max-width:100%; height:auto; width:auto; }
#header #header_cont h1 { display:inline-block; width:20%; position:relative; top:0; left:0; height:auto; vertical-align:middle; letter-spacing:normal; }
#header #header_cont h1 { box-shadow:none; }
#header #header_cont h1 span { width:auto; height:auto; }
#header #header_cont h1 img  { max-width:100%; height:auto; vertical-align:middle; width:auto; }
#header #header_cont #info { display:inline-block; width:33%; margin-right:0%; margin-left:5%; position:relative; top:0; left:0; height:auto; vertical-align:top; letter-spacing:normal; }
#header #header_cont #info p { margin-top:0; padding-right:0; width:100%; }
#header #header_cont #info p img  { max-width:100%; height:auto; width:auto; }
#header #header_cont #info a { display:none; }

#header #header_cont #head_txt p.large.en { margin-top:0; position:relative; width:100%; }
#header #header_cont #head_txt p.large.en img  { max-width:100%; height:auto; width:auto; }

#s01_footer { background-image:url(../images/common/bg_footer.png); background-position:center bottom; background-repeat:repeat; bottom:0; border-bottom:5px solid #e6001a; height:auto; min-height:auto; position:absolute; min-width:100%; width:100%; }
#s01_footer #menu { background-image:url(../images/common/bg_menu.png); background-position:right center; background-repeat:repeat-y; letter-spacing:-.40em; margin:0 auto; text-align:center; min-width:100%; width:100%; }
#s01_footer #menu li { display:inline-block; letter-spacing:normal; position:relative; max-width:235px; width:20%; vertical-align:top; }
#s01_footer #menu li:first-child { width:50%; max-width:50%; }
#s01_footer #menu li:nth-child(2) { width:50%; max-width:50%; }
#s01_footer #menu li:nth-child(3) { width:33.3%; }
#s01_footer #menu li:nth-child(4) { width:33.3%; }
#s01_footer #menu li:nth-child(5) { width:33.3%; }
#s01_footer #menu li .ico { text-align:center; display:inline; position:absolute; width:100px; height:28px; }
#s01_footer #menu li:first-child .ico { left:67px; margin:-18px 0 0; }
#s01_footer #menu li:nth-child(2) .ico { left:67px; margin:-22px 0 0; }
#s01_footer #menu li:nth-child(3) .ico { left:67px; margin:-21px 0 0; }
#s01_footer #menu li:nth-child(4) .ico { left:67px; margin:-14px 0 0; }
#s01_footer #menu li a { background-image:url(../images/common/bg_menu.png); background-position:left center; background-repeat:repeat-y; display:block; padding:40px 0; text-decoration:none; color:#fff; }
#s01_footer #menu li a:hover { background-color:#e6001a; }
#s01_footer #menu li a dl { height:60px; padding:0 10px; }
#s01_footer #menu li a dl dt { color:#fff; font-size:85%; font-weight:700; text-decoration:none; }
#s01_footer #menu li a dl dt img { max-width:50%; height:auto; display:none; }
#s01_footer #menu li a dl dd { color:#fff; font-size:85%; margin-top:17px; font-weight:700; text-decoration:none; }
#s01_footer #menu li a dl dd img { max-width:60%; display:none; }
*/

#s02 #title_area #title_area_cont { letter-spacing:-.40em; }
#s02 #title_area #title_area_cont .center_area h2 { font-size:3.3vw; }

#s02 #title_area #title_area_cont .figure { bottom:0; right:5%; }
#s02 #title_area #title_area_cont .voice { bottom:76%; right:13%; }
#s02 #title_area #title_area_cont .left_area { display:inline-block; letter-spacing:normal; width:100%; max-width:100%; }
#s02 #title_area #title_area_cont .left_area ul li { display:inline-block; letter-spacing:normal; width:12.5%; }
#s02 #title_area #title_area_cont .center_area { display:inline-block; letter-spacing:normal; padding:50px 0; width:100%; max-width:100%; }
#s02 #title_area #title_area_cont .right_area { display:inline-block; letter-spacing:normal; width:100%; max-width:100%; }
#s02 #title_area #title_area_cont .right_area ul li { display:inline-block; letter-spacing:normal; width:12.5%; }

#s02 #contents_area #fit { width:100%; }
#s02 #contents_area #fit h2 { padding:50px 0; }
#s02 #contents_area #fit .image_area { vertical-align:bottom; }
#s02 #contents_area #fit .image_area ul li { width:33.3%; }
#s02 #contents_area #fit .image_area ul li.figure_area { display:block; letter-spacing:normal; width:100%; vertical-align: top; }
#s02 #contents_area #fit .image_area ul li.figure_area dl { vertical-align: top; }
#s02 #contents_area #fit .image_area ul li.figure_area dl:after { content:" "; display:block; clear:both; }
#s02 #contents_area #fit .image_area ul li.figure_area dl dt { display:block; float:left; position:relative; left:0; bottom:0; margin:0; vertical-align:top; width:30%; height:auto; }
#s02 #contents_area #fit .image_area ul li.figure_area dl dt img { width:100%; height:auto; min-width:100%; max-width:100%; }
#s02 #contents_area #fit .image_area ul li.figure_area dl dd { display:inline-block; margin:0 0 0 10%; vertical-align:top; width:60%; }
#s02 #contents_area #fit .service dl dd ul li div span { position:relative; width:100%; left:0; bottom:0; }

#s02 #contents_area #group { width:100%; }
#s02 #contents_area #group h2 { padding:20px 0; }
#s02 #contents_area #group .image_area ul li { width:33.3%; }
#s02 #contents_area #group .image_area ul li.figure_area { display:block; letter-spacing:normal; width:100%; vertical-align: top; }
#s02 #contents_area #group .image_area ul li.figure_area dl { vertical-align: top; }
#s02 #contents_area #group .image_area ul li.figure_area dl:after { content:" "; display:block; clear:both; }
#s02 #contents_area #group .image_area ul li.figure_area dl dt { display:block; float:left; position:relative; left:0; bottom:0; margin:0; vertical-align:top; width:30%; height:auto; }
#s02 #contents_area #group .image_area ul li.figure_area dl dt img { width:100%; height:auto; min-width:100%; max-width:100%; }
#s02 #contents_area #group .image_area ul li.figure_area dl dd { display:inline-block; margin:0 0 0 10%; vertical-align:top; width:60%; }
#s02 #contents_area #group .service dl dd ul li div span { position:relative; width:100%; left:0; bottom:0; }

#s02 .page_nav { display:none; }

#s03 ul li { margin-bottom:50px; width:50%; }
#s03 ul li .item .pic { background-color:#fff; text-align:center; padding:10px; vertical-align:middle; }

button.slick-prev.slick-arrow { min-height:100% }; 

#footer_cont { padding:20px 0; }
#footer #left_area { float:none; width:20%; letter-spacing:normal; }
#footer #center_area { float:none; width:50%; letter-spacing:normal; }
#footer #right_area { float:none; width:20%; letter-spacing:normal; }

#pagetop { margin:0; }
#pagetop a { display:block; position:absolute; width:80px; height:80px;  right:20px; bottom:-60px; }

}

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

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

#s01 { width:100%; }
#s01 h2 { height: 3.2rem; font-size: 6vw; }
#s02 { background:#efefef; padding:5%; position:relative; width:100%; }
#s02 .page_nav { display:none; }

#s02 #contents_area #fit { width:100%; margin-bottom:20px;  }
#s02 #contents_area #group .image_area ul li.figure_area { display:none; }
#s02 #contents_area #group { width:100%; }
#s02 #contents_area #group .image_area ul li.figure_area { display:none; }

#s03 ul li .item h4 { font-size:2.3vw;  }

#s04 { background:#fff; padding:5%; position:relative; width:100%; }

#information_area .left_area #news { margin:40px 0 0; }
#information_area .right_area { float:none; width:100%; }
#information_area .left_area { margin:0; vertical-align:top; float:none; width:100%; }
button.slick-prev.slick-arrow { min-height:auto; }
button.slick-next.slick-arrow { min-height:auto; }

#pagetop { position:relative; margin:0 auto; text-align:center; margin:0 auto; width:100%; }

#footer_cont { padding:20px 5%; }
#footer #left_area { margin:0 0 20px; float:none; width:100%; }
#footer #left_area h2 { max-width:111px; }
#footer #center_area { margin:0 0 20px; float:none; text-align:left; width:100%; }
#footer #right_area { margin:0; float:none; width:100%; }

}