@charset "UTF-8";
/* Reset */
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
ul { margin: 0; padding: 0; list-style: none; }
dl { margin: 0; padding: 0; }
small { font-size: 0.750em; }
img { vertical-align: bottom; }
form, input, textarea { margin: 0; padding: 0; }
/* Content */
body { background: #F4F4F0; margin: 0; padding: 0; color: #000000; font-family: 'Lato', sans-serif; font-weight: 400; letter-spacing: 0.025em; }
.bg_w { background: #FFFFFF; width: 100%; border-top: 1px solid #F4F4F0; border-bottom: 1px solid #F4F4F0; padding: 60px 0; overflow: hidden; }
.bg_g { border-top: 1px solid #FFFFFF; border-bottom: 1px solid #FFFFFF; padding: 60px 0; width: 100%; overflow: hidden; }
.bg_g_no_border { border-top: 1px solid #FFFFFF; border-bottom: 0px solid #FFFFFF; padding: 60px 0; width: 100%; overflow: hidden; }
.bg_p { background: #FE7D6A url(../images/bg_mission_2.png) top center no-repeat; width: 100%; padding: 60px 0; overflow: hidden; }
.bg_service { background: #F4F4F0 url(../images/bg_service_2.png) top right no-repeat; background-size: auto 240px; width: 100%; border-top: 1px solid #FFFFFF; border-bottom: 1px solid #FFFFFF; padding: 120px 0 60px; overflow: hidden; }
.bg_about { background: #FFFFFF url(../images/bg_about.png) bottom center no-repeat; width: 100%; border-top: 1px solid #F4F4F0; padding: 60px 0; overflow: hidden; }
.container { margin: 0 auto; padding: 0 10px; width: 100%; }
.container .con_half_l { width: 100%; }
.container .con_half_r { width: 100%; }
.container .con_purple { width: 100%; overflow: hidden; }
.container .con_green { width: 100%; overflow: hidden; }
.container h2 { margin: 0 0 60px 0; font-size: 2.000em; font-weight: 300; text-align: center; }
.container h2 span { border-bottom: 3px solid #000000; padding: 0 0 10px 0; }
.container h3 { clear: both; padding: 40px 0 30px; font-size: 1.250em; font-weight: 700; font-style: italic; text-align: center; letter-spacing: 0.1em; }
.container h3.h3_top { padding: 0 0 30px; }
.container h3.h3_top_service { padding: 20px 0 30px; }
.container h3.h3_pink { color: #F07485; }
.container h3.h3_purple { color: #B279B2; }
.container h3.h3_green { margin: 50px 0 0 0; color: #9AB253; }
.container h4 { padding: 0 0 20px; font-size: 1em; font-weight: 700; font-style: italic; text-align: center; letter-spacing: 0.1em; line-height: 200%; }
.container p { line-height: 200%; }
.container p.txt_center { text-align: center; }
.container ul { margin: 0 -10px 0 0; overflow: hidden; }
.container ul li { float: left; background: url(../images/list_square.png) no-repeat left 6px; background-size: 6px auto; margin: 0 0 20px 0; padding: 0 10px 0 11px; width: 50%; font-size: 0.875em; }
.container dl { width: 100%; font-size: 0.875em; text-align: center; }
.container dl dt { clear: both; margin: 0 0 10px 0; width: 100%; font-weight: 700; font-style: italic; }
.container dl dd { margin: 0 0 20px 0; width: 100%; }
.container dl dt:last-child { margin: 0; }
.container dl dd:last-child { margin: 0; }
.container a { color: #000000; }
.container a:hover { text-decoration: none; }
.container input.ipt_txt { border: 1px solid #B9B9B7; padding: 0 10px; width: 100%; height: 40px; font-size: 1em; line-height: 40px; }
.container input:focus { background: #F4F4F0; outline: none; }
.container textarea { border: 1px solid #B9B9B7; padding: 0 10px; width: 100%; height: 80px; font-size: 1em; line-height: 150%; }
.container textarea:focus { background: #F4F4F0; outline: none; }
.container input.ipt_submit { background: #AFCB63; border: none; border-bottom: 3px solid #9BB354; width: 100%; color: #FFFFFF; font-size: 1.250em; font-style: italic; line-height: 40px; letter-spacing: 0.1em; }
.bg_p h2 { color: #FFFFFF; }
.bg_p h2 span { border-bottom: 3px solid #FFFFFF; }
.bg_p p { color: #FFFFFF; }
.con_green dl dt { display: none; margin: 0 20px 0 0; width: 20px; text-align: center; }
.con_green dl dt img.img_w20 { width: 20px; height: auto; }
.con_green dl dt img.img_w29 { width: 20px; height: auto; }
.con_green dl dd { width: 100%; text-align: left; }
.con_submit { margin: 20px 0 0; width: 100%; }
/* Header and Nav */
.bg_g_head { background: url(../images/bg.png) no-repeat top center; border-bottom: 1px solid #FFFFFF; padding: 40px 0; width: 100%; overflow: hidden; }
.head_con { margin: 0 auto; padding: 0 10px; width: 100%; }
.head_con_h1 { margin: 0; padding: 40px 10px 30px; width: 100%; text-align: center; }
.head_logo { text-align: center; }
.head_logo img { width: auto; height: 16px; }
nav { margin: 40px auto 0; border-top: 1px solid #000000; border-bottom: 1px solid #000000; width: 100%; }
nav ul { width: 100%; overflow: hidden; }
nav ul li { display: inline-block; margin: 0; padding: 0; width: 19%; font-size: 0.563em; font-weight: 700; letter-spacing: 0.1em; text-align: center; vertical-align: middle; }
nav ul li a { display: block; padding: 20px 0; color: #000000; text-decoration: none; }
.lang_jp a { display: none; }
h1 { margin: 0; font-size: 1.750em; font-weight: 700; font-style: italic; letter-spacing: 0.1em; }
.h1_sub { margin: 20px 0 0 0; font-size: 1em; font-weight: 700; font-style: italic; letter-spacing: 0.1em; line-height: 175%; }
/* Form */
#captcha_image { margin: 0 0 20px; }
#error_top { width: 100%; text-align: center; }
#name_error, #email1_error, #email2_error, #comment_error, #captcha_error { background: #F07485; margin: 0 0 1px 0; padding: 10px 0; color: #FFF; font-size: 0.750em; }
.txt_red { color: #F07485; }
/* Footer */
footer { background: #000000; padding: 30px 0; width: 100%; color: #FFFFFF; font-size: 0.750em; text-align: center; }
/* To top */
#totop { position: fixed; bottom: 40px; right: 10px; }
#totop img { width: 50px; height: auto; }
#totop a { display: block; }
/* Confirm */
.container input.ipt_back { background: #B9B9B7; border: none; border-bottom: 3px solid #979795; width: 100%; color: #FFFFFF; font-size: 1.250em; font-style: italic; line-height: 40px; letter-spacing: 0.1em; -webkit-transition: opacity 0.5s; -moz-transition: opacity 0.5s; -ms-transition: opacity 0.5s; -o-transition: opacity 0.5s; transition: opacity 0.5s; }
.container .con_green_2nd { float: left; border-left: 3px solid #9AB253; padding: 0 0 0 20px; width: 100%; overflow: hidden; }
.con_green_2nd dl { width: 100%; }
.con_green_2nd dl dt { display: none; margin: 0 20px 0 0; width: 20px; text-align: center; }
.con_green_2nd dl dt img.img_w20 { width: 20px; height: auto; }
.con_green_2nd dl dt img.img_w29 { width: 20px; height: auto; }
.con_green_2nd dl dd { width: 100%; text-align: left; word-wrap: break-word; }
.con_back { float: left; margin: 20px 0; width: 100%; }
.con_back_3rd { margin: 20px auto 0; width: 100%; text-align: center; }
.bg_g_head_2nd { background: url(../images/bg.png) no-repeat top center; border-bottom: 1px solid #FFFFFF; padding: 40px 0; width: 100%; overflow: hidden; }
/* Banner */
.banner { margin: 40px 0 0; text-align: center; }
.banner img { max-width: 100%; }
/* Books */
.books_container { border-top: 1px solid #F4F4F0; margin: 20px 0 0; padding: 20px 0; overflow: hidden; }
.books_container .books_l { width: 100%; text-align: center; }
.books_container .books_c { margin: 20px 0 0; width: 100%; }
.books_container .books_c h3 { margin: 0; padding: 0; color: #F07485; line-height: 150%; }
.books_container .books_c h3 span { font-size: 0.750em; }
.books_container .books_c h4 { margin: 20px 0 0; padding: 0; text-align: left; }
.books_container .books_c p { margin: 0; font-size: 0.875em; }
.books_container .books_r { width: 100%; }
.books_container .books_r a { display: block; background: #F4F4F0; border: 1px solid #B9B9B7; margin: 20px 0 0; width: 100%; font-size: 1.000em; font-style: italic; text-decoration: none; text-align: center; line-height: 40px; letter-spacing: 0.1em; }
.books_container .books_r a span { font-size: 0.688em; }
.books_container .books_r ul { display: none; }
/* Download */
.ul_download { display: block; margin: 0 !important; padding: 0 !important; width: 100%; }
.ul_download li { float: none; background: none !important; margin: 0; padding: 0; width: 100% !important; text-align: center; }
.ul_download li:hover { opacity: 0.75; }
.ul_download li img ( width: 320px !important;)