/**
BASIC
*/

body {
    font-family: 'Hiragino Kaku Gothic Pro', Meiryo, "lucida grande", tahoma, verdana, arial, 'MS PGothic', sans-serif;
    line-height: 1;
    background: #FFF;
    color: #333;
    font-size: 90%;
    /*background: url(../images/bg/white_wall.png);*/
    /*overflow-x: hidden;*/
}

a img,
:link img,
:visited img {
    border: none;
}

img {
    max-width: 100%;
}

a {
    text-decoration: underline;
    outline: 0;
}

a:link {
    color: #666;
    outline: 0;
}

a:visited {
    color: #666;
    outline: 0;
}

a:active {
    color: #999;
    outline: 0;
}

a:hover {
    color: #999;
    text-decoration: none;
    outline: 0;
}

a {
    transition: 0.2s ease 0s;
    -webkit-transition: 0.2s ease 0s;
    -moz-transition: 0.2s ease 0s;
    -ms-transition: 0.2s ease 0s;
}

a:hover {
    opacity: 1.0;
    -webkit-opacity: 1.0;
    -moz-opacity: 1.0;
    filter: alpha(opacity=100);
    -ms-filter: "alpha(opacity=100)";
}

a.link_none {
    ointer-events: none;
}

#wrapper {
    margin: 0;
    padding: 0;
    clear: both;
}

#contents {
    /*width: 1120px;
	margin: 0 auto;
	padding-top: 119px;*/
    background-color: #FFF;
}

#home #contents {
    margin-top: -171px;
    z-index: 20;
    /*margin-top: -291px;*/
}

.slider-pro {
    /*margin-bottom: 255px !important;
	padding-top: 120px;*/
}

#main_contents {
    float: left;
    width: 850px;
    margin-right: 20px;
}

#sidebar {
    float: left;
    width: 250px;
}

.inner {
    width: 1120px;
    /*max-width: 1120px;*/
    margin: 0 auto;
    position: relative;
}

#attention {
    color: #FFF;
    /*text-align: center;*/
    padding: 8px;
    width: 100%;
    z-index: 99999;
    position: relative;
    /*position: fixed;*/
    background: #717777;
    font-size: 90%;
    font-weight: bold;
}

#attention i {
    font-size: 130%;
    vertical-align: middle;
}

#attention.red {
    background: #d97b6f;
}

#attention.gray {
    background: #717777;
}

#attention p {
    margin: 0;
}

#attention a {
    color: #FFF;
    text-decoration: underline;
}

#attention a:hover {
    text-decoration: none;
}


/**
ROLLOVER
*/

a img:hover {
    /* IE
	filter: alpha(opacity=70);*/
    /* Safari Opera */
    opacity: 0.90;
    /* Firefox Netscape */
    -moz-opacity: 0.90;
}

a img.crew_img:hover {
    /* IE
	filter: alpha(opacity=70);*/
    /* Safari Opera */
    opacity: 1.00;
    /* Firefox Netscape */
    -moz-opacity: 1.00;
}


/**
HEADER
*/

#header {
    background: rgba(255, 255, 255, 0.8);
    z-index: 100;
    position: relative;
    /*position: fixed;
	width: 100%;*/
}

p.site_catch {
    font-size: 85%;
    font-weight: normal;
    line-height: 1.4;
    margin: 0;
    padding: 10px 0;
}

#header h1 span {
    margin-right: 1em;
}

#header h1.logo {
    /*font-size: 50px;*/
    margin: 15px 0 10px 0;
}

#header h1.logo img.title {
    max-height: 40px;
}


/**
SOCIAL
*/

#header .box_social {
    position: absolute;
    top: 10px;
    right: 0;
}

#header .sub_navi {
    position: absolute;
    top: 13px;
    right: 250px;
}

.box_social ul li {
    list-style: none;
    display: inline;
    margin-left: 0px;
    vertical-align: middle;
}

.box_social.own ul li {
    margin: 0 5px;
}

.box_social ul li.button {
    margin-left: 10px;
}

.box_social ul li img {
    width: 24px;
}

.box_social.own ul li img {
    width: 32px;
}

.box_social ul li span,
.box_social ul li i {
    display: inline-block;
    color: #717777;
    line-height: 24px;
    font-size: 24px;
    text-align: center;
    width: 20px;
    /*
	height: 20px;
	background-color: #666;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;*/
}

#header .box_social ul li span,
#header .box_social ul li i {
    font-size: 20px;
    line-height: 30px;
    vertical-align: middle;
    width: 28px;
}

.block.article .box_social li.facebook i {
    background-color: #315096;
}

.block.article .box_social li.hatena span {
    background-color: #008fde;
}

.block.article .box_social li.twitter i {
    background-color: #55acee;
}


/**
SUB NAVI
*/

.sub_navi {
    float: right;
}

.sub_navi.new_footer_link {
    float: none;
    margin-left: auto;
    margin-bottom: 20px;
    max-width: 925px;
}

.sub_navi ul li {
    display: inline;
    margin-right: 1em;
    line-height: 1.5;
    font-size: 12px;
}

.sub_navi ul li a {
    text-decoration: none;
    outline: 0;
}

.sub_navi ul li a:link {
    color: #333;
    outline: 0;
}

.sub_navi ul li a:visited {
    color: #333;
    outline: 0;
}

.sub_navi ul li a:active {
    color: #333;
    outline: 0;
}

.sub_navi ul li a:hover {
    color: #666;
    text-decoration: none;
    outline: 0;
}

.sub_navi.new_footer_link ul:nth-of-type(1) {
    text-align: right;
    margin-bottom: 10px;
}

#footer .sub_navi ul li a {
    text-decoration: none;
    outline: 0;
}

#footer .sub_navi ul li a:link {
    color: #FFF;
    outline: 0;
}

#footer .sub_navi ul li a:visited {
    color: #FFF;
    outline: 0;
}

#footer .sub_navi ul li a:active {
    color: #FFF;
    outline: 0;
}

#footer .sub_navi ul li a:hover {
    color: #EEE;
    text-decoration: none;
    outline: 0;
}


/**
GLOBAL NAVI
*/

.megamenu li {
    width: 16.666666%;
    line-height: 1;
    font-family: 'Hiragino Kaku Gothic Pro', "Meiryo", "MS Gothic";
}

.megamenu li a.megamenu_drop {
    font-size: 14px;
    white-space: nowrap;
}

.megamenu li a {
    color: #717777;
}


/*.megamenu li.active a,*/

.megamenu li a:hover {
    color: #FFF;
    /*color: #cd3e2c;*/
    background-color: rgba(113, 119, 119, 0.7);
}

.megamenu li.megamenu_button a:hover {
    background-color: inherit;
}

.megamenu li i {
    font-size: 26px;
    margin-right: 10px;
    vertical-align: middle;
    white-space: nowrap;
}

.megamenu li span.text {
    font-size: 10px;
    color: #cd3e2c;
    margin-left: 5px;
}

.megamenu img.photo {
    width: 250px;
}

.megamenu p {
    margin: 0 0 1em 0 !important;
    font-size: 100%;
}

.megamenu ul {
    clear: both;
    padding: 0px 0;
}

.megamenu ul li {
    list-style: none;
    display: block;
    float: left;
    margin-right: 10px;
    margin-left: 0px;
    width: auto;
}

.megamenu ul li a {
    padding: 15px;
    font-size: 13px;
    border: solid 2px #FFF;
    color: #FFF;
    display: inline-block;
    margin-top: 10px;
}

.megamenu>li>span {
    /* font-size: 12px; */
}


/*.megamenu li a{
	text-transform: uppercase;
    outline: 0;
    text-decoration: none;
	display: inline-block;
    padding: 16px 15px 17px 15px;
}
*/

.megamenu .sp {
    display: none;
}

.megamenu ul li a:hover {
    background: rgba(255, 255, 255, 1.0);
    color: #666;
}

.dropdown_fullwidth {
    color: #FFF;
    left: 0px !important;
}

.dropdown_fullwidth:after {
    content: "";
    position: absolute;
    top: -10px;
    margin-left: -10px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent rgba(0, 0, 0, 0.7) transparent;
}

ul li .dropdown_fullwidth:after {
    display: none;
}


/*ul li.about .dropdown_fullwidth:after{left: 50px;}
ul li.vision .dropdown_fullwidth:after{left: 240px;}
ul li.solution .dropdown_fullwidth:after{left: 430px;}*/


/*.megamenu_container{
	width: 1120px;
	margin: 0 auto;
}*/


/**
TOPIC PATH
*/

#topic_path {
    clear: both;
    padding: 10px 0;
    clear: both;
    border-top: solid 1px #EEE;
}

#topic_path li {
    display: inline;
    font-size: 12px;
    line-height: 130%;
    list-style-type: none;
    color: #999;
}

#topic_path li a {
    padding-right: 18px;
    background: url(../images/arrow_right.png) no-repeat right center;
    background-size: 6px;
}


/**
LOADING
*/

#loader {
    width: 35px;
    height: 35px;
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    /*margin-top: -40px;
    margin-left: -40px;*/
    z-index: 445;
    /* #fade郢ｧ蛹ｻ�願棔螢ｹ�櫁屐�､ */
}

#fade {
    width: 100%;
    height: 100%;
    display: none;
    background-color: #fff;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 444;
    /* #loader郢ｧ蛹ｻ�願氣莉｣竊醍ｸｺ�ｽﾂ�､ */
}

#header
/*#contents*/

{
    z-index: 9999;
}


/**
ACCORDION
*/

.simple_accordion {
    cursor: pointer;
}

.hide {
    display: none;
}


/*
.content_detail{
	display: none;
}*/

.accordion .title {
    background: url(../images/arrow_down.png) no-repeat 98% 50%;
    background-size: 30px;
}

.accordion .title.more {
    background: url(../images/arrow_down.png) no-repeat right center;
    background-size: 16px;
    padding-right: 20px;
}

.accordion .title.active {
    background: url(../images/arrow_up.png) no-repeat 98% 50%;
    background-size: 30px;
}

.accordion .title.more.active {
    background: url(../images/arrow_up.png) no-repeat right center;
    background-size: 16px;
    padding-right: 20px;
}

dl.faq.accordion dt {
    background: url(../images/arrow_down.png) no-repeat 98% 50% rgba(0, 0, 0, 0.03);
    padding: 10px;
    background-size: 30px;
    clear: both;
}

dl.faq.accordion dt.active {
    background: url(../images/arrow_up.png) no-repeat 98% 50% rgba(0, 0, 0, 0.03);
    background-size: 30px;
}

dl.faq.accordion dd {
    padding: 10px;
}


/**
BOTTOM_NAVI
*/

ul.bottom_navi {
    margin-bottom: 20px;
}

ul.bottom_navi li {
    line-height: 1.5;
    font-size: 13px;
    list-style: none;
    float: left;
    width: 16.5%;
}

ul.bottom_navi li h3 {
    font-size: 130%;
    margin-bottom: 5px;
    color: #FFF;
    cursor: auto;
}

ul.bottom_navi li ul li {
    font-size: 85%;
    float: none;
    width: 100%;
    color: #DDD;
    margin-bottom: 2px;
    width: 90%;
}

ul.bottom_navi li ul li .box_social ul {
    margin-top: 10px;
}

ul.bottom_navi li a {
    text-decoration: none;
    outline: 0;
}

ul.bottom_navi li a:link {
    color: #FFF;
    outline: 0;
}

ul.bottom_navi li a:visited {
    color: #FFF;
    outline: 0;
}

ul.bottom_navi li a:active {
    color: #FFF;
    outline: 0;
}

ul.bottom_navi li a:hover {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    outline: 0;
}


/**
COMMON_LAYOUT
*/

.corner {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

.shadow {
    box-shadow: 0px 0px 5px #CCC;
    -moz-box-shadow: 0px 0px 5px #CCC;
    -webkit-box-shadow: 0px 0px 5px #CCC;
}

.shadow_bottom {
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 12px 12px -12px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 2px 2px 0px #EEE;
}

.txt.shadow {
    text-shadow: 1px -1px 0 rgba(0, 0, 0, 1);
}

.box.error {
    border: solid 1px #F00;
    color: #F00;
    padding: 10px;
    margin: 1em 0;
    text-align: center;
}

.box.caution {
    border: solid 2px #EEE;
    padding: 20px;
    margin: 1em 0;
}

.box.profile {
    padding: 20px;
    margin: 1em 0;
    font-size: 80%;
    color: #666;
    background-color: #EEE;
}

.box.gradient {
    padding: 20px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f3f3f3+0,ffffff+100&1+0,0+100 */
    background: -moz-linear-gradient(top, rgba(243, 243, 243, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(243, 243, 243, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(243, 243, 243, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f3', endColorstr='#00ffffff', GradientType=0);
    /* IE6-9 */
}

.box.sns {
    padding: 20px;
    margin: 1em 0;
    font-size: 80%;
    color: #666;
    /*background-color: rgba(0,0,0,0.03);*/
    border: double 3px #EEE;
    text-align: center;
}


/**BOX INFO*/

.box.info {
    padding: 30px;
    /*margin: 1em 0;
	border: solid 2px #cd3e2c;*/
    background-color: rgba(205, 62, 44, 0.05);
    text-align: center;
}

.box.info h3 {
    font-size: 150%;
    color: #cd3e2c;
}

.box.info ul {
    margin: 1.5em 0;
}

.box.info ul li {
    text-align: center;
}

.box.info ul li.tel {
    font-size: 200%;
    height: 60px;
    line-height: 60px;
    font-family: 'Montserrat', sans-serif;
}

.box.info ul li.tel,
.box.info ul li.tel a {
    color: #cd3e2c;
}

.box.info ul li.tel p.caution {
    font-size: 50%;
    margin: 0;
}

.fl_left {
    float: left;
    margin: 0 10px 5px 0;
}

.fl_right {
    float: right;
    margin: 0 0 5px 10px
}

.clear {
    clear: both;
}

img {
    vertical-align: middle;
}

img.frame {
    padding: 5px;
    border: solid 1px #EEE;
    background-color: #FFF;
}

.block {
    margin-bottom: 0px;
    padding: 20px 0;
}

.block.gray {
    background-color: rgba(0, 0, 0, 0.02);
}


/**
ICON
*/

span.category_icon a,
span.category_icon span {
    padding: 5px;
    line-height: 1;
    margin-bottom: 5px;
    /*background-color: #cd3e2c;*/
    background-color: rgba(205, 62, 44, 0.7);
    color: #FFF;
    font-size: 12px;
    text-decoration: none;
}

span.category_icon.tag a {
    background-color: #CCC;
}

span.category_icon.cate_4 a {
    background-color: rgba(241, 129, 213, 0.7);
}

span.category_icon.cate_3 a {
    background-color: rgba(216, 102, 62, 0.7);
}

span.category_icon.cate_2 a {
    background-color: rgba(44, 188, 205, 0.7);
}

span.category_icon.cate_35 a {
    background-color: rgba(44, 135, 205, 0.7);
}

span.category_icon.cate_6 a {
    background-color: rgba(205, 108, 44, 0.7);
}

span.category_icon.cate_7 a {
    background-color: rgba(205, 161, 44, 0.7);
}

span.category_icon.cate_8 a {
    background-color: rgba(205, 203, 44, 0.7);
}

span.category_icon.cate_9 a {
    background-color: rgba(158, 205, 44, 0.7);
}

span.category_icon.cate_10 a {
    background-color: rgba(44, 205, 135, 0.7);
}

span.category_icon.cate_11 a {
    background-color: rgba(44, 188, 205, 0.7);
}


/*span.category_icon.cate_12 a{background-color: rgba(44,135,205,0.7);}*/

span.category_icon.cate_12 a {
    background-color: rgba(44, 44, 205, 0.7);
}

span.category_icon.cate_90 a {
    background-color: rgba(40, 129, 220, 0.7);
}

span.category_icon.cate_92 a {
    background-color: rgba(219, 116, 189, 0.7);
}

#news .block.head ul li.cate_6.active a,
#news .block.head ul li.cate_6 a:hover {
    background-color: rgba(205, 108, 44, 1.0);
}

#news .block.head ul li.cate_7.active a,
#news .block.head ul li.cate_7 a:hover {
    background-color: rgba(205, 161, 44, 1.0);
}

#news .block.head ul li.cate_8.active a,
#news .block.head ul li.cate_8 a:hover {
    background-color: rgba(205, 203, 44, 1.0);
}

#news .block.head ul li.cate_9.active a,
#news .block.head ul li.cate_9 a:hover {
    background-color: rgba(158, 205, 44, 1.0);
}

#news .block.head ul li.cate_10.active a,
#news .block.head ul li.cate_10 a:hover {
    background-color: rgba(44, 205, 135, 1.0);
}

#news .block.head ul li.cate_11.active a,
#news .block.head ul li.cate_11 a:hover {
    background-color: rgba(44, 188, 205, 1.0);
}


/*#news .block.head ul li.cate_12.active a,#news .block.head ul li.cate_12 a:hover{background-color: rgba(44,135,205,1.0);}*/

#news .block.head ul li.cate_12.active a,
#news .block.head ul li.cate_12 a:hover {
    background-color: rgba(44, 44, 205, 1.0);
}

#news .block.head ul li.cate_90.active a,
#news .block.head ul li.cate_90 a:hover {
    background-color: rgba(40, 129, 220, 1.0);
}

#news .block.head ul li.cate_92.active a,
#news .block.head ul li.cate_92 a:hover {
    background-color: rgba(219, 116, 189, 1.0);
}


/*span.category_icon.cate_1 a{background-color: #F90;}
span.category_icon.cate_2 a{background-color: #69C;}*/


/**
COLUMN
*/

.column {
    clear: both;
}

.column p:first-child {
    margin-top: 0;
}

.column .left {
    float: left;
    margin-right: 1%;
}

.column .right {
    float: right;
    margin-left: 1%;
}

.column .wide {
    width: 65%;
}

.column .narrow {
    width: 33%;
}

.column .half {
    width: 48%;
}

.column img.image {
    width: 100%;
}


/**
COMMON_PARTS
*/

div.title {
    position: relative;
    margin: 10px 0 20px 0;
    clear: both;
}

div.title .more {
    position: absolute;
    right: 0;
    bottom: 0px;
}


/*div.title.h2_main{
	padding: 10px 0;
}*/

div.title h2 {
    font-size: 200%;
    line-height: 1.2;
    color: #666;
    font-family: 'Montserrat', 'Hiragino Kaku Gothic Pro', "Meiryo", sans-serif;
    center;
}

div.title h2 i {
    color: #cd3e2c;
    margin-right: 10px;
}

div.title h2 span.sub {
    font-size: 60%;
    margin-left: 1em;
}

div.title h3 {
    font-size: 200%;
    line-height: 1.2;
    padding-bottom: 5px;
    font-family: 'Montserrat', Meiryo, sans-serif;
}

div.title h3 {
    text-align: center;
    color: #cd3e2c;
    line-height: 1;
}

div.title h3 span.sub {
    font-size: 60%;
    margin-left: 1em;
}

div.title.center h3 {
    font-size: 20px;
    line-height: 1.2;
    margin: 1em 0;
    color: #999;
    font-weight: normal;
    text-align: center;
}

div.title.center h3 {
    display: flex;
    align-items: center;
    text-align: center;
    /* for no-flexbox browsers */
    border: none;
}

div.title.center h3:before,
div.title.center h3:after {
    border-top: 1px solid #F3F3F3;
    content: "";
    display: inline;
    /* for IE */
    flex-grow: 1;
}

div.title.center h3:before {
    margin-right: 0.5em;
}

div.title.center h3:after {
    margin-left: 0.5em;
}

div.title h4 {
    font-size: 160%;
    color: #cd3e2c;
    line-height: 1;
}

div.title h4 {
    padding: 20px 30px;
    line-height: 1.4;
    border-left: solid 1px #cd3e2c;
}

div.title h5 {
    font-size: 130%;
    /*color: #cd3e2c;*/
    color: #666;
    line-height: 1;
    margin-bottom: -.5em;
}

h6 {
    margin-bottom: .5em;
    font-weight: bold;
    font-size: 110%;
}

.margin_none {
    margin: 0 !important;
}

i.map {
    font-size: 130%;
    color: #ff9999;
}

p {
    line-height: 1.5;
    margin: 1em 0;
    word-break: break-all;
}

p.center {
    text-align: center;
}

h2.announce {
    text-align: center;
    margin: 0 0 0.5em;
}

p.lead {
    font-size: 120% !important;
    line-height: 1.6;
    margin: 1em 0;
}

p.catch {
    font-size: 180% !important;
    margin: 1em 0 0 0;
}

p.catch:first-child {
    margin-top: 0;
}

p.more {
    text-align: right;
    margin: 15px 0;
}

p.frame span {
    margin-left: 1%;
    display: inline-block;
}

p.frame a {
    display: inline-block;
    border: solid 2px #cd3e2c;
    padding: 10px 40px;
    text-decoration: none;
    color: #cd3e2c;
    font-size: 14px !important;
}

p.frame a:hover {
    background: #cd3e2c;
    color: #FFF;
}

/* 2022/12/23 about/ceo メッセージ専用のボタン */
p.frame-ceo span:first-child {
    margin-left: 0;
}
p.frame-ceo a {
    border-color: white;
    color: white;
}

p.frame-ceo a:hover{
    background: white;
    color: #cd3e2c;
}
@media screen and (max-width: 767px) {
    p.frame-ceo {
        display: none;
    }
}
/* ここまで 2022/12/23 about/ceo メッセージ専用のボタン */

p.frame a.bk_red {
    color: #fff;
    background: #cd3e2c;
}
p.frame a.bk_red:hover {
    color: #cd3e2c;
    background: #fff;
}

p.frame i {
    margin-left: 10px;
}

p.button {
    text-align: center;
    margin: 2em 0;
    clear: both;
}

p.to_top {
    text-align: right;
}

p em {
    font-weight: bold;
}

.txt_small {
    font-size: 85%;
}

.txt_big {
    font-size: 120%;
}

.caution,
.caption {
    font-size: 85%;
    color: #666;
    line-height: 1.3;
    font-weight: normal;
}

ul.caution li {
    margin: 0.3em 0 0.3em 20px;
    line-height: 1.3;
}

hr {
    border-width: 1px 0px 0px 0px;
    border-style: solid;
    border-color: #EEE;
    height: 1px;
    margin: 1em 0;
    clear: both;
}

span.mark.new,
span.mark.update {
    margin-left: 1em;
    font-weight: normal;
    font-size: 12px;
    color: #F00;
}

.clear_none {
    clear: none !important;
}

p.arrow_bottom i {
    font-size: 350%;
    color: #CCC;
}


/*.circle{
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	background-color: rgba(255,255,255,0.3);
	color: #FFF;
	padding: 0 5px;
}*/


/**
HOME
*/

.bx-wrapper .bx-viewport {
    background: inherit !important;
}

.bx-wrapper a.bx-prev,
.bx-wrapper a.bx-next {
    transition: none;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    z-index: 333 !important;
}

.bx-wrapper a.bx-prev {
    left: -50px !important;
}

.bx-wrapper a.bx-next {
    right: -40px !important;
}

.block.pickup {
    clear: both;
    background-color: #717777;
    padding: 20px 0;
}

.block.pickup h3 {
    color: #FFF !important;
}

.block.pickup ul.item li p.date {
    color: #FFF;
    display: inline;
}

.block.pickup ul.item li p.title {
    font-size: 85%;
    color: #FFF;
    margin: 5px 0 0 0;
    line-height: 1.3;
}

.block.pickup ul.item li p.title a {
    color: #FFF;
    text-decoration: none;
}

.block.pickup ul.item li p.title a:hover {
    color: rgba(255, 255, 255, 0.6);
}


/**SHARE*/

.block.share {
    background-color: #f6f6f6;
    padding: 30px 0 20px 0;
    margin-bottom: 0;
}

.block.share .title {
    margin-top: 0;
}

.block.share .title h5 {
    margin: 0 !important;
}

.block.share li.mail_magazine table th,
.block.share li.mail_magazine table td {
    background-color: #FFF;
    border: none;
    border-bottom: solid 1px #f6f6f6;
    padding: 15px;
}

.block.share li.mail_magazine table th {
    width: 40%;
}

.block.share li.mail_magazine p.title {
    margin-top: 1em !important;
    font-size: 13px !important;
}


/**
SLIDER-PRO
*/


/*.slider-pro .video-texture {
    background-color: rgba(0,0,0,0.3);
}*/

.slider-cover {
    background-image: url(../images/bg_dot.png);
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
}


/*.sp-slides{
	position: absolute;
	height: 100%;
    width: 100%;
	top: 0;
	left: 0;
}*/

.sp-image-container {
    overflow: hidden;
}

.sp-slide iframe {
    width: 100%;
    height: 100%;
}

.sp-slide a.sp {
    display: none;
}

.slider-pro p.copy {
    font-weight: normal;
    color: #FFF;
    position: absolute;
    left: 0%;
    width: 100%;
    line-height: 1.2;
    text-align: center;
    margin: 0;
    z-index: 2;
    top: 65%;
    font-size: 250%;
    font-family: "Meiryo", "MS Gothic", 'Hiragino Kaku Gothic Pro';
    /*text-shadow: 1px 1px 0 rgba(0,0,0,0.5);*/
}

.slider-pro p.copy span.button {
    font-size: 50%;
    display: block;
    margin-top: 1.5em;
    font-weight: normal;
}

.slider-pro p.copy a {
    color: #FFF;
    text-decoration: none;
}

#full {
    /*position: relative;
	left: 0;*/
    top: -140px;
    /*top: 120px;*/
}


/*陷ｿ�ｳ驕擾ｽ｢陷奇ｽｰ邵ｺ�ｮ郢ｧ�｢郢ｧ�､郢ｧ�ｳ郢晢ｽｳ郢晁ｼ斐°郢晢ｽｳ郢晢ｿｽ*/

.sp-next-arrow:before {
    font-size: 50px;
    /*font-family: FontAwesome;
	content: '\f105';*/
}


/*陝ｾ�ｦ驕擾ｽ｢陷奇ｽｰ邵ｺ�ｮ郢ｧ�｢郢ｧ�､郢ｧ�ｳ郢晢ｽｳ郢晁ｼ斐°郢晢ｽｳ郢晢ｿｽ*/

.sp-previous-arrow:before {
    font-size: 50px;
    /*font-family: FontAwesome;
	content: '\f104';*/
}

.sp-buttons {
    z-index: 2;
    position: absolute;
    bottom: 60px;
    left: 0;
}


/**
SIDEBAR
*/

#sidebar .block.search {
    padding-top: 0 !important;
}

#sidebar .block.search input {
    border: none;
    background-color: #EEE;
    height: 40px;
    width: 210px;
    font-size: 14px;
    padding-left: 20px;
    vertical-align: middle;
}

#sidebar .block.search button {
    height: 40px;
    line-height: 40px;
    width: 40px;
    text-align: center;
    padding: 0;
    vertical-align: middle;
}

#sidebar .block.search ul li {
    list-style: none;
    margin-bottom: 10px;
}

#sidebar .block.search ul li select {
    width: 100%;
}

#sidebar .title {
    margin: 50px 0 10px 0;
}

#sidebar h3 {
    font-size: 120%;
    text-align: left;
}

#sidebar .block.ranking ul.list {
    margin: 0;
}

#sidebar .block.ranking ul li {
    list-style: none;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: solid 1px #EEE;
}

#sidebar .block.ranking ul li span.square.number {
    background-color: #666;
    color: #FFF;
    float: left;
    font-size: 12px;
    margin-right: 5px;
}

#sidebar .block.ranking ul li h4 {
    font-weight: bold;
    margin-bottom: 5px;
}

#sidebar .block.ranking ul li p {
    clear: both;
    font-size: 75%;
    color: #666;
    margin: 0;
}

#sidebar .block.ad img {
    max-width: 100%;
    border: solid 1px #EEE;
}

#sidebar .block.ad a {
    display: block;
    text-align: center;
    margin-bottom: 15px;
}

.banner ul li {
    list-style: none;
    margin-bottom: 10px;
}

.banner ul li img {
    width: 100%;
}


/**
DATA
*/

dl.data {
    margin: 1em 0;
}

dl.data dt {
    line-height: 1.5;
    font-weight: bold;
    clear: both;
    float: left;
    width: 20%;
    margin-bottom: .5em;
}

dl.data dd {
    line-height: 1.5;
    width: 80%;
    float: left;
    margin-bottom: .5em;
}


/**
LIST
*/

ul.list {
    line-height: 1.5;
    margin-left: 20px;
}

ul.list li {
    margin-bottom: .5em;
}


/*ul.list li:before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background: #cd3e2c;
  position: relative;
  left: -15px;
  top: -3px;
  display: inline-block;
}
*/


/**
LIST_LIST
*/

ul.item.list li p {
    margin: 0;
}

ul.item.list li {
    list-style: none;
}

ul.item.list li div.image {
    float: left;
    width: 11%;
    margin-right: 1%;
    display: block;
}

ul.item.list li div.image img {
    width: 100%;
}

ul.item.list li div.content {
    float: left;
    width: 88%;
    display: block;
}

ul.item.list li p.text {
    font-size: 12px;
}

ul.item.list li p.category {
    margin-bottom: 5px;
}


/**
LIST_BOX
*/

ul.item.box {
    margin-left: -1%;
}

ul.item.box.column_3 li{
    min-height: 280px;
}
ul.item.box li {
    list-style: none;
    float: left;
    margin: 0 0 1% 1%;
    display: inline-block;
}

ul.item.box li div.image {
    float: none;
    width: 100%;
    margin-bottom: 10px;
}

ul.item.box li div.image img {
    width: 100%;
}

ul.item.box li div.content {
    float: none;
    width: 100%;
}

ul.item.box.column_1 li {
    width: 99%;
    margin: 0 0 0 1%;
}

ul.item.box.column_2 li {
    width: 49%;
}

ul.item.box.column_3 li {
    width: 32.3%;
}

ul.item.box.column_4 li {
    width: 24%;
}

ul.item.box.column_5 li {
    width: 19%;
}

ul.item.box.column_6 li {
    width: 15.65%;
}

ul.item.box.column_8 li {
    width: 11.5%;
}

ul.item.box li {
    position: relative;
}

ul.item.box li.last {
    width: 99%;
    margin: 0 0 0 1%;
}

ul.item.box.books li p.image img {
    width: inherit;
    max-height: 160px;
}

ul.item.box li p {
    margin: 0;
}

ul.item.box li p.title {
    font-size: 110%;
    margin-bottom: 5px;
    line-height: 1.4;
}

ul.item.box li p.title a {
    text-decoration: none;
}

ul.item.box li p.image {
    margin: 0 0 10px 0;
    text-align: center;
}

ul.item.box li p.image img {
    width: 100%;
}

ul.item.box li p.image.right {
    margin: 0;
}

ul.item.box li p.image.right img {
    width: 25%;
    float: right;
}

ul.item li .category {
    position: absolute;
    top: 1px;
    left: 1px;
    z-index: 111;
}

ul.item li span.category_icon a,
ul.item li span.category_icon span {
    display: inline-block;
    text-decoration: none;
    margin-right: 1px;
}

ul.item li p.date,
ul.item li p.text {
    font-size: 85%;
    margin: 5px 0;
    text-align: left;
}

ul.item li p.text.center {
    text-align: center;
}

ul.item li p.date {
    color: #999;
}

ul.item.box.social li {
    text-align: center;
    padding: 0px 20px;
}


/*.block.pickup ul.item.box li p.title,
.block.news ul.item.box li p.title
*/

.block.pickup ul.item.box li p.title,
.block.news ul.item.box li p.title,
#news ul.item.box li p.title,
#staff ul.item.box li p.title {
    margin: 5px 0;
    /*white-space: nowrap;
	width: 100%;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;*/
}

.block.news ul.item.box li p.title {
    min-height: 4.5em;
}

.block.news ul.item.box.column_3 li,
#news ul.item.box.column_3 li,
#staff ul.item.box.column_4 li,
#donate ul.item.box.column_4 li,
#people.detail ul.item.box li {
    margin-bottom: 3%;
}

.block.news ul.item.box.column_3 li p.image,
#news ul.item.box.column_3 li p.image,
#staff ul.item.box.column_4 li p.image,
#donate ul.item.box.column_4 li p.image,
#people.detail ul.item.box li p.image {
    max-height: 243px;
    overflow: hidden;
    border: solid 1px #EEE;
}

#news ul.item.box.column_2 li p.image,
#staff ul.item.box.column_2 li p.image {
    border: solid 1px #EEE;
}


/*#news. ul.item.box.column_3 li,
#staff ul.item.box.column_3 li{
	margin: 0 0 3% 1% !important;
}*/

.block.news ul.item.box.first li p.title {
    font-size: 180%;
    line-height: 1.3;
    font-weight: bold;
    overflow: inherit;
    white-space: inherit;
}

.block.news ul.item.box.first li .box_social {
    margin-top: 1em !important;
    padding-top: 1em !important;
    width: 150px;
}

.block.news ul.item.box.first li .box_social li {
    margin: 0;
}

.block.news ul.item.box.first li .box_social i {
    font-size: 150% !important;
}

.block.news ul.item.box.first li .box_social img {
    width: 60% !important;
}

ul.item.box li p.position {
    color: #666;
    margin-bottom: 1em;
    line-height: 1.3;
    font-size: 10px;
    margin-bottom: 5px;
    text-align: center;
}

ul.item.box li p.name {
    font-size: 120%;
    line-height: 1.3;
    text-align: center;
    margin-bottom: 1.5em;
}

ul.item.box li a {
    text-decoration: none;
}

ul.item.box p.case_item {
    margin-left: 1em;
    margin-bottom: 2px !IMPORTANT;
}

@media screen and (max-width: 768px) {
    ul.item.box p.case_item {
        text-indent: -2em;
        padding-left: 1em;
    }
}


/**
FLOW
*/

ul.flow li {
    background: url(../images/arrow_right.png) center right no-repeat;
    background-color: transparent !important;
    padding: 10px 30px !important;
    background-size: 15px;
    text-align: center;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}


/*.flow li:after{
	background: url(../images/arrow_right.png) no-repeat #000;
}*/

ul.flow li span.number {
    margin-right: 10px;
    background-color: rgba(255, 255, 255, 0.3);
    color: #FFF;
    padding: 2px 8px;
}

ul.flow li:last-child {
    background-image: none;
}

ul.flow li .content {
    background-color: #DDD;
    color: #FFF;
}

ul.flow.chart li .content {
    background-color: inherit;
    color: inherit;
}

ul.flow li .content.default {
    background-color: rgba(0, 0, 0, 0.3);
}

ul.flow li.active content {
    background-color: rgba(205, 62, 44, 0.5);
}

ul.flow li .content {
    vertical-align: middle;
    padding: 20px;
    display: table-cell;
    min-height: 50px;
    font-size: 120%;
    width: 300px;
}

ul.flow li p.text.sub {
    padding: 10px;
    display: block;
    background-color: rgba(0, 0, 0, 0.05);
}

ul.flow li p.text.sub a {
    text-decoration: underline;
}

ul.flow.chart li .content {
    padding: 0px 20px 0 0;
    display: table-cell;
    min-height: inherit;
    font-size: 100%;
    width: inherit;
}

ul.flow.column_5 li {
    background-size: 10px;
}


/**
UL
*/

ul.item.box.bg li {
    background-color: #F9F9F9;
    padding: 30px;
}

ul.item.box.bg.color li {
    background: rgba(205, 62, 44, 0.05);
}

ul.item.box.bg p.title {
    font-weight: bold;
    font-size: 120%;
    line-height: 1.4;
}

ul.item.box.bg p {
    font-size: 90%;
    margin-bottom: .8em;
}

ul.item.box.bg li p.button {
    margin-top: 1em;
}

ul.item.box.icon p.icon,
ul.item.box.icon p.title {
    text-align: center;
}

ul.item.box.icon p.icon i,
ul.item.box.icon p.icon .number {
    font-size: 600%;
    color: #999;
}

ul.item.box.icon p.icon .number {
    font-family: 'Montserrat', Meiryo, sans-serif;
    line-height: 1;
}

ul.item.box.icon.list li {
    padding: 10px;
}

ul.item.box.icon.list .logo_image i {
    font-size: 50px;
    padding: 5px;
    vertical-align: middle;
    color: #999;
}

ul.item.box.icon.list .logo_image {
    max-height: 60px;
    width: 60px;
    text-align: center;
    margin-right: 20px;
    display: inline-block;
}

ul.item.box.icon.list .logo_image img {
    width: 100%;
}

ul.item.box.bg.icon p.title {
    font-size: 150%;
    margin: .5em 0;
}

ul.item.box.icon.list.bg li p.title {
    text-align: left;
}


/**
MAP
*/

#map {
    width: 100%;
    height: 400px;
}


/**
MOVIE
*/

.iframeBox {
    padding-top: 56.25%;
    margin-bottom: 30px;
}

.iframeBox iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}


/**
TAB
*/

ul.tab {
    list-style: none;
}

ul.tab li {
    float: left;
    /* margin-right: 10px;*/
    padding: 10px;
    background-color: #F6F6F6;
    border-right: solid 1px #DDD;
    border-left: solid 1px rgba(255, 255, 255, 0.5);
    cursor: pointer;
    list-style: none;
    line-height: 1.5;
}

ul.tab li:first-child {
    border-left: none;
}

ul.tab li:hover,
ul.tab li a:hover {
    background-color: #efeee9;
}

ul.tab li.active {
    background-color: #efeee9;
}

ul.tab li br {
    display: none;
}

div.tabContent {
    clear: both;
    background-color: #efeee9;
    padding: 20px;
    display: none;
    margin-bottom: 1em;
}

div.active {
    display: block;
}


/**
TABLE
*/

table {
    width: 100%;
}

table.data th,
table.data td {
    padding: 10px;
    border: solid 1px #EEE;
    line-height: 1.5;
}

table.list th,
table.list td {
    padding: 10px;
    border-bottom: solid 1px #EEE;
    line-height: 1.5;
}

table.data th.center,
table.data td.center {
    text-align: center;
}

table.data th {
    background-color: #f9f9f9;
    width: 20%;
}

table.data {
    margin: 1em 0 1.5em 0;
}

table.data.winning td .category_icon {
    margin-right: 10px;
}

table.data.winning td .category_icon a,
table.data.winning td .category_icon span {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    width: 100px;
}

table.data tbody.row {
    background-color: #F0F0F0;
}

table.data.stat th,
table.data.stat td {
    font-size: 85%;
    padding: 6px;
}

table.data.stat th {
    width: auto;
}

table.data.stat td {
    text-align: right;
}

table.data tbody.row td {
    text-align: center;
}

.trcolor1 {
    background-color: #FFFFFF;
}

.trcolor2 {
    background-color: #f5f5f5;
}


/**
FORM
*/

span.required {
    color: #e6311e;
    margin: 0 0.5em;
    font-weight: normal;
}

div.form {
    width: 100%;
    margin: 1em 0;
    padding: 20px;
    background-color: #F9F9F9;
}

div.form dl dt,
div.form dl dd {
    vertical-align: top;
    padding: 20px 0;
    box-sizing: border-box;
    border-top: solid 1px #EEE;
}

div.form dl dd span {
    margin-right: 1em;
}

div.form dl dd .error {
    margin: .5em 0 0 0;
}

div.form dl dt.first,
div.form dl dd.first {
    border: none;
}

div.form dl dt {
    clear: both;
    float: left;
    width: 20%;
}

div.form dl dd {
    float: left;
    width: 80%;
}

div.form dl dd ul.list {
    list-style: none;
}


/**mkto*/

.mktoButtonRow {
    margin-left: -120px !important;
}

.mktoForm .mktoButtonWrap.mktoRound .mktoButton {
    color: #fff !important;
    border: none !important;
    -webkit-border-radius: 0px !important;
    -moz-border-radius: 0px !important;
    border-radius: 0px !important;
    background-color: #666 !important;
    background-image: none !important;
    background-image: none !important;
    background-image: none !important;
    background-image: none !important;
    padding: 0px 20px 10px 20px !important;
    font-size: 1em;
    height: 50px !important;
    line-height: 50px !important;
    margin-top: 20px !important;
}


/**
CHECKBOX/RADIO
*/

.form {
    padding: 6px;
}

.form input[type=radio],
.form input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}

.form input[type=radio]+label,
.form input[type=checkbox]+label {
    position: relative;
    display: inline-block;
    margin-right: 12px;
    font-size: 14px;
    line-height: 30px;
    cursor: pointer;
}

@media (min-width: 1px) {
    .form input[type=radio],
    .form input[type=checkbox] {
        display: none;
        margin: 0;
    }
    .form input[type=radio]+label,
    .form input[type=checkbox]+label {
        padding: 0 0 0 24px;
    }
    .form input[type=radio]+label::before,
    .form input[type=checkbox]+label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
        background: #FFF;
    }
    .form input[type=radio]+label::before {
        border: 1px solid #DDD;
        border-radius: 30px;
    }
    .form input[type=checkbox]+label::before {
        border: 1px solid #DDD;
    }
    .form input[type=radio]:checked+label::after,
    .form input[type=checkbox]:checked+label::after {
        content: "";
        position: absolute;
        top: 50%;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
    .form input[type=radio]:checked+label::after {
        left: 5px;
        width: 8px;
        height: 8px;
        margin-top: -4px;
        background: #cd3e2c;
        border-radius: 8px;
    }
    .form input[type=checkbox]:checked+label::after {
        left: 3px;
        width: 16px;
        height: 8px;
        margin-top: -8px;
        border-left: 3px solid #cd3e2c;
        border-bottom: 3px solid #cd3e2c;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}


/**
INPUT
*/

input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
textarea {
    outline: none;
}

input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
textarea {
    /*border: 1px solid #DDD;*/
    background-color: #EEE;
    border: none;
    padding: 5px;
    font-size: 120%;
}

input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
textareaa {
    width: auto;
}

input.size_s {
    width: 20%;
}

input.size_m {
    width: 30%;
}

input.size_l {
    width: 50%;
}

input.full {
    width: 100%;
}


/*select.select-box{
	vertical-align: middle;
	color: #999;
	border: solid 1px #DDD;
	background-color: #FFF;
	height: 40px;
	font-size: 14px;
	line-height: 40px;
	padding: 0 20px;
	-webkit-appearance: none;
	border-radius: 0;
}*/

select.select-box {
    margin: 0;
    padding: 0 20px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    color: #999;
    background: url(../images/arrow_down.png) no-repeat 95% 50% #EEE;
    background-size: 14px;
    /* text-shadow: 0 1px white; */
    /* background: #f2f2f2; */
    /* background: rgba(0, 0, 0, 0) !important; */
    border: 0;
    border-radius: 0;
    -webkit-appearance: none;
}

select.select-box.full {
    width: 100%;
}

select.select-box_op {
    margin: 0;
    padding: 10px;
    max-height: 100px;
    font-size: 14px;
    color: #999;
    /* text-shadow: 0 1px white; */
    /* background: #f2f2f2; */
    /* background: rgba(0, 0, 0, 0) !important; */
    border: 0;
    border-radius: 0;
    -webkit-appearance: none;
}


/**
BUTTON
*/

input[type="submit"][disabled].btn {
    background-color: #ccc;
    cursor: default;
}

input.btn,
button,
a.btn {
    /*background-color: rgba(205,62,44,1.0)#cd3e2c;*/
    background-color: rgba(113, 119, 119, 1);
    /*#717777*/
    color: #FFF;
    height: 50px;
    line-height: 50px;
    /*border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;*/
    cursor: pointer;
    border: none;
    text-decoration: none;
    font-size: 100%;
    padding: 0 20px;
    display: inline-block;
    box-sizing: border-box;
}

a.btn.line {
    display: inline-block;
    border: solid 2px #FFF;
    padding: 10px 40px;
    text-decoration: none;
    color: #FFF;
    background: none;
    height: auto;
    line-height: 1;
}

a.btn.line:hover {
    background: #FFF;
    color: #333;
}

ul.item.box.column_3 li input.btn,
ul.item.box.column_3 li button,
ul.item.box.column_3 li a.btn {
    width: 100%;
}

input.btn i,
button i,
a.btn i {
    font-size: 130%;
    vertical-align: middle;
}

input.btn.size_s,
button.size_s,
a.btn.size_s {
    height: 30px;
    line-height: 30px;
    font-size: 80%;
    padding: 0 10px;
}

input.btn.size_m,
button.size_m,
a.btn.size_m {
    height: auto;
    /* line-height: 40px; */
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    line-height: 1.375;
    font-size: 100%;
}


/*---------------------20180614-----------------------------------*/

.btn.div0614 {
    background-color: #717777;
    height: 50px;
    width: 74%;
    text-align: center;
    margin: 30px 0px 40px 80px;
}

p.p0618.size_m {
    color: white;
    font-size: 18px;
    padding-top: 14px;
}


/*---------------------20180614-----------------------------------*/

input.btn.size_l,
button.size_l,
a.btn.size_l {
    height: 60px;
    line-height: 60px;
    font-size: 120%;
    padding-left: 30px;
    padding-right: 30px;
}

input.btn.size_2l,
button.size_2l,
a.btn.size_2l {
    height: 80px;
    line-height: 80px;
    font-size: 140%;
}

input.btn.cancel,
button.cancel,
a.btn.cancel {
    background-color: #CCC;
    color: #333;
}

input.btn:hover,
button:hover,
a.btn:hover {
    background-color: rgba(205, 62, 44, 1);
}

input.btn.front,
button.front,
a.btn.front {
    background-color: rgba(205, 62, 44, 1.0);
}

input.btn.front:hover,
button.front:hover,
a.btn.front:hover {
    background-color: rgba(205, 62, 44, 0.8);
}

input.btn i,
button i,
a.btn i {
    vertical-align: middle;
    line-height: 1;
}

input.btn.full,
button.full,
a.btn.full {
    width: 100%;
}

.btn_sp {
    display: none;
}


/**
INCLUDE FORM
*/

.mktoForm {
    background-color: #F9F9F9;
    padding: 20px;
    width: 100% !important;
}

.mktoFormRow {
    display: inline-block;
}

.mktoButtonRow {
    display: block !important;
    text-align: center;
    clear: both;
}

.mktoFormRow label {
    white-space: nowrap;
}

.mktoForm input[type=text],
.mktoForm input[type=url],
.mktoForm input[type=email],
.mktoForm input[type=tel],
.mktoForm input[type=number],
.mktoForm input[type=date],
.mktoForm select.mktoField,
.mktoForm textarea.mktoField {
    -webkit-appearance: none;
    line-height: 1.5em;
    color: #333 !important;
    -webkit-border-radius: 0px !important;
    -moz-border-radius: 0px !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    min-height: 1.9em;
    background-color: #EEE !important;
    border: none !important;
    padding: 5px !important;
    font-size: 120% !important;
}


/*.mktoForm .mktoError .mktoErrorMsg {
    display: block;
    margin-top: 7px;
    background-color: #e51b00;
    background-image: -webkit-linear-gradient(#e51b00 43%, #ba1600 100%);
    background-image: -moz-linear-gradient(#e51b00 43%, #ba1600 100%);
    background-image: linear-gradient(#e51b00 43%, #ba1600 100%);
    background-image: -ms-linear-gradient(#e51b00 43%, #ba1600 100%);
    border: 1px solid #9f1300;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: rgba(0,0,0,0.65) 0 2px 7px, inset #ff3c3c 0 1px 0px;
    box-shadow: rgba(0,0,0,0.65) 0 2px 7px, inset #ff3c3c 0 1px 0px;
    color: #f3f3f3;
    font-size: 1em;
    line-height: 1.2em;
    max-width: 16em;
    padding: 0.4em 0.6em;
    text-shadow: #901100 0 -1px 0;
}
.mktoForm div, .mktoForm span, .mktoForm label, .mktoForm p {
    text-align: left;
    margin: 0;
    padding: 0;
}
*/


/**
FOOTER
*/

#footer {
    /*margin-top: 20px;*/
    clear: both;
    background-color: #cd3e2c;
    padding: 20px 0;
    line-height: 1;
}

#footer p.copy {
    font-size: 85%;
    color: #FFF;
    line-height: 1.4;
}

#footer .box_social {
    text-align: center;
}

#footer .box_social i {
    color: #FFF;
    font-size: 20px;
    margin: .5em;
}


/**
CONTENTS
*/


/**COMMON*/

.block.bottom_link {
    border-top: dashed 1px #EEE;
    padding-top: 20px;
}

.block.main_area {
    height: 560px;
    padding: 0 20px 20px 20px;
    /*-webkit-filter: brightness(85%);*/
    /* 騾包ｽｻ陷剃ｸ奇ｽ定涕�ｸ邵ｺ�ｫ陞滂ｽｩ陜ｨ�ｰ陝ｾ�ｦ陷ｿ�ｳ邵ｺ�ｮ闕ｳ�ｭ陞滂ｽｮ邵ｺ�ｫ鬩溷調�ｽ�ｮ */
    background-position: center top;
    /* 騾包ｽｻ陷剃ｸ奇ｽ堤ｹｧ�ｿ郢ｧ�､郢晢ｽｫ霑･�ｶ邵ｺ�ｫ驛｢�ｰ郢ｧ鬘假ｽｿ譁撰ｼ�髯ｦ�ｨ驕会ｽｺ邵ｺ蜉ｱ竊醍ｸｺ�ｽ */
    background-repeat: no-repeat;
    /* 郢ｧ�ｳ郢晢ｽｳ郢晢ｿｽﾎｦ郢晢ｿｽ�ｽ鬯ｮ蛟･��ｸｺ讙主愛陷剃ｸ奇ｿｽ鬯ｮ蛟･��ｹｧ蛹ｻ�願棔�ｧ邵ｺ髦ｪ�櫁ｭ弱ｅﾂ竏晁劒邵ｺ荵昶�邵ｺ�ｽ�育ｸｺ�ｽ竊楢摎�ｺ陞ｳ�ｽ */
    /*background-attachment: fixed;
   髯ｦ�ｨ驕会ｽｺ邵ｺ蜷ｶ�狗ｹｧ�ｳ郢晢ｽｳ郢晢ｿｽ繝ｪ邵ｺ�ｮ陞滂ｽｧ邵ｺ髦ｪ��ｸｺ�ｫ陜難ｽｺ邵ｺ�･邵ｺ�ｽ窶ｻ邵ｲ竏ｬ繝ｬ隴趣ｽｯ騾包ｽｻ陷剃ｸ奇ｽ帝坡�ｿ隰ｨ�ｴ */
    background-size: cover;
    /* 髢ｭ譴ｧ蜍ｹ騾包ｽｻ陷剃ｸ岩ｲ髫ｱ�ｭ邵ｺ�ｿ髴趣ｽｼ邵ｺ�ｾ郢ｧ蠕鯉ｽ玖恆髦ｪ竊馴勗�ｨ驕会ｽｺ邵ｺ霈費ｽ檎ｹｧ邇悶Ξ隴趣ｽｯ邵ｺ�ｮ郢ｧ�ｫ郢晢ｽｩ郢晢ｽｼ */
    background-color: #FFF;
    position: relative;
}

.block.main_area:after {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.15);
}

.block.main_area p,
.block.main_area div,
.block.main_area ul {
    z-index: 10;
}

#staff .block.main_area:after,
#vision .block.main_area:after {
    background-color: rgba(0, 0, 0, 0.0);
}

@media screen and (min-width: 768px) {
    .block.main_area {
        background-attachment: fixed;
    }
}

.block.main_area p.main_catch {
    position: absolute;
    color: #FFF;
    font-weight: normal;
    /*text-shadow: 2px 2px 0 rgba(0,0,0,0.7);*/
    left: 0%;
    letter-spacing: 0.05em;
    top: 100px;
    font-size: 250%;
    font-family: "Meiryo", "MS Gothic", 'Hiragino Kaku Gothic Pro';
}

.block.main_area p.main_lead {
    position: absolute;
    color: #FFF;
    font-weight: normal;
    /*text-shadow: 2px 2px 0 rgba(0,0,0,0.7);*/
    left: 0%;
    letter-spacing: 0.05em;
    border-left: solid 2px #FFF;
    padding-left: 30px;
    top: 240px;
    line-height: 1.4;
    font-size: 130%;
    font-family: Meiryo, 'Hiragino Kaku Gothic Pro', "�ｽ�ｭ�ｽ�ｳ 郢ｧ�ｴ郢ｧ�ｷ郢晢ｿｽ縺�", "MS Gothic";
}

.block.main_area p.btn {
    position: absolute;
    top: 300px;
    left: 0%;
    text-align: left;
    white-space: nowrap;
    font-size: 120%;
    line-height: 1.3;
}

.block.main_area p.btn a {
    border: solid 2px #FFF;
    color: #FFF;
    font-size: 130%;
}

.block.main_area p.btn a:hover {
    background: #FFF;
    color: #333;
}

.box.photo_on_text .wrap .box_text.bg_no {
    background-color: inherit;
}

#about .block.main_area {
    background-image: url(../images/about_main.jpg);
    background-position: 0px 50px;
    /*-webkit-filter: brightness(75%);*/
    /*background-attachment: inherit;
	min-height: 900px;
	height: auto;*/
    /*
	background-repeat: repeat;
	background-position: 0 240px;
	h*/
    /*-webkit-filter: blur(20px);
	filter: blur(20px);*/
}

#vision .block.main_area {
    background-image: url(../images/vision_main.jpg);
    height: auto;
    padding: 0;
}

#solution .block.main_area {
    background-image: url(../images/solution_main.jpg);
    height: 590px;
}

#staff .block.main_area {
    background-image: url(../images/staff_main.jpg);
    height: 590px;
}

#donate .block.main_area {
    background-image: url(../images/donate_main.jpg);
    height: 590px;
}

#action .block.main_area {
    background-image: url(../images/action_main.jpg);
    height: 590px;
}

#action.realestate .block.main_area {
    background-image: url(/images/action_realestate_main.jpg);
}

.box.photo_on_text .wrap {
    position: relative;
    height: 600px;
    overflow: hidden;
    margin-bottom: 20px;
}

.box.photo_on_text .wrap .image img {
    width: 100%;
    transition: 0.5s;
}

.box.photo_on_text .wrap .image img:hover {
    transform: scale(1.05);
}

.box.photo_on_text .wrap .box_text {
    position: absolute;
    width: 50%;
    background: rgba(255, 255, 255, 0.6);
    color: #333;
    padding: 30px 40px;
    height: 600px;
    float: left;
}

.box.photo_on_text .wrap .box_text.left {
    top: 0;
    left: 0;
}

.box.photo_on_text .wrap .box_text.right {
    top: 0;
    right: 0;
}

.box.photo_on_text .wrap .box_text p {
    line-height: 1.6;
}


/*#vision .box.photo_on_text .wrap{
	min-height: 400px;
}*/

span.title_icon img {
    height: 140px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}

ul.btn.list {
    margin-top: 1em;
    margin-left: 0;
}

ul.btn.list li {
    list-style: none;
    position: relative;
}

ul.btn.list li p.catch {
    position: absolute;
    top: 50px;
    left: 50px;
    color: #FFF;
    z-index: 999;
}

ul.btn.list li p.btn.frame span {
    position: absolute;
    bottom: 20px;
    right: 20px;
}

.bottom_link ul.btn.list li p.btn.frame span a {
    font-size: 200%;
    border: none;
}


/**ABOUT*/

#about .about_img1.pc {
    position: relative;
    height: 600px;
}

#about .about_img1.pc .category img {}

#about .about_img1.pc .category,
#about .about_img1.pc .catchcopy {
    display: block;
    position: absolute;
}

#about .about_img1.pc #about_img1_1 {
    top: 50px;
    left: 150px;
}

#about .about_img1.pc #about_img1_2 {
    top: 0;
    left: 380px;
}

#about .about_img1.pc #about_img1_3 {
    top: 0;
    left: 600px;
}

#about .about_img1.pc #about_img1_4 {
    top: 180px;
    left: 750px;
}

#about .about_img1.pc #about_img1_5 {
    top: 300px;
    left: 120px;
}

#about .about_img1.pc #about_img1_6 {
    top: 400px;
    left: 350px;
}

#about .about_img1.pc #about_img1_7 {
    top: 400px;
    left: 600px;
}

#about .about_img1.pc #about_img1_a {
    z-index: 999;
    top: 160px;
    left: 250px;
}

#about .about_img1.pc #about_img1_b {
    top: 140px;
    left: 500px;
}

#about .about_img1.sp {
    display: none;
}

#about .box.photo_on_text .wrap .box_text {
    width: 100%;
}

#about .box.photo_on_text .wrap .box_text p {
    font-size: 110%;
    line-height: 1.8;
}

@media screen and (min-width: 769px) {
    #about .box.photo_on_text .wrap .box_text p {
        color: white;
    }
}

#about.ceo .box.photo_on_text .wrap .box_text p {
    font-size: 150%;
    line-height: 2;
}

#about.ceo .box.photo_on_text .wrap .box_text p.lead {
    color: white;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.64);
}

#about.ceo .block#col_1 .column .left {
    padding: 30px 50px;
    background-color: rgba(250, 241, 223, 0.8);
}

#about.ceo .block#col_1 .column .left p {
    font-size: 115%;
    margin: 1.5em 0;
    line-height: 1.6;
}

#about.ceo .block#col_1 .column .left p.lead {
    font-size: 140%;
}

#about .box.photo_on_text .wrap .sign img {
    height: 40px;
    margin-top: 1.5em;
}

#about .sign .sign--light {
    display: none;
}
#about .sign .sign--dark {
    display: block;
}

@media screen and (min-width: 768px) {
    #about .sign .sign--light {
        display: block;
    }
    #about .sign .sign--dark {
        display: none;
    }
}
#about.history ul.books {
    display: flex;
    flex-wrap: wrap;
}
#about.history ul.books li {
    padding: 15px;
}

#about.history ul.books li p.title {
    font-size: 100%;
}

#about.ir #contents .block p {
    line-height: 1.8;
}

#about.ir #contents .block .image.data {
    margin: 50px auto;
}

#about.ir #contents .block p.caution {
    margin: -30px auto 50px auto;
}

#about.ir #contents .block p {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}


/**VISION*/

#vision .block.main_area .visual {
    text-align: center;
    margin: 50px 0;
}

#vision .block.main_area .visual.sp {
    display: none;
}

#vision .block.main_area p.lead {
    /*background-color: rgba(255,255,255,0.2);
	padding: 20px;*/
}


/*#vision .block.main_area .box.intro{
	background-color: #C94136;
	color: #FFF;
	padding: 20px;
	margin-bottom: 1%;
}

#vision .block.main_area .box.intro p.catch{
	font-size: 400%;
	font-family: 'Montserrat', sans-serif;
	margin: 0;
	line-height: 1.2;
}

#vision .block.main_area .box.intro p.catch span.sub{
	font-size: 20px;
	display: block;
}
*/

#vision #col_1 .box.photo_on_text .wrap .box_text {
    width: 40%;
}

#vision span.title_icon {
    display: table-cell;
    padding-bottom: 30px;
}

#vision .block div.title {
    display: table-cell;
    vertical-align: bottom;
    padding-left: 20px;
    padding-bottom: 30px;
}

#vision div.title p {
    margin: 10px 0 0 0;
    font-weight: bold;
}

#vision div.title h3 {
    text-align: left;
}

#vision .block.main_area ul {
    margin-bottom: 2em;
}


/*#vision .block#col_2 .column .left{
	padding: 60px;
	background-color: #f9f9f9;
}

#vision .block#col_3 .column .left{
	padding: 30px;
	font-size: 90%;
	background-color: #f9f9f9;
}
*/

#vision ul.list.check li {
    font-size: 130%;
    list-style: none;
    line-height: 1.6;
    margin-bottom: .5em;
}

#vision ul.list.check li i {
    margin-right: .5em;
    color: #cd3e2c;
}

#vision .block#col_2 .column .left.half {
    font-size: 120%;
    padding: 75px 30px;
    height: 293px;
    background-color: #F9F9F9;
}

#vision .block#col_3 .column .left.half {
    font-size: 90%;
    height: 293px;
    padding: 65px 20px;
    background-color: #F9F9F9;
}

#vision.top .block#col_5 p {
    line-height: 2;
    text-align: center;
}

#vision.top .block#col_5 p.logo {
    margin: 3em 0;
}

#vision.top .block#col_5,
#vision.top .block#col_6 {
    border-top: solid 1px #EEE;
    padding-top: 30px;
    margin-top: 30px;
}

#vision.top .block#col_6 p.catch {
    margin-bottom: 1em;
}

#vision ul.item.box.card li.sp {
    display: none;
}


/**PEOPLE*/
#people.detail .article .inner > .inner {
	display: table;
}
#people.detail .article .photo {
    width: 32%;
    display: table-cell;
    vertical-align: top;
    padding-bottom: 1em;
    position: relative;
}

#people.detail .article .photo .title {
    text-align: center;
    margin: 0 0 1em 0;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 300px;
    color: #fff;
    background: #BBB;
    /*background-color: rgba(205,62,44,0.6);*/
    background-color: rgba(0, 0, 0, 0.3);
    border: 2px dashed #FFF;
    box-shadow: 0px 0px 0px 5px rgba(0, 0, 0, 0.3);
}

#people.detail .article h3 {
    color: #FFF;
    font-size: 250%;
    line-height: 1;
    margin: 0;
}

#people.detail .article .content {
    width: 68%;
    display: table-cell;
}

#people.detail .article .photo img {
    margin-top: 160px;
}


/**ACTION*/


/**SOLUTION*/

#solution .block.main_area ul {
    margin-left: -20px;
}

#solution .block.main_area ul li {
    box-sizing: border-box;
    display: block;
    width: 265px;
    height: 265px;
}

#solution .block.main_area ul li a {
    display: block;
    padding: 20px;
    width: 225px;
    height: 225px;
    text-decoration: none;
    color: #333;
}

#solution .block.main_area ul li {
    display: block;
    float: left;
    line-height: 1.5;
    list-style: none;
    margin-left: 20px;
    margin-top: 20px;
    background: rgba(255, 255, 255, 0.7);
}

#solution .block.main_area ul li a:hover {
    background: rgba(205, 32, 44, 0.5);
    color: #FFF;
}

#solution .block.main_area ul li.nolink {
    background: rgba(255, 255, 255, 0.2);
}

#solution .block.main_area ul li h3 {
    font-size: 120%;
    border-left: solid 2px #cd3e2c;
    padding-left: 15px;
    margin-left: -20px;
    height: 3em;
}

#solution .block.main_area ul li span.banner {
    text-align: center;
    display: block;
    margin: 1em 0;
}

#solution .block.main_area ul li span.banner span.text {
    padding: 10px;
    display: block;
    background-color: rgba(0, 0, 0, 0.1);
}

#solution .block.main_area ul li span.banner img {
    max-height: 66px;
    max-width: 200px;
    -webkit-filter: drop-shadow(0px 0px 20px rgba(255, 255, 255, 1.0));
}

#solution .block.main_area ul li.col_2 span.banner img {
    max-width: 158px;
    max-height: 48px;
}

@media screen and (max-width: 768px) {
    #solution .block.main_area ul li.col_2 span.banner img {
        max-height: 30px;
    }
}

#solution .block.main_area ul li.col_3 span.banner img {
    max-height: 60px;
    max-width: 131px;
}

#solution .box .wrap {
    position: relative;
    height: 600px;
    overflow: hidden;
}

#solution .box .wrap img {
    width: 100%;
    transition: 0.5s;
    -webkit-filter: brightness(80%);
}

#solution .box .wrap img:hover {
    transform: scale(1.05);
}


/*#solution .box.col_1 .main.main_inner{
	background: url(../images/slider_1.jpg) no-repeat center top;
	height: 600px;
}*/

#solution .box .wrap .box_text {
    position: absolute;
    width: 38%;
    background: rgba(205, 32, 44, 0.6);
    color: #FFF;
    padding: 40px;
    height: 600px;
    float: left;
}

#solution .box .wrap .box_text.left {
    top: 0;
    left: 0;
}

#solution .box .wrap .box_text.right {
    top: 0;
    right: 0;
}

#solution .box .wrap .box_text h4 {
    font-size: 250%;
    margin-bottom: 1em;
    line-height: 1.3;
}

#solution .box .wrap .box_text p {
    line-height: 1.6;
    font-size: 110%;
}

#solution .box .sub {
    background-color: #faf1df;
    padding: 40px;
}

#solution .box .sub h4 {
    font-size: 200%;
    margin-bottom: .5em;
}

#solution .box .sub p {
    line-height: 1.8;
    font-size: 95%;
    margin: 0;
}

#solution .box .sub {
    position: relative;
    min-height: 200px;
    margin-top: -200px;
    padding: 20px 40px;
    z-index: 20;
    background: none;
    color: #fff;
}

#solution #col_1 .box .sub,
#solution #col_3 .box .sub,
#solution #col_5 .box .sub,
#solution #col_7 .box .sub {
    margin-left: 38%;
}

#solution #col_2 .box .sub,
#solution #col_4 .box .sub,
#solution #col_6 .box .sub,
#solution #col_8 .box .sub {
    margin-right: 38%;
}

#solution .simple_accordion.btn {
    display: none;
}

#solution .box .sub p.link {
    margin-top: 1em;
}
#solution .block.main_area ul li .banner_float {
    display: flex;
}
#solution .block.main_area ul li .banner_float span.banner {
    margin-right: 10px;
}
#solution .block.main_area ul li .banner_float span.banner img {
    width: 100%;
}

/**NEWS*/

#news .block.head {
    background-color: #717777;
    padding: 0;
}
#news .block.head ul {
  display: flex;
}
#news .block.head ul li {
    list-style: none;
    display: block;
    flex-grow: 1;
    text-align: center;
    /*float: left;
    width: 10%;
	line-height: 1.3;*/
}

#news .block.head ul li a {
    display: block;
    padding: 11px;
    font-size: 13px;
    text-decoration: none;
    background-color: #717777;
    color: #FFF;
}

#news .block.head ul li a:hover,
#news .block.head ul li.active a {
    background-color: #cd3e2c;
}

#news .block.bottom {
    text-align: center;
    padding: 2em 0;
}

#news .block.bottom ul li {
    display: inline-block;
    margin-right: 1em;
}

#news .block.head div.main_image img {
    width: 100%;
    -webkit-filter: brightness(85%);
}

#news .block.head div.main_image {
    position: relative;
}

#news .block.head div.main_image h3.title {
    position: absolute;
    bottom: 70px;
    left: 30px;
    color: #FFF;
    font-size: 280%;
    font-weight: normal;
    font-family: Meiryo, 'Hiragino Kaku Gothic Pro', "�ｽ�ｭ�ｽ�ｳ 郢ｧ�ｴ郢ｧ�ｷ郢晢ｿｽ縺�", "MS Gothic";
}

#news .block.head div.main_image p.lead {
    position: absolute;
    bottom: 30px;
    left: 30px;
    color: #FFF;
    font-size: 120%;
    margin: 0;
}

.block.news .title h3,
.block.share .title h3 {
    text-align: left;
    font-size: 140%;
}

.news ul.item li .box_social,
#news ul.item li .box_social,
#staff ul.item li .box_social,
.block.article .box_social {
    /*border-top: dotted 1px #DDD;*/
    padding-top: 0px;
    /*margin-top: 5px;*/
    margin-bottom: 0px;
    display: inline-block;
}

.block.article .box_social {
    width: 100%;
    text-align: center;
}

#staff .block.article .box_social {
    padding-top: 8px;
}

.news ul.item li .box_social li,
#news ul.item li .box_social li,
#staff ul.item li .box_social li {
    max-height: 30px !important
}

ul.item li .box_social i,
.block.article .box_social i,
ul.item li .box_social span,
.block.article .box_social span {
    color: #FFF;
    background-color: rgba(113, 119, 119, 0.5);
    border-radius: 50%;
    width: 46px;
    height: 46px;
    line-height: 46px;
    font-size:
}

ul.item li .box_social span.count,
.block.article .box_social span.count {
    width: inherit;
    height: inherit;
    margin: 0 10px 0 5px;
}

.block.news ul.item.box.first li .box_social i,
.block.news ul.item.box.first li .box_social span {
    width: 35px;
    height: 35px;
    line-height: 35px;
}

ul.item li .box_social span.count,
.block.article .box_social span.count {
    background-color: inherit !important;
    color: #666;
    font-family: 'Montserrat', 'Hiragino Kaku Gothic Pro', "Meiryo", sans-serif;
    font-size: 14px;
}

.block.news ul.item.box.first li .box_social span.count {
    font-size: 150%;
}

ul.item li .box_social {
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    width: 100px;
}

ul.item li .box_social ul li {
    text-align: left;
    margin: 0;
    width: 33% !important;
}

.block.article h3 {
    font-size: 180%;
    line-height: 1.2;
    font-weight: bold;
    color: #666;
}

.block.article h4 {
    font-size: 140%;
    line-height: 1.4;
}

.block.article p.category {
    float: right;
}

.block.article p.category span.category_icon {
    padding: 5px;
    line-height: 1;
    margin-bottom: 5px;
    /*background-color: #cd3e2c;*/
    /*background-color: rgba(205,62,44,0.7);*/
    color: #FFF;
    font-size: 12px;
}

.block.article p.writer,
.block.article p.position,
.block.article p.before {
    font-size: 12px;
}

.block.article p.before {
    margin: 0 0 1em 0;
}

.block.article p.position,
.block.article p.date,
.block.article p.category,
.block.article p.writer,
.block.article p.tags,
{
    margin: .5em 0;
}

.block.article p.tags {
    margin: 10px 0;
}

.block.article p.tags span.category_icon {
    margin-right: 10px;
}

.block.article img {
    max-width: 100%;
    height: auto;
}

.block.article .sentence p {
    font-size: 16px;
    /*width: 75%;
	margin-left: auto;
	margin-right: auto;*/
    line-height: 1.8;
}


/*.block.article .sentence h3,
.block.article .sentence h4,
.block.article .sentence h5,
.block.article .sentence h6,
.block.article .sentence table,
.block.article .sentence div.blog-card{
	width: 75%;
	margin-left: auto;
	margin-right: auto;
}*/

.block.article .sentence p.image {
    width: 100%;
}

.block.more_info h3 {
    font-size: 120%;
    text-align: left;
    color: #666;
}

.yarpp-related a {
    font-weight: normal !important;
}

.sentence div {
    line-height: 1.8;
}

/* カスタムフィールド：donate */
.block-donate {
    margin-top: 3em;
    margin-bottom: 3em;
    text-align: center;
}
.block-donate a {
    color: #fc4d50;
    font-size: 14px;
    line-height: 1.44;
}
.block-donate a br {
    display: none;
}
.block-donate .btn a {
    display: inline-block;
    position: relative;
    padding: 20px 54px 20px 40px;
    border-right: 2px solid #fc4d50;
    min-width: 400px;
    background-color: #f0f0f0;
    font-size: 18px;
    text-decoration: none;
    color: #333;
    box-shadow: 0 3px 6px 0 rgba(0,0,0,0.2);
    box-sizing: border-box;
}
.block-donate .btn a:hover {
    box-shadow: 0 3px 6px 0 rgba(0,0,0,0.4);
}
.block-donate .btn a:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10.4px;
    border-color: transparent transparent transparent #333;
}

@media screen and (max-width: 768px) {
    .block-donate a br {
        display: block;
    }
    .block-donate .btn a {
        padding: 16px 44px 16px 30px;
        min-width: auto;
        width: 100%;
    }
    .block-donate .btn a:after {
        right: 20px;
    }
}

/**STAFF*/

#staff.top #col_3 .box {
    position: relative;
}

#staff.top #col_3 .box p.text {
    margin: 0;
    position: absolute;
    z-index: 999;
    color: #FFF;
    font-size: 100%;
}

#staff.top #col_3 .box p.text a {
    padding: 20px;
    color: #FFF;
    text-decoration: none;
    border: solid 2px #FFF;
    display: block;
}

#staff.top #col_3 .box p.text a:hover {
    background: rgba(255, 255, 255, 0.2);
}

#staff.top #col_3 .box p.text span.name {
    display: block;
    font-size: 250%;
    margin-top: 10px;
    line-height: 1;
}

#staff.top #col_3 .box p.text.left {
    left: 20px;
    bottom: 20px;
}

#staff.top #col_3 .box p.text.right {
    right: 20px;
    bottom: 20px;
}

#staff.top #col_4 ul li {
    padding: 0;
}

#staff.top #col_4 ul li dl {
    padding: 10px 20px;
}

#staff.top #col_4 p.title {
    padding: 15px;
    background-color: rgba(0, 0, 0, 0.05);
    margin: 0;
}

#staff.top #col_4 ul li dl dt {
    padding-right: 1em;
}

#staff.top #col_4 ul li dl dd {
    border-bottom: solid 1px #EEE;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

#staff.top #col_4 ul li dl dd:last-child {
    border: none;
}

#staff.top #col_4 ul li dl dd span.category_icon a {
    display: inline-block;
    float: right;
    margin-left: 10px;
    width: 80px;
    text-align: center;
    pointer-events: none;
}

#staff.detail .block.article {
    border-top: solid 1px #F6F6F6;
}


/**STATIC*/

h5 {
    font-size: 130%;
    /*color: #cd3e2c;*/
    color: #666;
    line-height: 1;
    margin: 1em 0 0.5em 0;
    font-weight: bold;
}

ul.list li {
    margin-bottom: .2em;
}


/**
FAQ
*/

span.square {
    display: inline-block;
    /*background-color: #F96 ;*/
    background-color: rgba(205, 62, 44, 0.7);
    color: #FFF;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    vertical-align: middle;
    margin-right: 10px;
}

span.square.circle {
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}

span.faq_q {
    background-color: #2c96cd;
}

dl.faq .square {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 20px;
}

dl.faq dt {
    font-size: 140%;
    margin-bottom: .5em;
    float: left;
    width: 100%;
    line-height: 1.4;
}

dl.faq dd {
    margin: 0 0 2em 0;
    clear: both;
}

dl.faq dt p {
    margin: 0 30px 0 50px;
    padding-top: 5px;
}

dl.faq dd p {
    margin: 0 0 1em 50px;
}

dl.faq dt span.square.faq_q,
dl.faq dd span.square.faq_a {
    float: left;
}

dl.faq span.square {
    display: inline-block;
}


/**
PAGE NATION
*/

.page_nation {
    clear: both;
    text-align: center;
    padding: 1em 0;
}

ul.pager li {
    display: inline;
    margin: 0;
    padding: 0;
}

ul.pager li i {
    margin: 0 5px;
}

ul.pager li a {
    padding: 8px 10px;
    display: inline-block;
    text-decoration: none;
    color: #666;
}

ul.pager li.active a {
    display: inline-block;
    color: #FFF;
    background-color: #cd3e2c
}

ul.pager li a:hover,
ul.pager li a:active {
    color: #FFF;
    background-color: #cd3e2c;
}


/**
PAGE TOP
*/

#page-top {
    position: fixed;
    bottom: 55px;
    right: 20px;
}

#page-top a {
    background: rgba(0, 0, 0, 0.2);
    text-decoration: none;
    font-size: 20px;
    color: #fff;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    display: block;
    /*border-radius: 60px;
	-webkit-border-radius: 60px;
	-moz-border-radius: 60px;*/
}

#page-top a:hover {
    text-decoration: none;
    background: rgba(0, 0, 0, 0.4);
}


/**
CLEARFIX
*/


/* For modern browsers */

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

.clearfix:after {
    clear: both;
}


/* For IE 6/7 (trigger hasLayout) */

.clearfix {
    zoom: 1;
}


/*@media screen and (min-width: 480px) and (max-width: 767px) {
}*/


/*@media (max-width: 1200px) and (min-width: 769px){
#main_contents,
.inner {
    width: 100% !important;
}
}*/


/*隰暦ｽｲ髴育判�ｳ遨ゑｽｺ�ｺ郢晢ｽｪ郢ｧ�ｹ郢晢ｿｽ*/

.company_box1,
.company_box2,
.company_box3,
.logo_only {
    background: #F9F9F9;
}

.shien_kigyou {
    margin: 30px 0;
}

p.logo_only_c {
    text-align: center;
}

.logo_only p.logo_only_c img {
    border: solid 1px #ccc;
}

@media screen and (min-width: 769px) {
    .company_box1 {
        margin-bottom: 20px;
    }
    .company_box1 .logo_box,
    .company_box1 .no_logo_box {
        float: left;
        width: 20%;
        padding: 10px 20px;
    }
    .logo_box img {
        width: 200px;
        border: solid 1px #ccc;
    }
    p.txt_c {
        text-align: center;
        font-size: 80%;
    }
    .company_box1 .comment_box {
        float: right;
        width: 78%;
        padding: 10px 20px 10px 0;
    }
    .company_box2 {
        float: left;
        width: 49%;
        height: 380px;
        margin-bottom: 20px;
    }
    .company_box2 .no_logo_box,
    .company_box3 .no_logo_box {
        float: left;
        width: 40%;
        padding: 10px 20px;
    }
    .company_box2 .comment_box,
    .company_box3 .comment_box {
        float: right;
        width: 60%;
        padding: 10px 20px 10px 0;
    }
    p.no_logo {
        background: rgba(205, 62, 44, 1.0);
        color: white;
        padding: 10px 30px;
        text-align: center;
        margin-top: 18px;
    }
    .company_box3 {
        float: right;
        width: 49%;
        height: 380px;
        margin-bottom: 20px;
    }
    .company_box2 .logo_box,
    .company_box3 .logo_box {
        float: left;
        width: 40%;
        padding: 10px 20px;
    }
    .logo_only {
        width: 49%;
        height: 320px;
        float: right;
    }
    .campanylogo_only {
        width: 100%;
        height: 150px;
        /* float: left; */
        /* margin-right: 20px; */
    }
    .campanylogo_only .company_box3.clearfix {
        width: 24%;
        height: 170px;
        float: left;
        margin-right: 14px;
        background: none;
    }
    .onlyPC {
        display: block;
    }
    .campanylogo_only .company_box3.clearfix:nth-child(4),
    .campanylogo_only .company_box3.clearfix:nth-child(8),
    .campanylogo_only .company_box3.clearfix:nth-child(12),
    .campanylogo_only .company_box3.clearfix:nth-child(16) {
        margin-right: 0px;
    }
    .campanylogo_only .logo_box {
        width: 100%;
        padding: 0;
        float: none;
    }
    .campanylogo_only .logo_box img {
        margin: 0 12%;
        border: none;
    }
}

@media screen and (max-width: 768px) {
    .sp_none {
        display: none;
    }
    .logo_box,
    .no_logo_box,
    .logo_only {
        padding: 20px;
    }
    .comment_box {
        padding: 0 20px 20px;
    }
    p.txt_c {
        text-align: center;
    }
    .company_box1,
    .company_box2,
    .company_box3 {
        margin-bottom: 30px;
    }
    .campanylogo_only {
        width: 100%;
        /* height: 150px; */
        /* float: left; */
        /* margin-right: 20px; */
    }
    .campanylogo_only .company_box3.clearfix {
        width: 47%;
        height: auto;
        float: left;
        margin-right: 6%;
        background: none;
    }
    .campanylogo_only .company_box3.clearfix:nth-child(2),
    .campanylogo_only .company_box3.clearfix:nth-child(4),
    .campanylogo_only .company_box3.clearfix:nth-child(6),
    .campanylogo_only .company_box3.clearfix:nth-child(8),
    .campanylogo_only .company_box3.clearfix:nth-child(10),
    .campanylogo_only .company_box3.clearfix:nth-child(12),
    .campanylogo_only .company_box3.clearfix:nth-child(14) {
        margin-right: 0px;
    }
    .campanylogo_only .logo_box {
        width: 100%;
        padding: 0;
        float: none;
    }
    .campanylogo_only .logo_box p {
        padding: 0 7%;
    }
    .campanylogo_only .logo_box img {
        border: none;
    }
    p.no_logo {
        background: rgba(205, 62, 44, 1.0);
        color: white;
        padding: 10px 30px;
        text-align: center;
    }
    .company_box2 .logo_box p,
    .company_box3 .logo_box p {
        text-align: center;
    }
    .logo_box img {
        border: solid 1px #ccc;
    }
}


/*隰暦ｽｲ髴育判�ｳ遨ゑｽｺ�ｺ郢晢ｽｪ郢ｧ�ｹ郢晏現��ｸｺ阮吮穐邵ｺ�ｧ*/

@media screen and (max-width: 768px) {
    /**
BASIC
*/
    body {
        font-size: 0px;
        -webkit-text-size-adjust: none;
        font-size: 14px;
    }
    img {
        max-width: 100% !important;
        box-sizing: border-box;
    }
    #wrapper {
        /*padding: 5px;*/
        box-sizing: border-box;
    }
    #contents {
        width: 100%;
        padding-top: 0px;
    }
    #main_contents {
        float: none;
        width: 100%;
        margin-right: 0px;
    }
    #sidebar {
        float: none;
        width: 100%;
    }
    .inner {
        width: 100%;
    }
    #wrapper,
    #main_contents,
    #sidebar,
    .inner {
        float: none;
        width: 100%;
    }
    #sidebar .block {
        padding: 10px;
    }
    #home #contents {
        margin-top: -120px;
        padding-top: 0px;
    }
    /**
HEADER
*/
    #header {
        background: rgba(255, 255, 255, 1.0);
    }
    #header .inner {
        padding: 5px;
        box-sizing: border-box;
    }
    #header p.logo {
        margin: 0;
    }
    #header h1.logo {
        margin: 5px 0;
    }
    #header h1.logo img.title {
        max-height: 25px;
    }
    #header h1 span {
        display: block;
        text-align: center;
    }
    #header .box_social {
        /*position: inherit ;
	margin: 0 0 20px 0;
	text-align: center;*/
        display: none;
    }
    /**
SUB NAVI
*/
    #header .sub_navi {
        display: none;
    }
    /**
GLOBAL NAVI
*/
    .megamenu .dropdown_fullwidth {
        /*display: none !important;*/
    }
    .megamenu li {
        border-top: solid 1px #999;
    }
    .megamenu li.about {
        margin-top: 10px !important;
    }
    .megamenu li a {
        border-top: solid 1px #EEE;
        background: url(../images/icon_plus.png) no-repeat 96% 50%;
        background-size: 12px;
    }
    .megamenu li.active a {
        background: url(../images/icon_minus_w.png) no-repeat 96% 50% #717777;
        background-size: 12px;
    }
    .megamenu li.reserve a {
        background-image: none !important;
    }
    .megamenu li.megamenu_button a {
        border: none;
        background: none;
    }
    .megamenu li a .dropdown_fullwidth li a {
        background: none;
    }
    .dropdown_fullwidth:after {
        left: 10% !important;
    }
    .megamenu .dropdown_fullwidth .intro {
        display: none;
    }
    .megamenu_button {
        position: absolute;
        top: -40px;
        right: 0px;
        color: #cd3e2c;
    }
    .megamenu_container .megamenu>li.megamenu_button.megamenu_button_active {
        top: -45px;
    }
    .megamenu_container .megamenu>li>a {
        padding: 10px 0 10px 10px !important;
    }
    .megamenu_button i {
        color: #cd3e2c;
        margin: 0 !important;
    }
    .megamenu p {
        margin: 0 0 2em 0;
    }
    .megamenu ul {
        clear: both;
        padding: 20px 0;
    }
    .megamenu ul li {
        display: block;
        margin-right: 0px;
        width: 100%;
    }
    .megamenu ul li a {
        display: block;
        position: relative;
        z-index: 9999;
        padding: 15PX 10px;
        font-size: 13px;
        border: none;
        color: #FFF;
        background-color: rgba(113, 119, 119, 1.0);
        !important;
    }
    .megamenu li ul li a {
        background-image: none !important;
    }
    .dropdown_fullwidth {
        padding: 0 !important;
    }
    .dropdown_fullwidth ul {
        padding: 0 !important;
    }
    .dropdown_fullwidth ul li a {
        margin: 0 !important;
    }
    .megamenu .pc {
        display: none;
    }
    .megamenu .sp {
        display: inherit;
    }
    /*.megamenu > li.about > a{
    pointer-events: none;
}*/
    /**
TOPIC PATH
*/
    #topic_path {
        padding: 0px;
    }
    #topic_path .inner {
        display: none;
    }
    /**
ACCORDION
*/
    dl.faq.accordion dt {
        background-size: 20px;
    }
    dl.faq.accordion dt.active {
        background-size: 20px;
    }
    /**
BOTTOM_NAVI
*/
    ul.bottom_navi li ul li {
        font-size: 100%;
    }
    ul.bottom_navi li {
        float: none;
        width: 100%;
        margin-bottom: 1.5em;
    }
    ul.bottom_navi li ul li {
        margin-bottom: 0;
    }
    ul.bottom_navi li h3 {
        cursor: pointer;
    }
    /**
COMMON_LAYOUT
*/
    .block {
        padding: 10px 10px;
    }
    /**
COLUMN
*/
    .column {
        clear: both;
    }
    .column p:first-child {
        margin-top: 0;
    }
    .column .right,
    .column .left,
    .column .wide,
    .column .narrow {
        width: 100%;
        margin: 0 0 1em 0;
        float: none;
    }
    /**
COMMON_PARTS
*/
    h1,
    h2,
    h3 {
        font-size: 100%;
    }
    div.title {
        margin-bottom: 10px;
    }
    div.title h2 {
        font-size: 150%;
        padding: 0 10px;
    }
    div.title h3 {
        font-size: 150%;
    }
    div.title h4 {
        font-size: 130%;
        padding: 10px 20px;
    }
    div.title h5 {
        font-size: 120%;
        margin-bottom: 0;
    }
    p.catch {
        font-size: 140% !important;
    }
    p.lead {
        font-size: 105%;
    }
    p.frame span {
        margin: 0 0 10px 0;
        display: block;
        text-align: center;
    }
    p.frame {
        text-align: left;
    }
    p.frame a {
        display: block;
        padding: 10px;
    }
    /**
HOME
*/
    div.title .more {
        position: absolute;
        right: 0;
        bottom: -10px;
    }
    .block.pickup {
        padding: 20px 0 15px 0;
    }
    #home div.title h3 {
        font-size: 150%;
        margin-bottom: -5px;
        margin-top: -10px;
    }
    .block.share {
        padding: 30px 10px 10px 10px;
    }
    .block.share ul.column_3 li {
        border-bottom: solid 1px #FFF;
        padding: 10px 0;
    }
    .block.share ul.column_3 li:last-child {
        border: none;
    }
    /**
SLIDER-PRO
*/
    .slider-pro {
        /*min-height: 500px;
	margin-bottom: 150px !important;*/
    }
    .slider-pro p.copy {
        font-size: 20px;
        top: 62%;
        left: 0%;
    }
    .slider-pro p.copy span.button {
        font-size: 12px;
    }
    .sp-slide p.iframeBox,
    .bg_movie,
    #bgndVideo {
        display: none;
    }
    .sp-slide a.sp {
        display: inherit;
    }
    #full {
        /*position: relative;
	left: 0;*/
        top: -80px;
        /*top: 75px;*/
    }
    .sp-buttons {
        bottom: 60px;
    }
    /*陷ｿ�ｳ驕擾ｽ｢陷奇ｽｰ邵ｺ�ｮ郢ｧ�｢郢ｧ�､郢ｧ�ｳ郢晢ｽｳ郢晁ｼ斐°郢晢ｽｳ郢晢ｿｽ*/
    .sp-next-arrow:before {
        font-size: 20px;
        /*font-family: FontAwesome;
	content: '\f105';*/
    }
    /*陝ｾ�ｦ驕擾ｽ｢陷奇ｽｰ邵ｺ�ｮ郢ｧ�｢郢ｧ�､郢ｧ�ｳ郢晢ｽｳ郢晁ｼ斐°郢晢ｽｳ郢晢ｿｽ*/
    .sp-previous-arrow:before {
        font-size: 20px;
        /*font-family: FontAwesome;
	content: '\f104';*/
    }
    /*.big-background-default-image {
background:url(../images/slider_1.jpg);
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
width:100%;
height:100%;
z-index:0;
backface-visibility:hidden
}
*/
    /**
BX-SLIDER
*/
    .bx-wrapper img {
        max-width: 100%;
        height: inherit;
        margin: 0;
    }
    .bx-wrapper .bx-viewport {
        left: 0px !important;
    }
    .bx-wrapper a.bx-prev {
        left: 10px !important;
    }
    .bx-wrapper a.bx-next {
        right: 15px !important;
    }
    /**
SIDEBAR
*/
    .banner ul li img {
        width: inherit;
    }
    #sidebar .block.search input {
        width: 100%;
    }
    #sidebar .block.search button {
        margin-left: -40px;
    }
    /**
BLOG
*/
    .blog #feed dl dt {
        float: none;
        width: 100%;
        display: box;
        margin-bottom: 0.2em;
    }
    .blog #feed dl dd {
        float: inherit;
        width: 100%;
        display: box;
        margin-bottom: 1em;
    }
    /**
DATA
*/
    dl.data {
        margin: 1em 0;
    }
    dl.data dt {
        float: none;
        width: 100%;
        margin-bottom: .5em;
    }
    dl.data dd {
        float: none;
        width: 100%;
        margin-bottom: .5em;
    }
    /**
LIST_BOX
*/
    ul.item.box {
        margin-left: 0;
    }
    ul.item.box li {
        list-style: none;
        float: left;
        margin: 0 0 1% 1%;
        /*border: solid 1px #EEE;
	padding: 10px;*/
    }
    ul.item.box.column_3 li,
    ul.item.box.column_4 li,
    ul.item.box.column_5 li {
        width: 49%;
        margin: 0 0 1% 1%;
    }
    ul.item.box.column_3.static li {
        width: 32.3%;
    }
    ul.item.box.column_2.line_1 li,
    ul.item.box.column_3.line_1 li,
    ul.item.box.column_4.line_1 li {
        width: 100%;
        margin: 0 0 1% 0 !important;
    }
    ul.item.box.column_3.line_1 li input.btn,
    ul.item.box.column_3.line_1 li button.btn,
    ul.item.box.column_3.line_1 li a.btn.btn {
        width: 100%;
        box-sizing: border-box;
    }
    ul.item.box.column_8 li {
        width: 24%;
        margin: 0 0 1% 1%;
    }
    .block.news ul.item.box.column_3 li,
    .block.share ul.item.box.column_3 li,
    #staff ul.item.box.column_4 li,
    #news ul.item.box.column_3 li,
    #donate ul.item.box.column_3.bg li,
    #donate ul.item.box.column_4 li,
    #people.detail ul.item.box.column_4 li,
    #vision #vision_credo ul.item.box.column_4 li,
    ul.item.box.line_1 li {
        width: 100%;
        margin-bottom: 1em;
        margin-left: 0;
    }
    #donate ul.item.box.column_3.bg li {
        margin-bottom: 1%;
    }
    .block.pickup ul.item.box li p.title,
    .block.news ul.item.box li p.title,
    #news ul.item.box li p.title,
    #staff ul.item.box li p.title {
        font-size: 14px;
        font-weight: bold;
    }
    ul.item.box li p.name {
        font-size: 100%;
    }
    ul.item.box li p.image.right img {
        width: 100%;
        float: none;
        margin-bottom: 10px;
    }
    p.button.fl_left {
        float: none;
    }
    ul.item.box.bg li {
        padding: 10px;
    }
    ul.item.box.bg.compact {
        font-size: 85%;
    }
    ul.item.box.bg li img.fl_right {
        float: none;
        margin: 0 auto 10px auto;
        display: block;
        text-align: center;
    }
    ul.item.box.icon.list .logo_image i {
        font-size: 20px;
    }
    ul.item.box.icon.list .logo_image {
        max-height: 30px;
        width: 30px;
        margin-right: 10px;
    }
    #donate #col_5 ul.item.box.bg.icon.line_1 li {
        padding: 10px;
        margin-bottom: 2px;
    }
    #donate #col_5 ul.item.box.bg.icon.line_1 p.title {
        margin: 0;
    }
    /**
FLOW
*/
    ul.column_3.flow li {
        background: none;
        /*width: 32% !important;*/
    }
    ul.flow li {
        background: url(../images/arrow_down.png) center bottom no-repeat !important;
        background-size: 20px !important;
        padding-bottom: 40px;
    }
    ul.flow li:last-child {
        background-image: none !important;
    }
    ul.column_3.flow li .content {
        padding: 15px;
        min-height: 50px;
        font-size: 100%;
        width: inherit;
    }
    #about.access ul.flow.column_5.flow li .content {
        padding: 0;
    }
    #about.access ul.flow.column_5.flow li,
    #about.access ul.column_3.bg li,
    ul.flow.howto li {
        width: 100% !important;
        margin: 0 0 1% 0;
    }
    ul.flow.howto li {
        padding: 0 !important;
    }
    ul.flow.howto li .content {
        display: block;
        box-sizing: border-box;
        text-align: left;
        min-height: auto;
    }
    /**
MAP
*/
    #map {
        height: 200px;
    }
    /**
TAB
*/
    ul.tab li br {
        display: inherit;
    }
    ul.tab.access li {
        height: 6em;
    }
    /**
TABLE
*/
    table.data.winning th,
    table.data.winning td {
        display: block;
        width: 100%;
        border-bottom: none;
    }
    /**
FORM
*/
    input,
    button,
    textarea,
    select {
        -webkit-appearance: none;
        border-radius: 0;
    }
    div.form {
        padding: 10px;
    }
    div.form dl dt,
    div.form dl dd {
        float: none;
        width: 100%;
        margin: 0;
    }
    div.form dl dt {
        padding: 10px 0;
    }
    div.form dl dd {
        border: none;
        padding: 0 0 10px 0;
    }
    div.form dl dd span {
        display: block;
        margin: 0 0 10px 0;
    }
    div.form dl dd span input {
        margin-top: 5px;
    }
    div.form .caution {
        display: block;
        margin-top: 5px;
    }
    /**
INPUT
*/
    input[type="text"],
    textarea,
    /*input[type="text"].size_s,*/
    input[type="text"].size_m,
    input[type="text"].size_l {
        width: 100%;
    }
    input[type="text"].size_s {
        width: auto;
    }
    /**
SELECT
*/
    select.select-box,
    select.select-box_op {
        width: 100%;
    }
    /**
BUTTON
*/
    input[type="submit"].btn,
    button,
    a.btn {
        height: 30px;
        line-height: 30px;
        padding: 0 10px;
    }
    a.btn.line {
        padding: 10px;
    }
    input[type="submit"].btn.size_l,
    button.size_l,
    a.btn.size_l {
        height: 40px;
        line-height: 40px;
    }
    /**
CONTENTS
*/
    /**COMMON*/
    /*---------------------------20180614-----------------------------------------*/
    .btn.div0614.resp0614 {
        margin: 0 0 20px 30px;
        height: 80px;
        width: 310px;
    }
    /*---------------------------20180614-----------------------------------------*/
    .block.main_area {
        height: 250px !important;
        padding: 0 20px 20px 20px;
    }
    #staff .block.main_area {
        height: 320px !important;
    }
    .block.main_area p.main_catch {
        position: inherit;
        top: 160px;
        left: 0%;
        font-size: 130%;
        /*text-shadow: 1px 1px 1px rgba(0,0,0,0.5);*/
    }
    #staff .block.main_area p.main_catch {
        top: 10px;
    }
    #action.realestate .block.main_area p.main_catch {
        top: 10px;
    }
    .block.main_area p.main_lead {
        position: inherit;
        top: 30px;
        left: 0%;
        padding-left: 10px;
        font-size: 100%;
        display: none;
    }
    .block.main_area p.btn {
        position: inherit;
        top: 0px;
        left: 0%;
        font-size: 100%;
        line-height: 0.1;
    }
    .block.main_area p.btn a {
        padding: 5px;
    }
    .box.photo_on_text .wrap {
        height: auto;
        padding: 0;
    }
    .box.photo_on_text .wrap img:hover {
        transform: scale(1.00) !important;
    }
    .box.photo_on_text .wrap .box_text,
    .box.photo_on_text .wrap .box_text.bg_no {
        position: inherit;
        background-color: #f9f9f9;
        width: 100%;
        padding: 10px 15px;
        height: auto;
    }
    .box.photo_on_text .wrap .box_text p {
        line-height: 1.6;
    }
    ul.btn.list li p.catch {
        position: absolute;
        top: 10px;
        left: 10px;
    }
    ul.btn.list li p.btn.frame span {
        font-size: 100%;
        right: 10px;
        bottom: 10px;
    }
    .bottom_link ul.btn.list li p.btn.frame span a {
        font-size: 120%;
        border: none;
    }
    /**ABOUT*/
    #about .about_img1.pc {
        display: none;
    }
    #about .about_img1.sp {
        display: block;
        text-align: center;
    }
    #about ul.prize li {
        width: 100%;
        margin-bottom: 10px;
    }
    #about.ceo .box.photo_on_text .wrap .box_text p {
        font-size: 110%;
        line-height: 1.6;
    }
    #about.ceo .box.photo_on_text .wrap .box_text p.lead {
        color: black;
        text-shadow: none;
    }
    #about.ceo .box.photo_on_text .wrap .box_text p.sign .light {
        display: none;
    }
    #about.ceo .block#col_1 .column .left {
        padding: 10px 20px;
        background-color: rgba(250, 241, 223, 0.6);
    }
    #about.ir #contents .block p {
        width: 100%;
    }
    #about.ir #contents .block p.caution {
        margin: -10px auto 20px auto;
    }
    /**VISION*/
    #vision .block.main_area .visual {
        text-align: center;
        margin: 20px;
    }
    #vision .block.main_area .visual.sp {
        display: inherit;
    }
    #vision .block.main_area .visual.pc {
        display: none;
    }
    #about .block.main_area {
        background-position: center top;
        background-repeat: no-repeat;
        height: 300px !important;
        background-attachment: inherit;
        min-height: inherit;
        height: auto;
    }
    #vision .block.main_area {
        height: inherit !important;
        font-size: 80%;
    }
    #vision .block.main_area p {
        text-align: left;
    }
    #vision .block.main_area .box.intro p.catch {
        text-align: center;
    }
    #vision .block.main_area p br {
        display: none;
    }
    /*#vision .block#col_2 .column .left{
	padding: 20px;
	font-size: 80%;
}

#vision .block#col_3 .column .left{
	padding: 20px;
	font-size: 80%;
}
*/
    #vision .block#col_2 .column .left.half {
        font-size: 80%;
        padding: 15px 0;
        height: auto;
        background-color: #F9F9F9;
    }
    #vision .block#col_3 .column .left.half {
        font-size: 80%;
        height: auto;
        padding: 15px 0;
        background-color: #F9F9F9;
    }
    #vision.top .block#col_5 p {
        line-height: 1.6;
        text-align: left;
    }
    #vision.top .block#col_5 p br {
        display: none;
    }
    span.title_icon img {
        height: 80px;
    }
    #vision #col_1 .box.photo_on_text .wrap .box_text {
        width: 100%;
    }
    #vision span.title_icon {
        display: table-cell;
        padding-bottom: 10px;
        width: 20%;
    }
    #vision .block div.title {
        display: table-cell;
        vertical-align: bottom;
        padding-left: 10px;
        padding-bottom: 10px;
    }
    #vision ul.item.box.card li.sp {
        display: block;
    }
    #vision_way_btn {
        display: none;
    }
    /**PEOPLE*/
    #people.detail .article .inner > .inner {
		display: block;
	}
    #people.detail .article .photo {
        width: 100%;
        display: block;
        vertical-align: bottom;
        padding-bottom: 1em;
        text-align: center;
    }
    #people.detail .article .photo .title {
        position: inherit;
        margin: 0 auto;
    }
    #people.detail .article .photo img {
        margin: 0;
    }
    #people.detail .article .content {
        width: 100%;
        display: block;
    }
    /**ACTION*/
    /**SOLUTION*/
    #solution .block.main_area {
        /* height: 520px !important; */
        /* height: 777px !important; */
        padding: 0;
        display: inline-table;
    }
    #solution .block.main_area ul {
        margin: 2% 0;
    }
    #solution .block.main_area ul li {
        width: 48%;
        height: 171px;
        /* height: 120px; */
        margin: 1%;
    }
    #solution .block.main_area ul li h3 {
        font-size: 12px;
        line-height: 1.2;
    }
    #solution .block.main_area ul li a {
        width: auto;
        /* height: 80px; */
        height: 131px;
    }
    @media screen and (max-width:480px) {
        #solution .block.main_area ul li {
            height: 127px;
        }
        #solution .block.main_area ul li a {
            height: 87px;
        }
    }
    #solution .block.main_area ul li span.mgnR {
        margin-right: 3% !IMPORTANT;
    }
    #solution .block.main_area ul li span.banner {
        display: inline-block;
        margin: 0;
    }
    #solution .block.main_area ul li.col_2 span.banner {
        width: 46%;
        margin-bottom: 5%;
    }
    #solution .block.main_area ul li.col_3 span.banner {
        width: 48%;
    }
    #solution .block.main_area ul li.col_4 span.banner {
        margin-bottom: 3%;
        width: 46%;
    }
    #solution .block.main_area ul li span.banner span.text {
        padding: 10px;
        display: block;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.1);
    }
    #solution .block.main_area ul li span.banner img {}
    #solution .block.main_area ul li.nolink {
        display: none;
    }
    #solution .box .wrap {
        position: relative;
        height: auto;
    }
    #solution .box .wrap img {
        width: 100%;
        transition: 0.5s;
    }
    #solution .box .wrap img:hover {
        transform: scale(1.00);
    }
    #solution .box .wrap .box_text {
        position: inherit;
        width: 100%;
        padding: 20px;
        height: auto;
    }
    #solution .box .sub {
        padding: 0px;
    }
    #solution .simple_accordion.btn {
        display: inherit;
    }
    #solution .box .sub {
        display: none;
        position: inherit;
        min-height: inherit;
        margin-top: 0;
        margin-left: 0% !important;
        margin-right: 0% !important;
        padding: 0;
        z-index: 20;
        background: inherit;
        font-size: 13px !important;
        color: #666;
    }
    /**NEWS*/
    #news .block.head {
        background-color: inherit;
        padding: 0 10px 10px 10px;
    }
    #news.detail .block.head {
        display: none;
    }
    #news .block.head div.main_image h3.title {
        left: 15px;
        bottom: 40px;
        font-size: 180%;
    }
    #news .block.head div.main_image p.lead {
        bottom: 15px;
        left: 15px;
        font-size: 80% !important;
    }
    #news .block.head ul li {
        list-style: none;
        margin: 0 2px 2px 0;
        font-size: 10px;
    }
    #news .block.head ul li a {
        padding: 8px;
    }
    .block.article {
        padding: 0px 15px;
        border: solid 1px #EEE;
        margin: 0 10px;
    }
    .block.article .sentence p,
    .block.article .sentence h3,
    .block.article .sentence h4,
    .block.article .sentence h5,
    .block.article .sentence h6,
    .block.article .sentence table,
    .block.article .sentence div.blog-card {
        width: 100%;
    }
    .block.news ul.item.box.column_3 li p.image
    /*#news ul.item.box.column_3 li p.image,
#staff ul.item.box.column_4 li p.image*/
    {
        height: 100px;
        overflow: hidden;
    }
    .block.news ul.item.box.column_3 li p.image,
    #news ul.item.box.column_3 li p.image,
    #staff ul.item.box.column_4 li p.image,
    #donate ul.item.box.column_4 li p.image {
        height: auto;
        overflow: hidden;
    }
    .block.news ul.item.box.first {
        padding-bottom: 20px;
        margin: 0 !important;
    }
    .block.news ul.item.box.first li {
        width: 100%;
        float: none;
        margin: 0;
        background: #EEE;
    }
    .block.news ul.item.box li {
        padding: 10px;
        /*background: rgba(0,0,0,0.05);*/
        border: solid 1px #EEE;
    }
    .block.news ul.item li .category {
        top: 11px;
        left: 11px;
    }
    .block.news ul.item.box.first li p.title {
        font-size: inherit;
        font-weight: normal;
    }
    .block.news ul.item.box.first li .box_social {
        padding-top: 8px !important;
        margin-top: 5px !important;
    }
    .block.news ul.item.box.first li .box_social li {
        margin: inherit;
    }
    .block.news ul.item.box.first li .box_social i {
        font-size: inherit !important;
    }
    ul.item li .box_social {
        text-align: center;
        margin: 0 auto;
        display: inline-block;
        width: 100px;
    }
    ul.item li .box_social ul li {
        text-align: left;
        margin: 0;
        width: 30% !important;
    }
    .block.article h3 {
        font-size: 160%;
    }
    /**STAFF*/
    #staff.top #col_3 .box {}
    #staff.top #col_3 .box p.text {
        font-size: 70%;
    }
    #staff.top #col_3 .box p.text a {
        padding: 10px;
    }
    #staff.top #col_3 .box p.text span.name {
        display: block;
        font-size: 150%;
        line-height: 1;
    }
    #staff.top #col_3 .box p.text.left {
        left: 10px;
        bottom: 10px;
    }
    #staff.top #col_3 .box p.text.right {
        right: 10px;
        bottom: 10px;
    }
    /**
FAQ
*/
    dl.faq .square {
        width: 20px;
        height: 20px;
        line-height: 20px;
        font-size: 12px;
    }
    dl.faq dt {
        font-size: 100%;
    }
    dl.faq dt p {
        margin: 0 30px 0 30px;
        padding-top: 0px;
    }
    dl.faq dd p {
        margin: 0 0 1em 30px;
    }
    /**
FOOTER
*/
    #footer {
        padding: 20px;
        min-height: 620px;
    }
    #footer ul.bottom_navi ul {
        display: none;
    }
    .sub_navi {
        float: none;
        text-align: center;
    }
    .copy {
        text-align: center;
    }
    /**
DONATE BUTTON
*/
    .btn_sp {
        display: block;
    }
    #home #btn_donate,
    #news #btn_donate,
    #about #btn_donate,
    #vision #btn_donate,
    #solution #btn_donate,
    #donate #btn_donate,
    #staff #btn_donate {
        display: block;
        width: 100%;
        position: fixed;
        bottom: 0;
        background: rgba(0, 0, 0, 0.4);
        z-index: 999;
        text-align: center;
    }
    #home #btn_donate p,
    #news #btn_donate p,
    #about #btn_donate p,
    #vision #btn_donate p,
    #solution #btn_donate p,
    #donate #btn_donate p,
    #staff #btn_donate p {
        margin: 5px 0;
    }
    /**
PAGE TOP
*/
    #page-top {
        position: fixed;
        bottom: 5px;
        right: 5px;
        z-index: 9999;
        margin: 0;
    }
    #page-top a {
        width: 38px;
        height: 38px;
        line-height: 38px;
        font-size: 14px;
    }
}


/*寄付で応援する*/

.inner_delete #footer .inner {
    display: none;
}

#col_7[delete] {
    display: none;
}


/* CSR */

.inner ul.item.box.column_2.bg li img {
    margin: 0 0 5px 17px;
}

.inner ul.item.box.column_2.bg li p.title {
    margin-bottom: 4%;
}

.inner li .case_txt {
    padding-left: 3%;
    width: 50%;
}

.inner li .zirei_tit {
    margin-left: 3% !important;
    font-size: 98% !important;
}

.inner ul.company_list li {
    float: none;
    padding: 0px !important;
    width: 100% !important;
    list-style: disc !important;
    display: list-item;
}

.inner ul.company_list li a {
    text-decoration: underline !important;
}

.inner ul.company_list {
    margin-left: 6%;
}

@media screen and (max-width: 768px) {
    .inner li .case_txt {
        width: auto;
        margin-top: 6% !important;
    }
    .inner ul.item.box.column_2.bg li img {
        margin: 0 auto 10px auto;
    }
    .inner ul.company_list {
        margin-left: 7%;
    }
    .inner li .zirei_tit {
        margin-left: 0 !important;
    }
    .inner li .case_txt {
        padding-left: 0 !important;
        width: auto;
        margin-top: 5% !important;
    }
}

@media screen and (min-width: 769px) {
    .left.wide2 {
        width: 1120px;
    }
    .column_leftbox {
        width: 640px;
        float: left;
    }
    .column_rightbox {
        width: 320px;
        float: right;
    }
    .inner2 {
        width: 740px;
        margin: 0 auto;
    }
    li.w_365 {
        width: 365px;
    }
    /*Newsページ*/
    .center.clear.pc_none {
        display: none;
    }
    .sub_navi.new_footer_link .pc_none {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .column_rightbox {
        margin-bottom: 30px;
    }
    .inner3 ul.column_3 li.button,
    .inner3 ul.column_3 li.tel {
        width: 100%;
    }
    /*Newsページ*/
    .center.clear.sp_none {
        display: none;
    }
    .center.clear.pc_none a {
        height: auto;
        padding: 10px;
        line-height: 1.7;
    }
    /*寄付で応援する*/
    .footer2 {
        min-height: 210px;
    }
    .sub_navi.new_footer_link {
        margin: 0;
    }
    .sub_navi.new_footer_link ul:nth-of-type(2) {
        margin-top: 1em;
    }
    .sub_navi.new_footer_link ul:nth-of-type(2) li {
        display: block;
        width: 100%;
        margin-bottom: 0.5em;
    }
    .sub_navi.new_footer_link ul:nth-of-type(1) {
        text-align: center;
        margin: 0;
    }
}


/*privacy*/

.numkakko_item {
    padding-left: 2em;
    padding-bottom: 2%;
}

.numkakko_item ol {
    padding-left: 3em;
}

.numkakko_item ol li {
    line-height: 1.5em;
}

.numkakko_item .num_item {
    list-style-type: none;
}

.numkakko_item li.num_item {
    margin-bottom: 8px;
    padding-left: 4px;
    text-indent: -1.5em;
    line-height: 1.3em;
}

.numdot_item ul .num_item ol {
    padding-left: 2em;
    text-indent: 0;
}

.numdot_item {
    list-style-type: decimal;
    padding-bottom: 2%;
}

.numdot_item p {
    padding-left: 1em;
}

.numdot_item span {
    font-weight: bold;
    font-size: 1.1em;
    text-decoration: underline;
}

.txtright {
    text-align: end;
}

.numdot_item.add_css ul {
    margin-top: 2%;
}

.numdot_item.add_css ul li p {
    padding-left: 0;
    text-indent: 0;
}

.privacyList {
    padding-left: 3%;
}

@media screen and (max-width: 768px) {
    .privacyList {
        padding-left: 8%;
    }
}

/* 20200109 */
.youtube{
    position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow:auto; 
  -webkit-overflow-scrolling:touch;
}
.youtube iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
}


/* 20200930 contact page */
.contact-wrap h5{
    margin-top:30px;
    line-height: 28px;
}
.contact-wrap h5 span{
    font-weight: normal;
}
.contact-wrap h5 span{
	font-size: 16px;
	border-radius: 4px;
	line-height: 16px;
    background: #d97b6f;
	display: inline-block;
	margin-left: 10px;
}
.contact-wrap h5 span a{
	color: #fff;
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: block;
    padding: 5px 15px;
}
.contact-wrap h5 span a:hover{
	opacity: .7;
    -webkit-opacity: .7;
    -moz-opacity: .7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}
.contact-wrap .content.mb{
	margin-bottom:50px;
}
.contact-wrap p.frame span.center{
	text-align: center;
}
.contact-wrap p.frame{
	margin-bottom:50px;
}
.contact-wrap .caution{
    margin: 10px 0;
    line-height: 22px;
}
.contact-wrap p.frame a{
    box-sizing: border-box;
    position: relative;
    padding-right: 50px;
    min-width: 250px;
    text-align: center;
}
.contact-wrap p.frame a i{
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -7px;
}
@media screen and (max-width: 767px) {
	.contact-wrap h5 span{
		text-align: center;
		margin-left: 0;
        line-height: 10px;
        padding: 0;
        display: inline-block;
        vertical-align: text-top;
	}
    .contact-wrap h5 span a{
        font-size: 12px;
        width: auto;
    }
    .contact-wrap p.frame a{
        padding: 10px 20px;
    }
    .contact-wrap p.frame a i{
        right: 10px;
    }
    .contact-wrap p.frame span{
        text-align: left;
    }
}

/* 保育系採用追加エリア 20201221 */
#childcare_staff .inner.frame{
    border: solid #cdcdcd 2px;
    padding: 30px 60px 20px;
    margin-bottom: 30px;
}
#childcare_staff ul.item.box.column_3 li {
    padding: 15px;
}
#childcare_staff ul.item.box li a{
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    #childcare_staff .inner.frame{
        padding: 20px 30px;
    }
    #childcare_staff ul.item.box.column_3 li{
        width: 100%;
        margin: 15px 0;
        padding: 0;
    }
}

/* 福祉系採用追加エリア 20201224 */
#staff p.frame a {
    padding: 10px 20px;
}
@media screen and (max-width: 768px) {
    #staff p.frame a {
        padding: 5px;
    }
}

/* CSRページ 20210226 */
.wrap_csr p.frame a {
    font-size: 200%;
    border: none;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr p.frame a {
      font-size: 100%;
    }
  }
  .wrap_csr .btn {
    position: relative;
  }
  .wrap_csr .btn:before {
    position: absolute;
    font-family: "FontAwesome";
    content: "\f105";
    width: 14px;
    height: 20px;
    top: 0;
    right: 12px;
  }
  .wrap_csr input.btn.size_l, .wrap_csr button.size_l, .wrap_csr a.btn.size_l {
    padding: 0 50px;
  }
  .wrap_csr .btn.list .btn:before {
    display: none;
  }
  .wrap_csr .title.h2_main {
    text-align: left;
    margin: 10px 0 20px 0;
  }
  .wrap_csr .sp {
    display: none;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sp {
      display: block;
    }
  }
  .wrap_csr * {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans";
  }
  @media screen and (min-width: 768px) {
    .wrap_csr .block {
      padding: 90px 0;
    }
    .wrap_csr .block#sec03 {
      padding-bottom: 0;
    }
  }
  @media screen and (max-width: 767px) {
    .wrap_csr {
      overflow: hidden;
    }
    .wrap_csr .block {
      padding: 10px 20px 50px;
    }
    .wrap_csr .block#sec03 {
      padding-bottom: 0;
    }
  }
  .wrap_csr .bg {
    background-color: #F7F4EE;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .bg {
      padding-bottom: 70px;
    }
  }
  .wrap_csr ul {
    list-style-type: none;
  }
  .wrap_csr .flex {
    display: flex;
    flex-wrap: wrap;
  }
  .wrap_csr .message {
    padding: 30px;
    background-color: #F7F4EE;
    position: relative;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .message {
      padding: 20px;
    }
    .wrap_csr .message .h4 {
      margin-top: 40px;
      margin-bottom: -8px;
    }
    .wrap_csr .message p {
      margin-bottom: 40px;
    }
  }
  .wrap_csr .message > div {
    background-color: #FFF;
  }
  .wrap_csr .message > div > div {
    width: 50%;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .message > div > div {
      width: 100%;
    }
  }
  .wrap_csr .h4 {
    margin: 63px 0 30px;
    text-align: center;
  }
  .wrap_csr .message h4 {
    position: relative;
    font-size: 26px;
    line-height: 44px;
    font-weight: bold;
    color: #E40012;
    background: linear-gradient(transparent 80%, #EDE6B9 0%);
    display: inline;
  }
  .wrap_csr p {
    font-size: 16px;
    text-align: center;
    line-height: 30px;
  }
  .wrap_csr p.lead {
    text-align: left;
    margin: 58px 0;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr p.lead {
      margin: 0;
      padding: 38px 20px;
    }
  }
  .wrap_csr .aboutus_txt {
    margin: 0 11vw;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .aboutus_txt {
      margin: 20px;
    }
  }
  .wrap_csr .aboutus_txt p {
    border: solid #DFDFDF 2px;
    border-radius: 7px;
    padding: 40px 40px;
    text-align: center;
    margin: 0 auto;
    font-size: 14px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .aboutus_txt p {
      font-size: 13px;
      padding: 23px 11px;
      line-height: 23px;
    }
  }
  .wrap_csr .aboutus_txt p span {
    font-size: 12px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .aboutus_txt p span {
      font-size: 11px;
    }
  }
  .wrap_csr .sdgs {
    border: solid #CCCCCC 8px;
    padding: 50px 50px 60px;
    margin-top: 80px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs {
      margin: 80px 0 -10px;
      padding: 30px;
      padding-bottom: 80px;
    }
  }
  .wrap_csr .sdgs h4 {
    font-size: 28px;
    font-weight: bold;
    color: #333;
    text-align: center;
    margin: 30px 0 90px;
    position: relative;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs h4 {
      font-size: 5.6vw;
      margin-bottom: 55px;
    }
  }
  .wrap_csr .sdgs h4:before, .wrap_csr .sdgs h4:after {
    position: absolute;
    content: '';
    width: 130px;
    height: 3px;
    bottom: -30px;
    left: 50%;
    background-color: #E40012;
    margin-left: -65px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs h4:before, .wrap_csr .sdgs h4:after {
      bottom: -25px;
    }
  }
  .wrap_csr .sdgs h4:after {
    bottom: -35px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs h4:after {
      bottom: -30px;
    }
  }
  .wrap_csr .sdgs .flex > * {
    width: 50%;
    font-size: 120%;
    line-height: 32px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs .flex > * {
      width: 100%;
      font-size: 14px;
      line-height: 24px;
    }
  }
  .wrap_csr .sdgs .flex > img {
    padding-left: 20px;
    height: fit-content;
    box-sizing: border-box;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .sdgs .flex > img {
      height: intrinsic;
    }
  }
  .wrap_csr .sdgs p {
    text-align: left;
  }
  .wrap_csr .sdgs p span {
    font-weight: bold;
  }
  .wrap_csr div.title {
    text-align: center;
    margin: 0 0 60px 0;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr div.title {
      margin: 70px 0 35px;
    }
  }
  .wrap_csr h3.line {
    position: relative;
    display: inline-block;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line {
      width: 100%;
    }
  }
  .wrap_csr h3.line span {
    position: relative;
    display: inline-block;
    font-weight: bold;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line span {
      width: 100%;
      font-size: 5.3vw;
      line-height: 14.3vw;
    }
  }
  .wrap_csr h3.line span:before, .wrap_csr h3.line span:after {
    position: absolute;
    content: '';
    width: 3px;
    height: 100px;
    top: 0;
    left: -53px;
    background-color: #E40012;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line span:before, .wrap_csr h3.line span:after {
      left: 0;
      height: 14vw;
    }
  }
  .wrap_csr h3.line span:after {
    right: -53px;
    left: initial;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line span:after {
      right: 0;
      left: initial;
    }
  }
  .wrap_csr h3.line:before, .wrap_csr h3.line:after {
    position: absolute;
    content: '';
    width: 3px;
    height: 100px;
    top: 0;
    left: -48px;
    background-color: #E40012;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line:before, .wrap_csr h3.line:after {
      left: 5px;
      height: 14vw;
    }
  }
  .wrap_csr h3.line:after {
    right: -48px;
    left: initial;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line:after {
      right: 5px;
      left: initial;
    }
  }
  .wrap_csr h3.line.noicon {
    color: #333;
    line-height: 70px;
  }
  .wrap_csr h3.line.noicon span:before,
  .wrap_csr h3.line.noicon span:after, .wrap_csr h3.line.noicon:before, .wrap_csr h3.line.noicon:after {
    height: 66px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr h3.line.noicon {
      line-height: initial;
    }
    .wrap_csr h3.line.noicon span:before,
    .wrap_csr h3.line.noicon span:after, .wrap_csr h3.line.noicon:before, .wrap_csr h3.line.noicon:after {
      height: 14vw;
    }
  }
  .wrap_csr .contact {
    width: 830px;
    margin: 65px auto 0;
    background: #fff;
    padding: 38px 0 0;
    border: 6px #E40012 solid;
    border-radius: 10px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .contact {
      width: 100%;
      margin: 40px 0;
    }
  }
  .wrap_csr .contact p {
    font-size: 20px;
    margin: 0 0 30px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .contact p {
      font-size: 16px;
      line-height: 22px;
    }
  }
  .wrap_csr .contact a {
    font-size: 20px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .contact a {
      font-size: 16px;
    }
  }
  .wrap_csr .wrap_donate {
    width: 830px;
    margin: 0 auto;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .wrap_donate {
      width: 100%;
    }
  }
  .wrap_csr .donate_box {
    width: 50%;
    margin: 0 auto;
    width: 395px;
    margin: 10px;
    background: #fff;
    padding: 30px 37px;
    border-radius: 8px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box {
      width: 100%;
      margin: 10px 0;
      padding: 30px;
    }
  }
  .wrap_csr .donate_box a {
    margin-top: 131px;
    width: 100%;
    text-align: center;
    font-size: 20px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box a {
      font-size: 16px;
      margin-top: 31px;
    }
  }
  .wrap_csr .donate_box:first-child a {
    margin-top: 55px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box:first-child a {
      margin-top: 31px;
    }
  }
  .wrap_csr .donate_box h4 {
    text-align: center;
    color: #E40012;
    font-size: 28px;
    position: relative;
    margin-bottom: 60px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box h4 {
      font-size: 21px;
      margin-bottom: 28px;
    }
  }
  .wrap_csr .donate_box h4 span {
    color: #333;
    font-size: 20px;
    display: block;
    margin-bottom: 15px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box h4 span {
      font-size: 16px;
    }
  }
  .wrap_csr .donate_box h4:before {
    position: absolute;
    content: '';
    width: 320px;
    height: 4.8px;
    bottom: -30px;
    left: 0;
    background-color: #E40012;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box h4:before {
      width: 100%;
      height: 2px;
      bottom: -18px;
    }
  }
  .wrap_csr .donate_box h4.pad {
    padding: 15px 0;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box h4.pad {
      padding: 0;
      margin-bottom: 42px;
    }
    .wrap_csr .donate_box h4.pad:before {
      bottom: -30px;
    }
  }
  .wrap_csr .donate_box p {
    text-align: left;
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 30px;
  }
  .wrap_csr .donate_box p a {
    font-size: 16px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box p {
      font-size: 14px;
      margin-bottom: 0;
    }
    .wrap_csr .donate_box p a {
      font-size: 14px;
    }
  }
  .wrap_csr .donate_box h5 {
    font-size: 14px;
    font-weight: 300;
    color: #fff;
    background-color: #4C4C4C;
    border-radius: 13px;
    display: inline;
    padding: 7px 12px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box h5 {
      margin: 27px 0 0;
      display: inline-block;
      font-size: 12px;
    }
  }
  .wrap_csr .donate_box ul {
    margin-top: 22px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .donate_box ul {
      margin-bottom: 0;
      margin-top: 5px;
    }
  }
  .wrap_csr .donate_box ul li {
    position: relative;
    padding-left: 20px;
    line-height: 30px;
  }
  .wrap_csr .donate_box ul li:before {
    position: absolute;
    content: '';
    left: 0;
    top: 9px;
    width: 12px;
    height: 12px;
    border-radius: 15px;
    background-color: #333;
  }
  .wrap_csr .donate_box ul li a {
    font-size: 14px;
    color: #666;
    text-decoration: underline;
  }
  .wrap_csr .donate_box ul li a:hover {
    text-decoration: none;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box {
      width: 50%;
      padding: 13px;
    }
  }
  .wrap_csr .problem_box > div {
    text-align: center;
    width: 200px;
    height: 200px;
    background-color: #F7F4EE;
    border-radius: 100%;
    padding: 30px 10px;
    margin: 10px 26px 26px;
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box > div {
      margin: 0;
      width: 42vw;
      height: 42vw;
      padding-top: 5vw;
    }
    .wrap_csr .problem_box > div img {
      width: 58px;
    }
  }
  .wrap_csr .problem_box > div p {
    line-height: 22px;
  }
  .wrap_csr .problem_box:nth-child(1) div img {
    width: 96px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(1) div img {
      width: 18vw;
    }
  }
  .wrap_csr .problem_box:nth-child(2) div img {
    width: 84px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(2) div img {
      width: 16vw;
    }
  }
  .wrap_csr .problem_box:nth-child(3) div img {
    width: 118px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(3) div img {
      width: 21vw;
    }
  }
  .wrap_csr .problem_box:nth-child(3) div p {
    margin-top: 8px;
  }
  .wrap_csr .problem_box:nth-child(4) div img {
    width: 106px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(4) div img {
      width: 18vw;
    }
  }
  .wrap_csr .problem_box:nth-child(5) div img {
    margin: -7px -13px -12px 13px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(5) div img {
      width: 36vw;
    }
  }
  .wrap_csr .problem_box:nth-child(6) div img {
    width: 93px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(6) div img {
      width: 16vw;
    }
  }
  .wrap_csr .problem_box:nth-child(7) div img {
    width: 100px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box:nth-child(7) div img {
      width: 20vw;
      margin-bottom: -8px;
    }
  }
  .wrap_csr .problem_box:nth-child(7) div p {
    margin-top: 23px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .problem_box {
      margin: 0;
      padding: 13px;
    }
    .wrap_csr .problem_box:nth-child(odd) {
      padding-left: 0;
    }
    .wrap_csr .problem_box:nth-child(even) {
      padding-right: 0;
    }
  }
  .wrap_csr .return_box {
    width: 50%;
    margin: 0 auto 30px;
    padding: 0 10px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .return_box {
      width: 100%;
      padding: 0;
    }
  }
  .wrap_csr .return_box > div {
    background: #fff;
    height: 100%;
    padding: 0;
    border-radius: 8px;
  }
  .wrap_csr .return_box h5 {
    text-align: center;
    color: #E40012;
    font-size: 18px;
    background: #EBEBEB;
    width: 100%;
    padding: 22px 10px;
    border-radius: 8px 8px 0 0;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .return_box h5 {
      font-size: 4.5vw;
      line-height: 6.2vw;
      text-align: left;
      padding: 16px;
    }
  }
  .wrap_csr .return_box p {
    text-align: left;
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 0;
    padding: 0 40px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .return_box p {
      padding: 0 20px;
    }
  }
  .wrap_csr .colaboration_box {
    width: 33.333%;
    margin: 0 auto 30px;
    padding: 0 10px;
  }
  .wrap_csr .colaboration_box .wrap_img {
    position: relative;
    width: 100%;
    display: block;
  }
  .wrap_csr .colaboration_box .wrap_img:before {
    content: "";
    display: block;
    padding-top: 65%;
  }
  .wrap_csr .colaboration_box .wrap_img img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .colaboration_box {
      width: 100%;
      padding: 0;
    }
  }
  .wrap_csr .colaboration_box > a {
    background: #fff;
    height: 100%;
    padding: 0;
    border-radius: 8px;
    text-decoration: none;
  }
  .wrap_csr .colaboration_box h4 {
    text-align: left;
    font-size: 16px;
    line-height: 25px;
  }
  .wrap_csr .colaboration_box p {
    text-align: left;
    font-size: 14px;
    color: #999;
    margin: 0;
  }
  .wrap_csr .faq {
    background: #fff;
    padding: 70px 115px 10px;
    border-radius: 10px;
    width: 85%;
    margin: 0 auto;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .faq {
      padding: 40px 30px;
      margin: 0;
      width: 100%;
    }
  }
  .wrap_csr .faq .faq_box {
    border-bottom: 1px solid #f1f1f1;
    padding-bottom: 15px;
    margin-bottom: 30px;
  }
  .wrap_csr .faq .faq_box:last-child {
    border: none;
  }
  .wrap_csr .faq .faq_box > div {
    font-size: 16px;
    position: relative;
    padding-left: 42px;
    line-height: 26px;
    margin-bottom: 12px;
  }
  .wrap_csr .faq .faq_box > div:before {
    position: absolute;
    font-size: 15px;
    text-align: center;
    width: 25px;
    height: 25px;
    top: 0;
    left: 0;
    color: #fff;
    border-radius: 20px;
    font-weight: bold;
    line-height: 26px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .faq .faq_box > div:before {
      left: -3px;
    }
  }
  .wrap_csr .faq .faq_box .question {
    color: #E40012;
    font-weight: bold;
  }
  .wrap_csr .faq .faq_box .question:before {
    content: 'Q';
    background-color: #E40012;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .faq .faq_box .question {
      font-size: 15px;
      padding-left: 30px;
    }
  }
  .wrap_csr .faq .faq_box .answer {
    font-size: 14px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .faq .faq_box .answer {
      font-size: 14px;
      padding-left: 30px;
    }
  }
  .wrap_csr .faq .faq_box .answer:before {
    content: 'A';
    background-color: #999999;
  }
  .wrap_csr .faq .faq_box .btn {
    font-size: 16px;
    padding: 0 30px;
    height: 40px;
    line-height: 41px;
    margin: 15px 0 35px;
  }
  .wrap_csr #sec01 {
    padding: 20px 0 90px !important;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec01 {
      padding: 0 !important;
    }
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec01 div.title {
      margin-top: 0;
    }
  }
  .wrap_csr #sec02 div.title h3, .wrap_csr #sec04 div.title h3 {
    color: #333;
  }
  .wrap_csr #sec02 div.title h3 img, .wrap_csr #sec04 div.title h3 img {
    margin-right: 15px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec02 div.title h3 img, .wrap_csr #sec04 div.title h3 img {
      width: 12vw;
    }
  }
  @media screen and (min-width: 768px) {
    .wrap_csr #sec03 .flex {
      justify-content: center;
    }
  }
  .wrap_csr #sec03 .title p {
    font-size: 20px;
    color: #E40012;
    margin: 40px 0;
    font-weight: bold;
    line-height: 36px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03 .title p {
      line-height: 28px;
      margin-top: 35px;
      font-size: 5vw;
    }
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03 h3.line span {
      line-height: 7vw;
      padding-top: 2px;
    }
  }
  .wrap_csr #sec03-2 {
    margin-bottom: 110px;
  }
  .wrap_csr #sec03-2.bg {
    padding: 50px 74px;
    margin-top: 55px;
    width: 76%;
    max-width: 960px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03-2.bg {
      width: 100%;
      padding: 20px;
      margin-bottom: 40px;
    }
  }
  .wrap_csr #sec03-2 h4 {
    font-size: 28px;
    font-weight: bold;
    color: #333;
    text-align: center;
    margin: 10px 0 40px;
    position: relative;
    border: none;
  }
  .wrap_csr #sec03-2 h4:before, .wrap_csr #sec03-2 h4:after {
    position: absolute;
    content: '';
    width: 130px;
    height: 3px;
    bottom: 0;
    left: 50%;
    background-color: #E40012;
    margin-left: -65px;
  }
  .wrap_csr #sec03-2 h4:after {
    bottom: -5px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03-2 h4 {
      margin-bottom: 0;
    }
    .wrap_csr #sec03-2 h4 span {
      font-size: 5.4vw;
    }
  }
  .wrap_csr #sec03-2 .title p {
    font-size: 20px;
    color: #333;
    font-weight: 300;
    margin-bottom: -20px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03-2 .title p {
      font-size: 16px;
    }
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec03-2 div.title {
      margin-top: 0;
    }
  }
  .wrap_csr #sec05 .btn {
    font-size: 16px;
    padding: 10px 80px;
    height: auto;
    line-height: initial;
    background-color: #808080;
  }
  .wrap_csr #sec05 .btn:before {
    top: 12px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #sec05 .btn {
      padding: 10px 40px;
    }
  }
  .wrap_csr .imgs {
    overflow: hidden;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .imgs {
      margin: 0 -24px;
    }
  }
  .wrap_csr .imgs > div {
    width: 1664px;
    margin-left: -825px;
    position: relative;
    left: 50vw;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .imgs > div {
      width: 100%;
      margin-left: 0;
      left: 0;
    }
  }
  .wrap_csr .imgs > div img {
    margin: 0 2px;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr .imgs > div img {
      margin: 0 2px;
      width: 32.8vw;
      height: 38vw;
      object-fit: cover;
    }
    .wrap_csr .imgs > div img:last-child {
      object-position: -39px 0;
    }
  }
  .wrap_csr #col_3 p {
    font-size: 100%;
    text-align: left;
    line-height: 150%;
  }
  .wrap_csr #col_3 p.txt_c {
    text-align: center;
    font-size: 80%;
  }
  .wrap_csr #col_3 .contact p {
    font-size: 20px;
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .wrap_csr #col_3 {
      padding: 10px !important;
    }
  }

/*
2021.0802　about/ir/の注意書き位置修正（水野）
*/
#about.ir #contents .block .content_detail p.caution {
    margin-top: 0px;
}

/* 
2023/07/05〜 /privacy/ のtable要素
*/
    .privacy_table__Content{
        list-style: none;
        margin-bottom: 1em;
    }
    .privacy_table th{
        text-align: center;
    }
    .privacy_table,
    .privacy_table tr,
    .privacy_table th,
    .privacy_table td{
        border: solid 1px black;
        vertical-align: initial;
        padding: 3px 5px;
    }
    .privacy_title_1{
        width: 136px;
    }
    .privacy_title_2{
        width: 150px;
    }
    .privacy_title_3{
        width: 130px;
    }
    .privacy_title_4{
        width: 150px;
    }
    .privacy_title_5{
        width: 320px;
    }
    .privacy_title_6{
        width: ;
    }
    .numkakko_item p.no_text_index{
        text-indent: 0;
    }
    @media(max-width:767px){
    .privacy_table{
        overflow-x: auto;
        word-break: keep-all;
        white-space: nowrap;
        display: block;
        border: none;
    }
}
.numkakko_item li.num_item{
    text-indent: -1em;

}
/* 2024.04.23 英語テキストが含まれる記事に関する一時対応 */
.u-text-en {
    word-break: keep-all;
}