@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
  line-height: 1.4;
  font-family: MS PGothic, sans-serif;
}

/* default values */
html {
  overflow-y: scroll;
}

body {
  color: rgb(51, 51, 51);
  background-color: #D7C5A2;
  background-color: #E7DBC3;
  font-size: medium;
  margin: 0 auto 3em auto;
  padding: 0;
  width: 800px;
}
body table {
  padding: 3px;
  border: 1px solid #CCC;
  border-collapse: separate;
}
body table#schedule {
  margin: 0;
  padding: 0;
  border-collapse: collapse;
}
body table#schedule * {
  margin: 0;
  padding: 0;
  text-align: center;
}
body table#schedule .closed, body table#schedule .full, body table#schedule .force_closed {
  background-color: #DDD;
}
body td, body th {
  margin: 1px;
  padding: 2px 5px;
  border: 1px solid #CCC;
}
body th {
  white-space: nowrap;
}
body td.number {
  text-align: right;
  white-space: nowrap;
}
body em {
  font-style: normal;
  font-weight: bold;
  color: #0000CC;
}
body p {
  margin: 1em 0 1em 0;
}
body p.callout {
  padding: 1em 1em 1em 2.5em;
  background: #f3f3f3 url("../images/icon_callout.png") 0.7em 1.1em/1.2em 1.2em no-repeat;
  border-radius: 0.5em;
}
body ul {
  margin: 1em 1em 1em 2em;
}
body ul.linklist li {
  list-style-type: none;
  background: 0% 0% url(../images/linklist_arrow.png) no-repeat;
  margin-left: -20px;
  padding-left: 20px;
}
body ul.linklist-middle li {
  list-style-type: none;
  background: 0% 50% url(../images/linklist_arrow.png) no-repeat;
  margin-left: -20px;
  padding-left: 20px;
}
body ul.spacy li {
  margin: 1em 0 1em 0;
}
body ul.clear_spacy li {
  margin-top: 0;
  margin-bottom: 0;
}
body ul.photos2 {
  margin: 1em 0;
  padding: 0;
  width: 760px;
  list-style-type: none;
  font-size: 0;
}
body ul.photos2 li {
  font-size: 16px;
  margin: 1em 30px;
  _margin: 1em 20px;
  width: 320px;
  display: inline-block;
  vertical-align: top;
}
body ul.photos2 p {
  margin: 0;
  font-size: small;
}
body ul.photos3-comment {
  list-style-type: none;
}
body ul.photos3-comment li {
  display: inline-block;
  width: 200px;
  margin: 0 20px 1em 0;
  vertical-align: top;
}
body ul.photos3-comment p {
  margin: 0;
  font-size: 12px;
}
body ul.app_btns {
  text-align: right;
}
body ul.app_btns li {
  display: inline;
}
body ul.app_btns img {
  border: 0px;
}
body ul.year-menu {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 0;
}
body ul.year-menu li {
  font-size: 16px;
  display: inline-block;
  width: 20%;
  margin: 0.5em 0;
  padding: 0;
  text-align: center;
}
body ul#jump_to_month {
  margin: 0;
  padding: 5px 0;
  border: 1px solid #CCC;
  border-collapse: separate;
  width: 722px;
  font-size: 0;
}
body ul#jump_to_month li {
  font-size: 16px;
  display: inline-block;
  width: 60px;
  text-align: center;
}
body ul.togglelist {
  margin: 0;
  list-style-type: none;
}
body ul.togglelist > li > h2 {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 1em 0.5em;
  color: rgb(51, 51, 51);
  border: solid #888;
  border-width: 1px 0 0 0;
  justify-content: space-between;
}
body ul.togglelist > li > h2::after {
  content: "";
  position: relative;
  width: 1em;
  height: 1em;
  background-color: rgb(51, 51, 51);
  clip-path: polygon(15.3% 27.3%, 50% 62%, 84.7% 27.3%, 90% 32.7%, 50% 72.7%, 10% 32.7%);
}
body ul.togglelist > li > div {
  display: none;
  padding-bottom: 2em;
}
body ul.togglelist > li.expanded > h2::after {
  clip-path: polygon(15.3% 72.7%, 50% 38%, 84.7% 72.7%, 90% 67.3%, 50% 27.3%, 10% 67.3%);
}
body ul.togglelist > li.expanded > div {
  display: block;
}
body ol {
  margin: 1em 1em 1em 2em;
  padding: 0.5em 0.5em 0.5em 1.5em;
}
body ol li {
  margin-left: 1em;
}
body ol li span {
  font-weight: bold;
}
body ol.spacy li {
  margin: 1em 0 1em 20px;
}
body ol.topic-path {
  margin: 0.5em 0 0 0;
  padding: 0.25em 5%;
  list-style-type: none;
  background-color: #EEE;
  border-top: 1px solid #DDD;
}
body ol.topic-path li {
  display: inline-block;
  margin: 0 0 0 0.5em;
  padding: 0;
}
body ol.topic-path li::before {
  content: " > ";
}
body ol.topic-path li:first-child {
  margin-left: 0;
}
body ol.topic-path li:first-child::before {
  content: "";
}
body section:after {
  content: "";
  display: block;
  clear: both;
}
body h1 {
  margin: 8px 0 5px 0;
  padding: 3px 0 3px 0.5em;
  font: 1.5em bold;
  background-color: #DDDDE6;
  background: url(../res/h1_bg.png) no-repeat;
  background-position: left;
  color: #404583;
}
body h2 {
  clear: both;
  padding-left: 10px;
  margin: 2em 0 1em 0;
  border: solid;
  border-width: 0 0 1px 10px;
  border-color: #E76800;
  font-size: 1.2em;
}
body h3 {
  clear: both;
  color: #7373F6;
  color: rgb(44, 44, 175);
  font-size: 100%;
  margin: 1em 0 1em 0;
}
body h3:after {
  content: "";
  display: block;
  clear: both;
}
body hr {
  height: 1px;
  border: 1px dotted #AAA;
}
body address {
  font-style: normal;
  font-size: small;
}
body blockquote {
  margin: 10px 30px 10px 30px;
  padding: 0.5em;
  border: 1px dotted #888;
  background-color: #FFFFBB;
}
body a {
  text-decoration: underline;
}
body a::link {
  color: #0000CC;
}
body a::visited {
  color: #800080;
}
body a::hover {
  color: #FF0000;
}
body a::active {
  color: #FF0000;
}
body a.inner-link {
  display: block;
  width: 60%;
  margin: 0 auto;
  padding: 0.8em;
  text-align: center;
  color: #348241;
  border: 2px solid #348241;
  background-color: #FFF;
  text-decoration: none;
  border-radius: 2em;
}
body a.inner-link:before {
  content: "";
  display: inline-flex;
  position: relative;
  transform: translateY(-35%);
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid #348241;
}
body a.outer-link {
  display: block;
  width: 60%;
  margin: 0 auto;
  padding: 0.8em;
  text-align: center;
  color: #ff1a46;
  border: 2px solid #ff1a46;
  background-color: #FFF;
  font-weight: bold;
  text-decoration: none;
  border-radius: 2em;
}
body a.outer-link:after {
  content: "";
  display: inline-flex;
  position: relative;
  transform: translateY(-35%);
  width: 0;
  height: 0;
  margin-left: 0.5em;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid #ff1a46;
}
body .dev {
  color: #DD5555;
}
body.volunteer#cat img {
  width: 45%;
}
body.volunteer#cat img.timeschedule {
  width: 70%;
}
body.volunteer#cat p.to-application {
  margin: 2em 0;
}
body#dog-volunteer p.to-application {
  margin: 2em 0 3em 0;
}
body#dog-volunteer .head-image {
  width: 40%;
  margin: 1em 30%;
}
body#volunteer-form form {
  padding: 0 1em;
}
body#volunteer-form .ui-title {
  color: #FFF;
  background: transparent;
}
body#volunteer-form #volunteer-schedule {
  /* Googleカレンダー設置用 */
  /* jQuery Mobile上書き */
}
body#volunteer-form #volunteer-schedule h3 {
  font-size: 20px;
  color: rgb(44, 44, 175);
}
body#volunteer-form #volunteer-schedule em {
  font-style: normal;
  font-weight: bold;
  color: red;
}
body#volunteer-form #volunteer-schedule ul {
  margin: 1em 1em 1em 1em;
}
body#volunteer-form #volunteer-schedule table {
  width: 100%;
  border: 1px solid #CCC;
  border-collapse: collapse;
}
body#volunteer-form #volunteer-schedule table td {
  border-right: 1px solid #CCC;
}
body#volunteer-form #volunteer-schedule table img {
  width: 3em;
}
body#volunteer-form #volunteer-schedule .thanks {
  color: red;
  font-style: normal;
}
body#volunteer-form #volunteer-schedule .timeschedule {
  width: 500px;
}
body#volunteer-form #volunteer-schedule #calendar {
  max-width: 800px;
  min-width: 300px;
}
body#volunteer-form #volunteer-schedule #calendar .body {
  position: relative;
  padding-bottom: 100%;
  height: 0;
  overflow: hidden;
}
body#volunteer-form #volunteer-schedule #calendar .body iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
body#volunteer-form #volunteer-schedule .ui-li-static img {
  position: absolute;
  top: 0;
  max-width: 80px;
  max-height: 80px;
}
body#volunteer-form #volunteer-schedule .ui-li-static img:nth-child(2) {
  left: 81px;
}
body#volunteer-form #volunteer-schedule .ui-li-static img:nth-child(3) {
  left: 161px;
}
body#volunteer-form #volunteer-schedule .ui-li-static div {
  float: right;
  width: 150px;
}
body#mycalendar {
  width: 560px;
  margin: 0 auto;
  padding: 0;
  background-color: #DDD;
}
body#mycalendar * {
  margin: 0;
  padding: 0;
  font-size: 16px;
}
body#mycalendar *:before, body#mycalendar *:after {
  content: "";
}
body#mycalendar p {
  font-size: 14px;
  color: #006700;
}
body#mycalendar #wrapper {
  background-color: #E9FAE9;
}
body#mycalendar #wrapper h1 {
  padding: 1em 20px;
  color: #FFF;
  background-image: none;
  background-color: #006700;
}
body#mycalendar #wrapper h2 {
  border: none;
  color: #006700;
  font-size: 14px;
}
body#mycalendar #wrapper ul {
  margin-left: 2em;
}
body#mycalendar #wrapper ul li {
  color: #006700;
  font-size: 14px;
}
body#mycalendar #wrapper section {
  margin: 1em 0;
  padding: 0 20px;
}
body#mycalendar #wrapper section.error h2 {
  border: none;
  font-size: 24px;
  margin: 1em 0;
}
body#mycalendar #wrapper section.error p {
  margin-bottom: 2em;
}
body#mycalendar #wrapper form {
  margin-top: 0;
}
body#mycalendar #wrapper input {
  height: 2em;
  cursor: pointer;
}
body#mycalendar #wrapper input.submit {
  display: block;
  width: 100%;
  height: 2.5em;
  font-size: 24px;
  margin: 0 auto;
  color: #FFF;
  background-color: #E67E29;
  border: none;
  border-radius: 0.5em;
  box-shadow: 1px 1px 2px #444;
}
body#mycalendar #wrapper input.activeBtn {
  color: #FFF;
  background-color: #006700;
}
body#mycalendar #wrapper fieldset {
  margin: 1em 0;
  padding: 0.5em 1em;
  color: #006700;
  background-color: #FFF;
  border: none;
  text-align: center;
  border-radius: 0.5em;
  box-shadow: 1px 1px 2px #444;
}
body#mycalendar #wrapper fieldset legend {
  color: #006700;
}
body#mycalendar #wrapper fieldset.two-ctrls input, body#mycalendar #wrapper fieldset.two-ctrls select {
  width: 45%;
  height: 2em;
}
body#mycalendar #wrapper fieldset.three-ctrls input, body#mycalendar #wrapper fieldset.three-ctrls select {
  width: 30%;
  height: 2em;
}
body#mycalendar #wrapper fieldset.three-sets {
  width: 25%;
  float: left;
  margin: 0 1% 1em 1%;
}
body#mycalendar #wrapper footer {
  padding: 1em;
  height: 100%;
  color: #FFF;
  background-color: #006700;
  text-align: center;
}
body#mycalendar #wrapper footer a:active, body#mycalendar #wrapper footer a:visited, body#mycalendar #wrapper footer a:link {
  text-decoration: none;
  color: #FFF;
}
body#mycalendar #display {
  margin-left: 30px;
}
body#mycalendar #display #calendarWrapper {
  width: 516px;
  height: 363px;
  position: relative;
}
body#mycalendar #display #calendarWrapper #calendar {
  width: 100%;
  height: 100%;
  border: 1px solid #888;
  background-size: contain !important;
}
body#mycalendar #display #calendarWrapper #calendar #photoWrapper {
  width: 153px;
  height: 153px;
  position: absolute;
  left: 348px;
  top: 40px;
}
body#mycalendar #display #calendarWrapper #calendar #photoWrapper #photo {
  width: 100%;
  height: 100%;
}
body#mycalendar #display #calendarWrapper #calendar #weekNumberWrapper {
  width: 516px;
  height: 363px;
  position: absolute;
  left: 0;
  top: 0;
}
body#mycalendar #display #calendarWrapper #calendar #weekNumberWrapper #weekNumber {
  width: 100%;
  height: 100%;
}
body#mycalendar #backBtn {
  text-align: center;
  margin: 2em 0;
}
body#mishina-akechi h1 {
  padding: 0;
}
body#mishina-akechi h1 img {
  width: 100%;
}
body#contact #faq > ul {
  margin: 1em 0;
  border: 1px solid #888;
  height: 30em;
  overflow: scroll;
}
body#contact #faq .faq-item span {
  display: none;
}
body#contact #faq .hidden {
  display: none;
}
body .page-logo img {
  width: 100%;
}
body#access #main img {
  width: 100%;
}
body#privacy .ssl-mark img {
  width: 141px;
}
body#privacy #back {
  text-align: center;
}
body#blog #container #main {
  margin: 0;
  padding: 0;
}
body#blog #container #main h1 {
  margin: 0;
  padding: 0;
}
body#blog #container #main h1 img {
  width: 100%;
  height: auto;
}
body#blog #container #main h1.others {
  border: dotted #ccc;
  border-width: 0.3em 0;
  margin: 2em 20px;
  padding: 0.5em 0;
  font-size: 16px;
  color: #333;
  background: none;
}
body#blog #container #main p.callout {
  margin: 20px 20px;
  padding: 1em 1em 1em 2.5em;
  background: #f3f3f3 url("../images/icon_callout.png") 0.7em 1.1em/1.2em 1.2em no-repeat;
  border-radius: 0.5em;
}
body#blog #container #main ul.top-articles {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 20px 2em 20px;
}
body#blog #container #main ul.top-articles li {
  margin: 0;
  padding: 1em 0;
  border-top: 1px solid #ddd;
  list-style-type: none;
  flex: 0 0 370px;
  justify-content: space-between;
}
body#blog #container #main ul.top-articles li:first-child, body#blog #container #main ul.top-articles li:nth-child(2) {
  border: none;
}
body#blog #container #main ul.top-articles li a {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-decoration: none;
}
body#blog #container #main ul.top-articles li a img {
  width: 180px;
  height: 135px;
  aspect-ratio: 4/3;
  flex: 0 0 180px;
}
body#blog #container #main ul.top-articles li a h2 {
  display: inline;
  margin: 0;
  padding: 0;
  border: 0;
  flex: 0 0 180px;
  color: #333;
  font-size: 16px;
}
body#blog #container #main ul.top-articles li a .excerpt {
  flex: 0 0 370px;
  color: #555;
  font-size: 14px;
  padding-top: 1em;
}
body#blog #container #main ul.top-articles li a .date {
  flex: 0 0 370px;
  color: #aaa;
  text-align: right;
  font-size: 14px;
}
body#blog #container #main ul.top-articles li a:hover h2 {
  text-decoration: underline;
}
body#blog #container #main article {
  margin: 1em 20px;
}
body#blog #container #main article h2 {
  margin: 0;
  padding: 0;
  border: none;
}
body#blog #container #main article h2 a {
  color: #333;
  text-decoration: none;
}
body#blog #container #main article h2 a:hover {
  text-decoration: underline;
}
body#blog #container #main article .date {
  text-align: right;
  color: #aaa;
  font-size: 14px;
}
body#blog #container #main article figure {
  width: 100%;
}
body#blog #container #main article figure img {
  width: 100%;
  height: auto;
}
body#blog #container #main .back-to-blogtop {
  text-align: center;
  margin: 2em 0;
}
body#blog #container #footer {
  padding: 1em 0;
  background-color: #eee;
  border: none;
}
body#blog #container #footer a {
  color: #333;
  text-decoration: none;
}
body .new-tag {
  background-color: inherit;
}
body .new-tag::before {
  content: "NEW";
  margin-right: 0.5em;
  padding: 0 0.5em;
  color: #F00;
  background-color: #FF0;
}

.form {
  width: 650px;
  margin: 0 auto 0 auto;
}
.form table {
  width: 100%;
}
.form section {
  margin: 0;
  padding: 0;
  border: 1px solid #DDD;
}
.form section h2 {
  margin: 0;
  padding: 0.5em;
  color: #FFF;
  border: none;
  background-color: rgb(44, 44, 175);
}
.form section div {
  padding: 1em 1em 2em 1em;
}
.form .ssl-mark {
  margin-top: 30px;
  text-align: right;
  font-size: small;
}
.form .brand img {
  width: auto !important;
  height: 2em !important;
  margin-right: 0.5em !important;
}
.form .min-field {
  width: 100px;
}
.form .mid-field {
  width: 300px;
}
.form .max-field {
  width: 550px;
}
.form .phone-field {
  width: 100px;
}
.form textarea {
  width: 600px;
  height: 5em;
}
.form input {
  margin: 0.5em 0;
  padding: 0.2em;
}
.form .invalid {
  background-color: #FFC8C8;
}
.form #invalid-alert {
  color: red;
}
.form select {
  margin: 0.5em 0;
  padding: 0.2em;
}
.form label {
  padding-right: 1em;
}
.form label.return-after:after {
  content: "\a";
  white-space: pre;
}
.form fieldset {
  margin: 1em 0;
  padding: 1em;
  border: 1px solid #DDD;
}
.form fieldset legend {
  font-weight: bold;
  color: rgb(44, 44, 175);
}
.form fieldset.vertical label:after {
  content: "\a";
  white-space: pre;
}
.form fieldset.vertical label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form fieldset.doubles label {
  margin: 0 1em 0 0;
  padding: 0;
  display: inline-block;
  width: 270px;
  vertical-align: text-top;
}
.form fieldset.doubles label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form fieldset.columns label {
  margin: 0;
  padding: 0;
  display: inline-block;
  width: 185px;
  vertical-align: text-top;
}
.form fieldset.columns label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form fieldset.empty-alert {
  background-color: #FFC8C8;
}
.form span.required {
  color: #F00;
  font-size: 14px;
}
.form .note {
  color: #3F8C3E;
}
.form ol.oath-list {
  margin: 0.5em;
}
.form ol.oath-list li {
  margin: 0.5em 0;
}
.form #submit {
  text-align: center;
}
.form #submit input.submit {
  color: #FFF;
  background-color: #E8881A;
  font-size: 20px;
  margin-bottom: 2em;
  padding: 0.5em 1em;
  border: 0;
  width: 80%;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.form #submit fieldset {
  text-align: left;
}
.form #submit fieldset label {
  display: block;
}
.form .edit {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
}
.form .edit a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 0;
  font-size: 20px;
  color: rgb(51, 51, 51);
  background-color: #DDDDDD;
  text-decoration: none;
}
.form table#schedule {
  border-collapse: collapse;
}
.form table#schedule * {
  margin: 0;
  padding: 0;
  text-align: center;
}
.form table#schedule .closed {
  background-color: #DDD;
}
.form .disp {
  color: red;
  font-size: 16px;
}

.form-dev {
  width: 650px;
  margin: 0 auto 0 auto;
}
.form-dev table {
  width: 100%;
}
.form-dev section {
  margin: 0;
  padding: 0;
  border: 1px solid #DDD;
}
.form-dev section h2 {
  margin: 0;
  padding: 0.5em;
  color: #FFF;
  border: none;
  background-color: rgb(44, 44, 175);
}
.form-dev section div {
  padding: 1em 1em 2em 1em;
}
.form-dev span.required {
  margin-left: 1em;
  font-size: 10px;
  font-weight: normal;
  color: #F55;
}
.form-dev .ssl-mark {
  margin-top: 30px;
  text-align: right;
  font-size: small;
}
.form-dev .brand img {
  width: auto !important;
  height: 2em !important;
  margin-right: 0.5em !important;
}
.form-dev .min-field {
  width: 100px;
}
.form-dev .mid-field {
  width: 300px;
}
.form-dev .max-field {
  width: 550px;
}
.form-dev .phone-field {
  width: 100px;
}
.form-dev textarea {
  width: 560px;
  height: 5em;
}
.form-dev input {
  margin: 0.5em 0;
  padding: 0.2em;
}
.form-dev .invalid {
  background-color: #FFC8C8;
}
.form-dev #invalid-alert {
  color: red;
}
.form-dev select {
  margin: 0.5em 0;
  padding: 0.2em;
}
.form-dev label {
  padding-right: 1em;
}
.form-dev label.return-after:after {
  content: "\a";
  white-space: pre;
}
.form-dev fieldset {
  margin: 1em 0;
  padding: 1em;
  border: 1px solid #DDD;
}
.form-dev fieldset legend {
  font-weight: bold;
  color: rgb(44, 44, 175);
}
.form-dev fieldset.vertical label:after {
  content: "\a";
  white-space: pre;
}
.form-dev fieldset.vertical label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-dev fieldset.doubles label {
  margin: 0 1em 0 0;
  padding: 0;
  display: inline-block;
  width: 270px;
  vertical-align: text-top;
}
.form-dev fieldset.doubles label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-dev fieldset.columns label {
  margin: 0;
  padding: 0;
  display: inline-block;
  width: 185px;
  vertical-align: text-top;
}
.form-dev fieldset.columns label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-dev fieldset.empty-alert {
  background-color: #FFC8C8;
}
.form-dev .note {
  color: #3F8C3E;
}
.form-dev ol.oath-list {
  margin: 0.5em;
}
.form-dev ol.oath-list li {
  margin: 0.5em 0;
}
.form-dev #submit {
  text-align: center;
}
.form-dev #submit input.submit {
  color: #FFF;
  background-color: #E8881A;
  font-size: 20px;
  margin-bottom: 2em;
  padding: 0.5em 1em;
  border: 0;
  width: 80%;
}
.form-dev #submit fieldset {
  text-align: left;
}
.form-dev #submit fieldset label {
  display: block;
}
.form-dev #submit-button {
  width: 40%;
  margin: 2em 30%;
  padding: 1em 0;
}
.form-dev .edit {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
}
.form-dev .edit a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 0;
  font-size: 20px;
  color: rgb(51, 51, 51);
  background-color: #DDDDDD;
  text-decoration: none;
}
.form-dev table#schedule {
  border-collapse: collapse;
}
.form-dev table#schedule * {
  margin: 0;
  padding: 0;
  text-align: center;
}
.form-dev table#schedule .closed {
  background-color: #DDD;
}
.form-dev .disp {
  color: red;
  font-size: 16px;
}

.form-cf {
  width: 650px;
  margin: 0 auto 0 auto;
}
.form-cf table {
  width: 100%;
}
.form-cf section {
  margin: 0;
  padding: 0;
  border: 1px solid #DDD;
}
.form-cf section h2 {
  margin: 0;
  padding: 0.5em;
  color: #FFF;
  border: none;
  background-color: rgb(44, 44, 175);
}
.form-cf section div {
  padding: 1em 1em 2em 1em;
}
.form-cf span.required {
  margin-left: 1em;
  font-size: 10px;
  font-weight: normal;
  color: #F55;
}
.form-cf span.label {
  margin-right: 1em;
  font-weight: bold;
}
.form-cf .ssl-mark {
  margin-top: 30px;
  text-align: right;
  font-size: small;
}
.form-cf .brand img {
  width: auto !important;
  height: 2em !important;
  margin-right: 0.5em !important;
}
.form-cf .min-field {
  width: 100px;
}
.form-cf .mid-field {
  width: 300px;
}
.form-cf .max-field {
  width: 550px;
}
.form-cf .phone-field {
  width: 100px;
}
.form-cf textarea {
  width: 560px;
  height: 5em;
}
.form-cf input {
  margin: 0.5em 0;
  padding: 0.2em;
  width: 25em;
}
.form-cf input.counting {
  margin-bottom: 0.5em;
}
.form-cf .invalid {
  background-color: #FFC8C8;
}
.form-cf #invalid-alert {
  color: red;
}
.form-cf select {
  margin: 0.5em 0;
  padding: 0.2em;
}
.form-cf label {
  padding-right: 1em;
}
.form-cf label.return-after:after {
  content: "\a";
  white-space: pre;
}
.form-cf fieldset {
  margin: 1em 0;
  padding: 1em;
  border: 1px solid #DDD;
}
.form-cf fieldset legend {
  font-weight: bold;
  color: rgb(44, 44, 175);
}
.form-cf fieldset div {
  margin-top: 1.5em;
}
.form-cf fieldset div label {
  font-weight: bold;
}
.form-cf fieldset.vertical label:after {
  content: "\a";
  white-space: pre;
}
.form-cf fieldset.vertical label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-cf fieldset.doubles label {
  margin: 0 1em 0 0;
  padding: 0;
  display: inline-block;
  width: 270px;
  vertical-align: text-top;
}
.form-cf fieldset.doubles label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-cf fieldset.columns label {
  margin: 0;
  padding: 0;
  display: inline-block;
  width: 185px;
  vertical-align: text-top;
}
.form-cf fieldset.columns label.details {
  margin: 1em 0 0 0;
  padding: 0;
  display: block;
  width: 100%;
}
.form-cf fieldset.empty-alert {
  background-color: #FFC8C8;
}
.form-cf .note {
  color: #3F8C3E;
}
.form-cf ol.oath-list {
  margin: 0.5em;
}
.form-cf ol.oath-list li {
  margin: 0.5em 0;
}
.form-cf #submit {
  text-align: center;
}
.form-cf #submit input.submit {
  color: #FFF;
  background-color: #E8881A;
  font-size: 20px;
  margin-bottom: 2em;
  padding: 0.5em 1em;
  border: 0;
  width: 80%;
}
.form-cf #submit fieldset {
  text-align: left;
}
.form-cf #submit fieldset label {
  display: block;
}
.form-cf #submit-button {
  width: 40%;
  margin: 2em 30%;
  padding: 1em 0;
}
.form-cf .edit {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
}
.form-cf .edit a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 0;
  font-size: 20px;
  color: rgb(51, 51, 51);
  background-color: #DDDDDD;
  text-decoration: none;
}
.form-cf table#schedule {
  border-collapse: collapse;
}
.form-cf table#schedule * {
  margin: 0;
  padding: 0;
  text-align: center;
}
.form-cf table#schedule .closed {
  background-color: #DDD;
}
.form-cf .disp {
  color: red;
  font-size: 16px;
}
.form-cf .callout {
  margin-top: 0;
  font-size: 90%;
  background-color: #C6ECFC;
}
.form-cf .desc {
  margin-top: 0;
  padding: 1em;
  font-size: 85%;
  background: #F0F0F0;
  border-radius: 0.5em;
}
.form-cf .char-counter {
  margin-left: 0.5em;
  color: #888;
}

/* banner */
a img.banner {
  border: 0;
}

/* container */
#container {
  line-height: 1.4;
  margin: 0;
  padding: 0px;
  background: #FFF;
  border: solid #555;
  border-width: 0;
}

/* main contents */
#main {
  padding: 0 20px 1em 20px;
  background: #FFFFFF;
  border-top: 1px solid #DDD;
}
#main.volunteer img {
  width: 50%;
  float: right;
}
#main.volunteer #works {
  margin: 1.5em 0;
  padding: 0;
  list-style: none;
  font-size: 0;
}
#main.volunteer #works li {
  font-size: 16px;
  letter-spacing: normal;
  display: inline-block;
  width: 240px;
  margin: 0 20px 1em 0;
}
#main.volunteer #works li p {
  margin: 0;
  padding: 0;
  font-size: smaller;
}
#main.volunteer #works li:nth-child(3) {
  margin-right: 0;
}
#main.volunteer #works li:nth-child(6) {
  margin-right: 0;
}
#main.volunteer .course-select td {
  text-align: center;
}
#main.volunteer .to-application {
  text-align: center;
}
#main.volunteer .to-application img {
  float: none;
  width: auto;
}
#main.volunteer .to-contact {
  text-align: center;
  margin: 2em auto;
  padding: 1em;
  border-radius: 10px;
  width: 80%;
  background: #CFEAD6;
}
#main .q-and-a li {
  list-style-type: none;
}
#main .q-and-a .q {
  margin-bottom: 0;
}
#main .q-and-a .q:before {
  content: "Q. ";
  font-size: 24px;
  color: #F00000;
}
#main .q-and-a .a {
  margin-top: 0;
}
#main .q-and-a .a:before {
  content: "A. ";
  font-size: 24px;
  color: #0000F0;
}
#main ul.q-and-a li {
  list-style-type: none;
}
#main ul.q-and-a li p:first-child {
  margin-bottom: 0;
}
#main ul.q-and-a li p:first-child:before {
  content: "Q. ";
  font-size: 24px;
  color: #F00000;
}
#main ul.q-and-a li p:last-child {
  margin-top: 0;
}
#main ul.q-and-a li p:last-child:before {
  content: "A. ";
  font-size: 24px;
  color: #0000F0;
}

img.left {
  margin-right: 10px;
  float: left;
}
img.right {
  margin-left: 10px;
  float: right;
}
img.right2 {
  margin-left: 10px;
  float: right;
  width: 40%;
}
img.center {
  display: block;
  margin: 1em auto 1em auto;
}

/* global menu */
.global_menu {
  text-align: right;
  font-size: small;
  background-color: #EEF4FF;
  padding: 3px 0.5em 3px 0;
  border: #DDDDDD solid;
  border-width: 0 0 1px 0;
  margin: 0;
}

.welcome {
  text-align: left;
  float: left;
  width: auto;
  padding: 3px 0 3px 0.5em;
  color: #5F66F3;
  font-size: small;
  font-weight: bold;
  vertical-align: center;
}

.topic_path {
  margin: 3px 0 3px 0;
  padding: 4px 0 0 0.5em;
  font-size: small;
}

dl.spacy dt {
  margin-top: 1em;
}

.note {
  font-size: normal;
  color: #225F88;
}

.note2 {
  font-size: small;
  font-weight: bold;
  color: #007E00;
}

.caution {
  color: #DD5555;
  font-weight: bold;
}

.active {
  color: #FFF;
  background-color: #1B81E7;
  margin-left: 0;
  padding: 0.2em;
  font-size: 12px;
}

.inactive {
  margin-left: 0;
  padding: 0.2em;
  font-size: 12px;
}

div.photo_frame3 {
  clear: both;
  width: 590px;
  _width: 584px;
  margin: 0 auto 0 auto;
  padding: 11px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
  font-size: 0px;
}

div.photo_frame3 img {
  padding: 8px;
  margin: 8px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
}

div.photo_frame3 a:hover img,
div.photo_frame3 a:active img {
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
}

.timestamp {
  clear: both;
  margin: 0;
  padding: 2em 1em 0 0;
  font-size: small;
  text-align: right;
  border: 1px dotted #888;
  border-width: 1px 0 0 0;
  background-color: #FFF;
}

#footer {
  clear: both;
  font-size: small;
  border: solid #888;
  border-width: 1px 0 0 0;
  text-align: center;
  background: #FFFFFF;
}
#footer p {
  margin: 0;
}

.debug {
  color: rgb(51, 51, 51);
  background-color: #FFBABA;
}

table.center {
  margin: 1em auto;
}

/* top page */
p#topnews {
  font-size: small;
  background: url(../res/news.png) no-repeat 0% 50%;
  padding-left: 32px;
  margin: 0;
  margin-bottom: 3px;
}
p#topad {
  font-size: small;
  font-weight: bold;
  margin: 1em 0 0 0;
  text-align: center;
}

/* main */
/* information */
.info {
  font-size: small;
  border: 1px solid #DDD;
  padding: 0 1em;
  margin-bottom: 1em;
}

/* notes */
.note {
  font-size: normal;
  color: #225F88;
}

.note2 {
  font-size: small;
  font-weight: bold;
  color: #007E00;
}

.note3 {
  font-size: small !important;
  font-weight: normal !important;
  color: #225F88;
}

.caution {
  color: #DD5555;
  font-weight: bold;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-small {
  font-size: small;
}

/* waiting dogs and cats for adoption */
.waiting-count {
  font-weight: bold;
  text-align: center;
}

.to-submit {
  clear: both;
  font-size: 30px;
  text-align: center;
  padding: 1.5em 0 2em 0;
}
#fureai .to-submit .catch {
  font-size: 24px;
}
#fureai .to-submit .text {
  font-size: 16px;
  margin: 0 3em;
}

.satooya-flow {
  margin: 50px auto;
  padding: 0;
  width: 700px;
  font-size: small;
}
.satooya-flow .title {
  color: #FFF;
  background: #4232DA;
  font-weight: bold;
  font-size: 20px;
  padding: 0.2em 0;
  text-align: center;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.satooya-flow .title.sub {
  color: #4232DA;
  background: #FFF;
  border: 2px solid #4232DA;
}
.satooya-flow .title.closing {
  background: #02972F;
}
.satooya-flow .step {
  margin: 0;
  padding: 5px 10px;
  border: solid #4232DA;
  border-width: 0 2px 2px 2px;
}
.satooya-flow .laststep {
  border-color: #02972F;
}
.satooya-flow img {
  margin: 0;
  padding: 0;
  clear: both;
}
.satooya-flow .option-step {
  background: url(../satooya/res/satooya-flow_through.png) right repeat-y;
  padding-left: 200px;
}

table.jyoutokai {
  width: 100%;
}
table.jyoutokai th, table.jyoutokai td {
  padding: 5px;
}
table.jyoutokai th {
  white-space: nowrap;
  width: 15%;
}
table.jyoutokai td {
  width: 75%;
}
table.jyoutokai table#schedule th, table.jyoutokai table#schedule td {
  width: 10%;
}
table.jyoutokai table#schedule th:first-child, table.jyoutokai table#schedule td:first-child {
  width: 45%;
}

#force-header {
  text-align: center;
  padding: 1em 0;
  background-color: pink;
}

#header {
  height: 60px;
  padding-left: 20px;
  background: #FFF url(../images/osanpo_mark_header.png) no-repeat 98% 100%;
}
#header img {
  border-width: 0;
  margin: 0;
  padding: 0;
}
#header #logo {
  float: left;
  margin-top: 0px;
}
#header #bubble {
  position: relative;
  display: block;
  width: 119px;
  height: 21px;
  left: 555px;
  top: -44px;
  background: #FFF url(../images/osanpo_mark_header_bubble.png) no-repeat 100% 100%;
}
#header #bubble a {
  display: block;
}

#header-social {
  height: 73px;
  background: #FFF url(../images/osanpo_mark_header.png) no-repeat 100% 0;
}
#header-social img {
  border-width: 0;
  margin: 0;
  padding: 0;
}
#header-social #logo {
  float: left;
  margin-top: 13px;
}
#header-social #social-icons {
  float: right;
  text-align: right;
  margin-top: 49px;
}

#header-counter {
  height: 63px;
  _height: 63px;
  background: #FFF url(../images/osanpo_mark_header.png) no-repeat 100% 0%;
}
#header-counter img {
  border-width: 0;
}
#header-counter #logo {
  float: left;
}
#header-counter #logo img {
  margin: 3px 0 0 0;
}
#header-counter #counter {
  background-color: #FFF;
  float: right;
  border: 1px solid #888;
  height: 12px;
  _height: 9px;
  margin: 47px 0 0 0;
  _margin: 49px 0 0 0;
  padding: 1px;
  font-size: 9px;
}
#header-counter #counter img {
  vertical-align: text-bottom;
}
#header-counter a {
  text-decoration: none;
  color: rgb(51, 51, 51);
}

ul#photos {
  padding: 0;
  margin: 0;
  clear: both;
}
ul#photos img {
  border: 0;
}
ul#photos li {
  float: left;
  list-style-type: none;
  padding: 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
  width: 200px;
}
ul#photos p {
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  font-size: small;
  padding: 3px;
}

#privacy-address {
  font-size: small;
  text-align: right;
}

p#footer-menu {
  margin-bottom: 1em;
}

#nav {
  margin: 1em auto;
}

#copyright-jp {
  font-size: x-small;
}

.shelter-story img {
  border: 0;
}

.lbj_banner_linktext {
  border: 1px solid #DDD;
  font-size: small;
  padding: 5px;
}

.course-menu img {
  border: 0;
}
.course-menu a:hover img, .course-menu a:active img {
  border: 0;
}

.column {
  width: 700px;
  margin: auto;
  padding: 1em;
  border: 1px dashed #888;
}

.column-double {
  width: 350px;
  margin: 0 5px;
  padding: 5px;
  border: 1px solid #888;
  float: left;
  font-size: small;
}
.column-double h3 {
  margin: 0;
  font-size: medium;
}

ul.checklist li {
  list-style-type: none;
  background: 0% 0% url(../res/checklist.png) no-repeat;
  margin-left: -20px;
  margin-bottom: 0.5em;
  padding-left: 20px;
}
ul.checklist-middle li {
  list-style-type: none;
  background: 0% 50% url(../res/checklist.png) no-repeat;
  margin-left: -20px;
  margin-bottom: 0.5em;
  padding-left: 20px;
}

tr.title th {
  color: white;
  background-color: rgb(44, 44, 175);
}

.photobox {
  float: left;
  width: 230px;
  margin: 10px;
  text-align: center;
  font-size: small;
}

.chubu-bg {
  background-color: #FFEBD7;
}

.checkpoint {
  width: auto;
  margin-left: 1em;
  text-align: right;
  font-size: small;
}

.form-required {
  font-size: small;
  color: #FF3366;
}

.form-option {
  font-size: small;
  color: #006600;
}

img.pol {
  background: url(../news/photo/news_090208al.jpg) no-repeat;
}

#scroller-to-top {
  display: block;
  position: fixed;
  bottom: 0px;
  left: auto;
  margin-left: 700px;
}
#scroller-to-top .scroll {
  background: url(../res/scroller-btn-to-top.png) no-repeat;
  width: 100px;
  height: 30px;
  opacity: 0.7;
}
#scroller-to-top .scroll:hover {
  opacity: 1;
}

.toForm {
  border-radius: 10px;
  width: 80%;
  margin: 2em auto;
  background: #7E7EFF;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}
.toForm a {
  display: block;
  color: #FFF;
  text-decoration: underline;
  padding: 2em 0;
}

.toContact {
  border-radius: 10px;
  width: 80%;
  margin: 2em auto;
  background: #DDD;
  font-size: 16px;
  text-align: center;
  vertical-align: middle;
}
.toContact a {
  display: block;
  padding: 2em 0;
}

.new {
  color: red;
  background: yellow;
}

/* Clear Fix */
.clearfix {
  display: inline-block;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

.adoption section.first h2 {
  border-color: #404583;
}
.adoption section.first ol {
  margin: 0;
  background-color: #FFF3CD;
}
.adoption section.first ol li {
  margin-left: 0.5em;
}
.adoption section.first ol li.current {
  color: #A64718;
  font-weight: bold;
}
.adoption ul.panel-menu {
  margin: 0;
  padding: 0;
}
.adoption ul.panel-menu li {
  list-style-type: none;
  float: left;
  width: 180px;
  height: 135px;
  margin: 5px;
}
.adoption ul.panel-menu li a img {
  border: 0;
}
.adoption ol.topic-path {
  display: flex;
  align-items: center;
  position: relative;
  margin: 0;
  padding: 1em 0;
  border-top: none;
  background-color: #FFF;
}
.adoption ol.topic-path .to-cooperation {
  position: absolute;
  right: 0;
}
.adoption ol.topic-path .to-cooperation::before {
  content: "";
}
.adoption ol.topic-path .to-cooperation a {
  display: block;
  padding: 0.2em 0.5em;
  text-decoration: none;
  font-size: 12px;
  border-radius: 0.2em;
  color: #FFF;
  background-color: rgb(255, 70, 63);
}
.adoption table.cost tr td:first-child {
  white-space: nowrap;
}
.adoption table.select-place {
  width: 100%;
}
.adoption img.ill {
  width: 50%;
  float: right;
}
.adoption #back {
  text-align: center;
}
.adoption #random-animals {
  border: 1px solid #888;
  text-align: center;
  position: relative;
  float: left;
  margin-bottom: 20px;
}
.adoption #random-animals img.btn {
  margin: 5px;
}
.adoption #random-animals #shuffle-button {
  position: absolute;
  cursor: pointer;
  font-size: small;
  left: 10px;
  top: 117px;
  border: 1px solid #888;
  background-color: white;
}
.adoption .photo_popups {
  margin: 0;
  font-size: 15px;
}
.adoption .photo_popups li {
  display: inline;
}
.adoption .photo_popups div {
  display: none;
  height: 240px;
  border: 1px solid #333;
  background: transparent;
  margin-left: -80px;
  z-index: 9999;
}
.adoption .photo_popups a {
  font-size: 13px;
}
.adoption .photo_popups a img {
  border: 0;
}
.adoption .photo_popups a:hover {
  background: #FFF;
}
.adoption .photo_popups a:hover div {
  display: block;
  position: absolute;
}
.adoption .page-menu {
  clear: both;
  text-align: center;
}
.adoption .more-satooya {
  clear: both;
  text-align: center;
}
.adoption #ng-cases img {
  width: 80%;
}
.adoption .calendar_table {
  text-align: center;
  font-size: small;
  margin-left: 5px;
  padding: 0;
  float: left;
}
.adoption .calendar_table th, .adoption .calendar_table td {
  padding: 2px;
}
.adoption .calendar_sunday {
  background-color: #FFE1E1;
}
.adoption .calendar_saturday {
  background-color: #E1E1FF;
}
.adoption .timetable {
  text-align: center;
  font-size: small;
  margin: 0;
  padding: 0;
}
.adoption .timetable td, .adoption .timetable th {
  padding: 2px 4px;
}
.adoption .timetable_disable {
  background-color: #DDDDDD;
}
.adoption .timetable_school {
  background-color: #CCFFFF;
}
.adoption #cat-top-banner {
  text-align: center;
  font-size: 0;
}
.adoption #cat-top-banner #display {
  font-size: 0;
}
.adoption #cat-top-banner #display img {
  width: 95px;
}
.adoption #cat-top-banner img {
  width: 100%;
}
.adoption #cat-top-text {
  text-align: center;
}
.adoption #cat-top-text .caption {
  font-weight: bold;
  font-size: 30px;
}
.adoption #cat-top-text .text {
  font-weight: bold;
  margin-bottom: 2em;
}
.adoption #cat-top-text .all {
  font-size: 16px;
}
.adoption #cat-top-text .fureai {
  font-size: 16px;
  margin: 2em 0;
}
.adoption .dog-top-banner {
  text-align: center;
  font-size: 0;
}
.adoption .dog-top-banner img {
  vertical-align: bottom;
}
.adoption .dog-top-banner #all {
  font-size: 16px;
}
.adoption .dog-top-banner #movie {
  font-size: 16px;
}
.adoption .dog-top-banner .to-latest-movie {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: none;
}
.adoption .dog-top-banner .to-latest-movie img {
  width: 100%;
}
.adoption #dog-top-text {
  text-align: center;
}
.adoption #dog-top-text .caption {
  font-weight: bold;
  font-size: 30px;
}
.adoption #dog-top-text .text {
  font-weight: bold;
  margin-bottom: 2em;
}
.adoption #dog-top-text .all {
  font-size: 16px;
}
.adoption .fureai-banner {
  clear: both;
  width: 500px;
  margin: 0 auto;
  padding: 1em 0;
}
.adoption .menkai-flow {
  text-align: center;
  width: 760px;
  height: 16px;
  margin-bottom: 3em;
  padding-top: 200px;
  background: url(../images/menkai-flow-wide.png) no-repeat;
}
.adoption .menkai-belongings {
  text-align: center;
  width: 760px;
  height: 16px;
  margin-bottom: 1em;
  padding-top: 175px;
  background: url(../images/menkai-belongings-wide.png) no-repeat;
}
.adoption .column-pr {
  width: auto;
  margin: 1em 0;
  padding: 0.5em 0.5em;
  border: 1px solid #888;
  font-size: 16px;
}
.adoption .column-pr h3 {
  margin: 0;
  font-size: 16px;
}
.adoption .inhouse > div {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  border: 1px solid #DDD;
}
.adoption .inhouse > div > h4 {
  flex: 1 0 25%;
  order: 1;
  margin: 0.5em 0 0.5em 3%;
  font-size: 20px;
}
.adoption .inhouse > div > div {
  flex: 0 1 200px;
}
.adoption .inhouse > div > div:nth-child(2) {
  border: none;
  text-align: center;
  margin: 0;
  padding: 0 0.5em;
}
.adoption .inhouse > div > div:nth-child(3) {
  border: none;
  text-align: center;
}
.adoption .inhouse > div > div:nth-child(3) img {
  width: 200px;
}
.adoption .inhouse > div.ok h5 {
  font-size: 20px;
  color: blue;
}
.adoption .inhouse > div.ok > div:nth-child(2) {
  order: 0;
}
.adoption .inhouse > div.ok > div:nth-child(3) {
  order: 2;
}
.adoption .inhouse > div.ng h5 {
  font-size: 20px;
  color: red;
}
.adoption .inhouse > div.ng > div:nth-child(2) {
  order: 2;
}
.adoption .inhouse > div.ng > div:nth-child(3) {
  order: 0;
}
.adoption .to-all-dogs {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2em 0 3em 0;
}
.adoption .to-all-dogs a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 50%;
  height: 2em;
  margin: 0;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #479EE1;
  text-decoration: none;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.adoption .to-all-cats {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2em 0 5em 0;
}
.adoption .to-all-cats a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 50%;
  height: 2em;
  margin: 0;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #E57880;
  text-decoration: none;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.adoption .to-trial {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1em 0;
}
.adoption .to-trial a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 1em 0;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #05B153;
  text-decoration: none;
}
.adoption .to-instagram {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1em 0;
}
.adoption .to-instagram a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 1em 0;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #38BBFF;
  text-decoration: none;
}
.adoption .to-content-banner {
  display: flex;
}
.adoption .to-content-banner a {
  display: block;
  flex-basis: 40%;
}
.adoption .to-content-banner a img {
  width: 100%;
}
.adoption .to-next-page {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
}
.adoption .to-next-page a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 80%;
  height: 2em;
  margin: 2em 0 1em 0;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #E8881A;
  text-decoration: none;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.adoption .to-next-page.select-place {
  margin: 0;
}
.adoption .to-next-page.select-place a {
  flex-basis: 100%;
  margin: 0;
  padding: 0 0.5em;
}
.adoption .page-step {
  font-size: 10px;
  text-align: center;
  color: #DDD;
}
.adoption .page-step span {
  font-size: 10px;
  color: #7CAFFF;
}
.adoption a.text-banner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 1em 0;
  padding: 0.5em;
  font-size: 20px;
  font-weight: bold;
  color: #FFFFFF;
  background-color: #98BDFF;
  text-decoration: none;
  border: 1px solid #333;
}
.adoption a.text-banner span {
  color: rgb(51, 51, 51);
  font-size: 16px;
  font-weight: normal;
  text-decoration: none;
}
.adoption #instagram {
  display: flex;
  flex-wrap: wrap;
}
.adoption #instagram .item {
  flex: 1 1 126px;
}
.adoption #instagram .item div.image {
  height: 126px;
  position: relative;
}
.adoption #instagram .item div.image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.adoption #instagram .item div.image img.playicon {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 43px;
  left: 43px;
  opacity: 0.8;
}
.adoption #instagram .item div.like {
  text-align: right;
}
.adoption #instagram .item div.like img {
  width: auto;
  height: 1em;
  vertical-align: text-bottom;
  margin-right: 0.5em;
}
.adoption#dogs .to-charm {
  margin-top: 1.5em;
  padding: 1em 0;
  text-align: center;
  font-size: 90%;
}
.adoption#dogs .to-charm a {
  display: block;
  width: 400px;
  height: 100px;
  margin: 0 auto;
  background: center center/contain url("https://shopping.geocities.jp/chanet/archives/docs/dogcatlife/synchro/img/charmsupport_pc.jpg") no-repeat;
}
.adoption#cats .to-charm {
  display: none;
  margin-top: 1.5em;
  padding: 1em 0;
  text-align: center;
  font-size: 90%;
}
.adoption#cats .to-charm a {
  display: block;
  width: 400px;
  height: 100px;
  margin: 0 auto;
  background: center center/contain url("https://shopping.geocities.jp/chanet/archives/docs/dogcatlife/synchro/img/charmsupport_pc.jpg") no-repeat;
}

#top.top * {
  font-size: small;
}
#top.top a {
  text-decoration: underline;
}
#top.top a:link {
  color: #0000CC;
}
#top.top a:visited {
  color: #800080;
}
#top.top a:hover, #top.top a:active {
  color: #FF0000;
}
#top.top a:link img, #top.top a:visited img, #top.top a:hover img, #top.top a:active img {
  border: 0;
}
#top.top em {
  font-style: normal;
  font-weight: bold;
  color: #0000CC;
}
#top.top #wrapper {
  background-color: #FFF;
}
#top.top #header {
  margin: 0;
  padding: 0 0 0 20px;
  background: #FFF url(../images/osanpo_mark_header.png) no-repeat 98% 100%;
  height: 60px;
}
#top.top tr.odd {
  background-color: #FFFFBE;
}
#top.top tr.even {
  background-color: #FFFFFF;
}
#top.top p.right {
  text-align: right;
}
#top.top #footer {
  clear: both;
  font-size: small;
  border: solid #888;
  border-width: 1px 0 0 0;
  text-align: center;
  background: #EEEEEE;
}
#top.top #footer p {
  margin: 0;
}
#top.top p#footer-menu {
  margin-bottom: 1em;
}
#top.top #nav {
  margin: 1em auto;
}
#top.top #copyright-jp {
  font-size: x-small;
}
#top.top h1 {
  padding-left: 15px;
  margin: 0 15px 10px 15px;
  font-size: medium;
  font-weight: bold;
  line-height: 1.4;
  color: white;
  clear: both;
  background-color: #88848E;
  background: url(../res/h1-bg-blueblack.png) no-repeat;
  background-position: left;
}
#top.top h2 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  border: none;
}
#top.top ul {
  list-style-type: none;
}
#top.top ul, #top.top li {
  margin: 0;
}
#top.top #wrapper {
  background-color: #F5F5F5;
}
#top.top #top-image {
  width: 800px;
  height: 300px;
  text-align: right;
}
#top.top #top-image h1 {
  margin: 0;
  padding: 0;
  background: none;
  display: inline;
}
#top.top #top-image p {
  color: #FFF;
  font-size: 14px;
  font-weight: bold;
  float: left;
  text-align: left;
  vertical-align: bottom;
}
#top.top .top-image1 {
  background: #cccccc url(../images/top-image-1611a.jpg);
}
#top.top .top-image2 {
  background: #cccccc url(../images/top-image-1912a.jpg);
}
#top.top #hotmenu {
  background-color: #E6E6E6;
}
#top.top #hotmenu ul {
  text-align: right;
  padding: 5px 10px 5px 0;
}
#top.top #hotmenu ul li {
  display: inline-block;
  padding: 0 0.5em;
  border-left: 1px solid #333;
}
#top.top #hotmenu ul li:first-child {
  border-left: none;
}
#top.top #hotmenu ul li:last-child {
  border-left: none;
}
#top.top #hotmenu ul li:last-child a {
  display: block;
  padding: 0 0.5em;
  text-decoration: none;
  border-radius: 0.2em;
  color: #FFF;
  background-color: rgb(255, 70, 63);
}
#top.top #hotmenu ul li span {
  color: #FFF;
  background-color: #3183DA;
  margin-left: 0.5em;
  padding: 0 0.5em;
  font-weight: bold;
}
#top.top #summary {
  margin: 1em 20px 1em 20px;
  padding: 20px;
  background-color: #FFF;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top.top #summary #text {
  flex: 1 1 45%;
}
#top.top #summary #text h2 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 5px;
  padding-left: 5px;
  border-left: 5px solid #BBB;
}
#top.top #summary #text p {
  margin: 0 2em 0 0;
}
#top.top #summary #text p.animals {
  margin: 1em 0 0 0;
  text-align: center;
}
#top.top #summary #text p.animals em {
  color: #0A0;
  font-size: 16px;
}
#top.top #summary #text p.toRescued {
  margin-top: 0.5em;
  text-align: center;
}
#top.top #summary #total {
  flex: 1 1 35%;
  display: flex;
  flex-wrap: wrap;
  text-align: center;
}
#top.top #summary #total p {
  margin: 0;
  color: #FFF;
  flex: 1 1 50%;
  vertical-align: center;
  padding: 5px 0;
  font-size: 1.2rem;
}
#top.top #summary #total p span {
  font-weight: bold;
  font-family: monospace;
}
#top.top #summary #total p#sum {
  flex: 1 1 100%;
  background-color: #51A35E;
}
#top.top #summary #total p#sum span {
  font-size: 2rem;
}
#top.top #summary #total p#dog {
  color: rgb(51, 51, 51);
  background-color: #CECECE;
}
#top.top #summary #total p#dog span {
  font-size: 1.5rem;
}
#top.top #summary #total p#cat {
  color: rgb(51, 51, 51);
  background-color: #CECECE;
}
#top.top #summary #total p#cat span {
  font-size: 1.5rem;
}
#top.top #contents {
  width: 580px;
  padding-bottom: 1em;
  float: left;
  background-color: #F5F5F5;
}
#top.top #main-nav {
  margin-top: 0px;
}
#top.top #sub-nav {
  margin-top: 15px;
}
#top.top #sub-nav p {
  margin: 0 15px;
  clear: both;
}
#top.top #schedule {
  padding-bottom: 1em;
}
#top.top #schedule .dog {
  color: rgb(44, 44, 175);
}
#top.top #schedule .cat {
  color: #C00;
}
#top.top #schedule .chubu {
  background-color: #FFE7BF;
}
#top.top #schedule .chubu img {
  width: 250px;
  vertical-align: bottom;
  margin: 10px;
}
#top.top #schedule .chubu td {
  padding: 0;
}
#top.top #schedule p {
  margin: 0 15px;
}
#top.top #schedule table {
  width: 550px;
  margin-left: 15px;
  text-align: center;
  background-color: white;
  border: 1px solid #888;
  border-collapse: collapse;
}
#top.top #schedule table td, #top.top #schedule table th {
  border: 1px solid #888;
}
#top.top #hotnews ul {
  margin: 0 15px;
  background-color: white;
}
#top.top #hotnews li {
  clear: both;
  margin-bottom: 10px;
  padding: 5px;
  min-height: 75px;
  background-color: #FFF;
}
#top.top #hotnews img {
  float: left;
  margin-right: 10px;
}
#top.top #hotnews h2 {
  display: inline;
}
#top.top #hotnews p {
  margin: 0 0 0 110px;
}
#top.top #hotnews p.date {
  text-align: right;
}
#top.top #hotnews .to-archive {
  margin-right: 15px;
  text-align: right;
}
#top.top #sidebar {
  width: 200px;
  float: right;
  background-color: #F5F5F5;
  padding: 0 20px 0 0;
}
#top.top #sidebar .section {
  margin-bottom: 10px;
  background-color: #FFF;
}
#top.top #sidebar .section h1 {
  margin: 0 0 1em 0;
  padding: 0;
  color: rgb(51, 51, 51);
  background-color: #cccccc;
  background-image: url(../res/h1-bg-sidebar.png);
  background-repeat: no-repeat;
  background-position: left;
}
#top.top #sidebar .section > h2 {
  margin: 0.5em 0;
  padding: 0 0 0 5px;
  font-size: 100%;
  color: blue;
  font-weight: normal;
}
#top.top #sidebar .section p {
  margin: 0.5em 0;
  padding: 0 0 0 5px;
}
#top.top #sidebar .section#news ul {
  width: 200px;
  clear: both;
  background-color: #FFF;
}
#top.top #sidebar .section#news li {
  border: dotted #CCC;
  border-width: 1px 0 0 0;
  padding: 5px;
}
#top.top #sidebar .section#news li li h2 {
  color: inherited;
}
#top.top #sidebar .section#news li li.to-archive {
  text-align: right;
}
#top.top #sidebar .section#rescued .sum {
  margin: 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
#top.top #sidebar .section#rescued .history {
  text-align: right;
}
#top.top #sidebar .section#rescued table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1em;
  text-align: center;
}
#top.top #sidebar .section#yahoo h1 {
  margin-bottom: 0;
}
#top.top #sidebar .section#yahoo p {
  margin: 0;
  padding: 0.5em;
}
#top.top #sidebar .section#yahoo .logos {
  display: flex;
  justify-content: space-between;
  padding: 20px 10px 0 10px;
}
#top.top #sidebar .section#yahoo .logos p {
  margin: 0;
  padding: 0;
  flex: 0 0 100px;
}
#top.top #sidebar .section#yahoo .logos p.paypay img {
  width: 100px;
  height: auto;
  position: relative;
  left: -10px;
}
#top.top #sidebar .section#yahoo .logos p.vpoint img {
  width: 75px;
  height: auto;
  position: relative;
  right: -5px;
  top: 9px;
}
#top.top #sidebar .section#mycalendar p:nth-child(3) {
  margin-left: 0;
  padding-left: 0;
  text-align: center;
}
#top.top #blogparts {
  text-align: center;
}
#top.top #blogparts h1 {
  font-size: small;
  font-weight: normal;
  color: inherit;
}
#top.top #poll {
  background-color: #FFFF99;
}
#top.top #content-banners {
  margin-bottom: 10px;
}
#top.top #content-banners a img {
  width: 100%;
  vertical-align: bottom;
  margin-bottom: 5px;
}
#top.top #content-banners a:last-child img {
  margin-bottom: 0;
}
#top.top #social-icons {
  justify-content: space-between;
  margin-bottom: 10px;
}
#top.top #social-icons:not(.sp-only) {
  display: flex;
}
#top.top #social-icons a {
  display: block;
  margin: 0;
  padding: 0;
  flex-basis: 16%;
}
#top.top #social-icons a img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#top.top #social-buttons {
  clear: both;
  height: 20px;
  padding: 15px 0;
  background-color: #E6E6E6;
}
#top.top #social-buttons div {
  float: left;
  margin-right: 10px;
}
#top.top #social-buttons .facebook {
  width: 160px;
  position: relative;
  left: 39px;
}
#top.top #social-buttons .twitter {
  width: 120px;
  position: relative;
  left: 36px;
}
#top.top #social-buttons .google {
  width: 50px;
  position: relative;
  left: 17px;
}
#top.top .panel-nav {
  margin: 10px 15px;
  padding: 0;
  width: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top.top .panel-nav li {
  margin: 0;
  padding: 0;
}
#top.top .panel-nav li h1 {
  margin: 0;
  padding: 0;
  display: inline-block;
}
#top.top .panel-nav li.type1 {
  flex: 0 1 270px;
}
#top.top .panel-nav li.type2 {
  flex: 0 1 30%;
}
#top.top .panel-nav li img {
  width: 100%;
  height: auto;
}
#top.top .panel-nav li h1, #top.top .panel-nav li h2 {
  background-color: #F5F5F5;
}

#dogs * {
  font-family: "Google Sans", "Helvetica Neue", sans-serif;
}
#dogs section:after {
  display: none;
}
#dogs #main {
  width: 760px;
  padding: 0 20px 20px 20px;
  background-color: #FFF;
}
#dogs #main h2 {
  margin: 1.5em 0 0 0;
  color: #333;
  background: none;
  border: solid #333;
  border-width: 0 0 2px 0;
}
#dogs #main h2 + p {
  margin: 0.5em 0 1em 0;
  text-align: right;
}
#dogs .smart {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
#dogs .smart:after {
  content: "";
  display: block;
  width: 175px;
  height: 0;
}
#dogs .smart:before {
  content: "";
  display: block;
  width: 175px;
  height: 0;
  order: 1;
}
#dogs .smart .item {
  box-sizing: border-box;
  width: 175px;
  flex: 0 0 175px;
  margin-bottom: 1.5em;
  text-decoration: none;
  position: relative;
}
#dogs .smart .item:hover, #dogs .smart .item:link, #dogs .smart .item:visited, #dogs .smart .item:active {
  color: rgb(51, 51, 51);
}
#dogs .smart .item .new {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0.2125rem 0.51rem;
  width: auto;
  height: 0.935rem;
  line-height: 0.935rem;
  top: calc(131px - 0.70125rem);
  right: 15px;
  font-size: 0.85rem;
  color: #FFF;
  background-color: #05B153;
  border-radius: 0.70125rem;
  z-index: 9999;
}
#dogs .smart .item .new:after {
  content: "更新あり";
}
#dogs .smart .item .swiper {
  width: 175px;
  height: 131px;
  border-radius: 10px 10px 0 0;
}
#dogs .smart .item .swiper .swiper-wrapper {
  width: 175px;
  margin: 0;
}
#dogs .smart .item .swiper .swiper-wrapper .swiper-slide {
  margin: 0;
}
#dogs .smart .item .swiper .swiper-wrapper .swiper-slide img {
  width: 175px;
  height: auto;
}
#dogs .smart .item .swiper .swiper-pagination-bullet-active {
  background: #FFF;
  opacity: 0.7;
}
#dogs .smart .item .basic {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 175px;
  height: 8em;
  margin: 0;
  padding: 15px;
  border-radius: 0 0 10px 10px;
  border: solid #888;
  border-width: 0 1px 1px 1px;
}
#dogs .smart .item .basic .info {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 16px;
  flex: 0 0 100%;
  white-space: nowrap;
  overflow: hidden;
}
#dogs .smart .item .basic .info .id {
  display: block;
  font-weight: bold;
  font-size: 20px;
}
#dogs .smart .item .basic .info .age {
  display: block;
  font-weight: normal;
  font-size: 18px;
  color: #777;
}
#dogs .smart .item .basic .info .catchphrase {
  display: block;
  color: deeppink;
}
#dogs .smart .item .basic .good {
  color: deeppink;
}
#dogs .smart .item .basic.Male {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
  background-size: 40%;
  background-position: right 10% top 50px;
  background-color: #FFF;
}
#dogs .smart .item .basic.Female {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
  background-size: 40%;
  background-position: right 10% bottom 50px;
  background-color: #FFF;
}
#dogs .smart .item .basic .icons {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-top: 10px;
  font-size: 0;
  line-height: 0;
  opacity: 0.8;
}
#dogs .smart .item .basic .icons img {
  width: 22px;
  height: 22px;
}
#dogs .smart2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
#dogs .smart2:after {
  content: "";
  display: block;
  width: 175px;
  height: 0;
}
#dogs .smart2:before {
  content: "";
  display: block;
  width: 175px;
  height: 0;
  order: 1;
}
#dogs .smart2 .item {
  box-sizing: border-box;
  width: 175px;
  flex: 0 0 175px;
  margin-bottom: 1.5em;
  text-decoration: none;
}
#dogs .smart2 .item:hover, #dogs .smart2 .item:link, #dogs .smart2 .item:visited, #dogs .smart2 .item:active {
  color: rgb(51, 51, 51);
}
#dogs .smart2 .item .swiper {
  width: 175px;
  height: 131px;
  border-radius: 10px 10px 0 0;
}
#dogs .smart2 .item .swiper .swiper-wrapper {
  width: 175px;
  margin: 0;
}
#dogs .smart2 .item .swiper .swiper-wrapper .swiper-slide {
  margin: 0;
}
#dogs .smart2 .item .swiper .swiper-wrapper .swiper-slide img {
  width: 175px;
  height: auto;
}
#dogs .smart2 .item .swiper .swiper-pagination-bullet-active {
  background: #FFF;
  opacity: 0.7;
}
#dogs .smart2 .item .basic {
  box-sizing: border-box;
  display: block;
  position: relative;
  flex-wrap: wrap;
  align-items: center;
  width: 175px;
  height: 8em;
  margin: 0;
  padding: 15px;
  border-radius: 0 0 10px 10px;
  border: solid #888;
  border-width: 0 1px 1px 1px;
}
#dogs .smart2 .item .basic.Male {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
  background-size: 40%;
  background-position: right 10% top 50px;
  background-color: #FFF;
}
#dogs .smart2 .item .basic.Female {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
  background-size: 40%;
  background-position: right 10% bottom 50px;
  background-color: #FFF;
}
#dogs .smart2 .item .basic .info {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 16px;
  flex: 0 0 100%;
  white-space: nowrap;
  overflow: hidden;
}
#dogs .smart2 .item .basic .info .id {
  font-weight: bold;
  font-size: 20px;
}
#dogs .smart2 .item .basic .info .age {
  font-weight: normal;
  font-size: 18px;
  color: #777;
}
#dogs .smart2 .item .basic .good {
  margin: 0.2em 0 0 0;
  font-size: 14px;
  color: deeppink;
}
#dogs .smart2 .item .basic .icons {
  display: flex;
  position: absolute;
  width: 145px;
  bottom: 10px;
  justify-content: space-between;
  padding-top: 10px;
  font-size: 0;
  line-height: 0;
  opacity: 0.8;
}
#dogs .smart2 .item .basic .icons img {
  width: 25px;
  height: 25px;
}
#dogs .smart-puppy {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
#dogs .smart-puppy:after {
  content: "";
  display: block;
  width: 175px;
  height: 0;
}
#dogs .smart-puppy:before {
  content: "";
  display: block;
  width: 175px;
  height: 0;
  order: 1;
}
#dogs .smart-puppy .item {
  box-sizing: border-box;
  width: 175px;
  flex: 0 0 175px;
  margin-bottom: 1.5em;
  text-decoration: none;
}
#dogs .smart-puppy .item:hover, #dogs .smart-puppy .item:link, #dogs .smart-puppy .item:visited, #dogs .smart-puppy .item:active {
  color: rgb(51, 51, 51);
}
#dogs .smart-puppy .item .swiper {
  width: 175px;
  height: 131px;
  border-radius: 10px 10px 0 0;
}
#dogs .smart-puppy .item .swiper .swiper-wrapper {
  width: 175px;
  margin: 0;
}
#dogs .smart-puppy .item .swiper .swiper-wrapper .swiper-slide {
  margin: 0;
}
#dogs .smart-puppy .item .swiper .swiper-wrapper .swiper-slide img {
  width: 175px;
  height: auto;
}
#dogs .smart-puppy .item .swiper .swiper-pagination-bullet-active {
  background: #FFF;
  opacity: 0.7;
}
#dogs .smart-puppy .item .basic {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 175px;
  height: 9.5em;
  margin: 0;
  padding: 15px;
  border-radius: 0 0 10px 10px;
  border: solid #888;
  border-width: 0 1px 1px 1px;
}
#dogs .smart-puppy .item .basic.Male {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
  background-size: 40%;
  background-position: right 10% top 50px;
  background-color: #FFF;
}
#dogs .smart-puppy .item .basic.Female {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
  background-size: 40%;
  background-position: right 10% bottom 50px;
  background-color: #FFF;
}
#dogs .smart-puppy .item .basic .info {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 16px;
  flex: 0 0 100%;
  white-space: nowrap;
  overflow: hidden;
}
#dogs .smart-puppy .item .basic .info .id {
  font-weight: bold;
  font-size: 20px;
}
#dogs .smart-puppy .item .basic .info .age {
  font-weight: normal;
  font-size: 18px;
}
#dogs .smart-puppy .item .basic .memo {
  margin: 0;
  height: 4em;
  overflow: hidden;
}
#dogs .smart-puppy .item .basic .icons {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-top: 10px;
  font-size: 0;
  line-height: 0;
  opacity: 0.8;
}
#dogs .smart-puppy .item .basic .icons img {
  width: 25px;
  height: 25px;
}
#dogs .satooya {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
#dogs .satooya:after {
  content: "";
  display: block;
  width: 140px;
  height: 0;
}
#dogs .satooya:before {
  content: "";
  display: block;
  width: 140px;
  height: 0;
  order: 1;
}
#dogs .satooya .item {
  box-sizing: border-box;
  width: 140px;
  flex: 0 0 140px;
  margin-bottom: 1.5em;
  text-decoration: none;
}
#dogs .satooya .item:hover, #dogs .satooya .item:link, #dogs .satooya .item:visited, #dogs .satooya .item:active {
  color: rgb(51, 51, 51);
}
#dogs .satooya .item .swiper {
  width: 140px;
  height: 105px;
  border-radius: 0;
}
#dogs .satooya .item .swiper .swiper-wrapper {
  width: 140px;
  margin: 0;
}
#dogs .satooya .item .swiper .swiper-wrapper .swiper-slide {
  margin: 0;
}
#dogs .satooya .item .swiper .swiper-wrapper .swiper-slide img {
  width: 140px;
  height: auto;
}
#dogs .satooya .item .swiper .swiper-pagination-bullet-active {
  background: #FFF;
  opacity: 0.7;
}
#dogs .satooya .item .basic {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 140px;
  height: 6em;
  margin: 0;
  padding: 5px;
  border-radius: 0;
  border: solid #888;
  border-width: 0 1px 1px 1px;
}
#dogs .satooya .item .basic p {
  margin: 0;
  font-size: 16px;
  flex: 0 0 100%;
  white-space: nowrap;
  overflow: hidden;
}
#dogs .satooya .item .basic p span {
  font-weight: bold;
  font-size: 20px;
}
#dogs .satooya .item .basic.Male {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
  background-size: 40%;
  background-position: right 10% top 40px;
  background-color: #FFF;
}
#dogs .satooya .item .basic.Female {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
  background-size: 40%;
  background-position: right 10% bottom 40px;
  background-color: #FFF;
}
#dogs .satooya .item .basic .icons {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-top: 10px;
  font-size: 0;
  line-height: 0;
  opacity: 0.8;
}
#dogs .satooya .item .basic .icons img {
  width: 25px;
  height: 25px;
}

#adog h1 {
  margin-bottom: 5px;
}
#adog h3 {
  margin: 0;
  font-size: small;
}
#adog #satooya {
  margin: 0 0 1em 0;
  text-align: center;
  color: #008800;
  font-weight: bold;
  font-size: medium;
}
#adog #media {
  width: 415px;
  _width: 420px;
  float: left;
  margin: 0;
  font-size: small;
}
#adog #media #first-photo {
  text-align: center;
}
#adog #media h3 {
  margin-top: 2em;
}
#adog #media img {
  margin: 0 4px 0 0;
}
#adog #media .movie iframe {
  width: 100%;
  height: 232px;
}
#adog #media .instagram img {
  width: 1em;
}
#adog #media .instagram .like {
  display: inline;
}
#adog #information {
  float: left;
  width: 335px;
  _width: 330px;
  margin: 0 0 0 10px;
  padding: 0;
}
#adog #information div {
  border: 1px solid #DDD;
  margin-bottom: 20px;
  padding: 1em;
  font-size: small;
}
#adog #information div#map img {
  width: 100%;
}
#adog #information em {
  color: #007E00;
}
#adog #information .satooya {
  background: url(../satooya/dog/syoukai/res/satooya_stamp.png) no-repeat 220px 100px;
}
#adog #information table.status tr td {
  padding: 0;
  text-align: center;
}
#adog #information table.status tr td:nth-child(2) {
  font-size: 0;
}
#adog #information table.status tr img {
  width: 100%;
}
#adog #information table.status tr:first-child td {
  width: 12%;
  font-size: 16px;
}
#adog #information table.status tr:first-child td:first-child {
  width: 35%;
}
#adog #information .osanpo {
  margin: 1em 0;
  overflow: scroll;
  overflow-x: hidden;
  height: 10em;
}
#adog #information .osanpo p {
  padding-bottom: 1em;
  border-width: 0;
  border-bottom: 1px dashed #DDD;
}
#adog .back-to-index {
  clear: both;
  text-align: center;
  padding: 1em 0 0 0;
  border: 1px solid #888;
  border-width: 1px 0 0 0;
}
#adog .cbox {
  clear: both;
  padding-top: 10px;
}
#adog #social-buttons {
  height: 20px;
  padding-left: 425px;
}
#adog #social-buttons div {
  float: left;
  margin-right: 10px;
}
#adog #social-buttons .facebook {
  width: 100px;
}
#adog #social-buttons .twitter {
  width: 100px;
}
#adog #social-buttons .google {
  width: 60px;
}

#adog2 * {
  font-family: "Google Sans", "Helvetica Neue", sans-serif;
}
#adog2 #main {
  width: 760px;
  padding: 0 20px;
}
#adog2 h3 {
  font-size: 16px;
  color: #333;
}
#adog2 section:after {
  display: none;
}
#adog2 .back-to-index {
  padding-bottom: 1em;
}
#adog2 #information .swiper {
  width: 760px;
  height: 570px;
  border-radius: 20px 20px 0 0;
}
#adog2 #information .swiper .swiper-wrapper {
  width: 760px;
  margin: 0;
}
#adog2 #information .swiper .swiper-wrapper .swiper-slide {
  margin: 0;
}
#adog2 #information .swiper .swiper-wrapper .swiper-slide img {
  width: 760px;
  height: 570px;
}
#adog2 #information .swiper .swiper-wrapper .swiper-slide iframe {
  width: 760px;
  height: 570px;
}
#adog2 #information .swiper .swiper-button-next, #adog2 #information .swiper .swiper-button-prev {
  color: #0177a9;
}
#adog2 #information .swiper-my-navigation {
  display: flex;
  flex-wrap: wrap;
}
#adog2 #information .swiper-my-navigation img {
  width: 152px;
  height: auto;
}
#adog2 #information #basic-info {
  margin: 2em 0;
  padding: 20px;
  border: 1px solid #AAA;
  border-radius: 20px;
}
#adog2 #information #basic-info.male {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
  background-size: 20%;
  background-position: right 10% bottom -30%;
  background-color: #FFF;
}
#adog2 #information #basic-info.female {
  background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
  background-size: 20%;
  background-position: right 10% bottom -30%;
  background-color: #FFF;
}
#adog2 #information #basic-info .catchphrase {
  margin: 0.5em 0 0 0;
  font-size: 20px;
  color: deeppink;
}
#adog2 #information #basic-info .nickname {
  font-size: 3rem;
  font-weight: bold;
  color: #333;
  margin: 0;
}
#adog2 #information #basic-info .id {
  font-size: 1.5rem;
  margin: 0 0 0 0.5rem;
  color: #333;
}
#adog2 #information #basic-info .age {
  font-size: 1.5rem;
  margin: 0 0 0 0.5rem;
  color: #333;
}
#adog2 #information #basic-info .weight {
  font-size: 1.5rem;
  margin: 0 0 0 0.5rem;
  color: #333;
}
#adog2 #information #basic-info .memo {
  margin: 1.5em 0.5em 1em 0.5em;
  padding: 0.5em;
  border: 0.3em dotted #CCC;
}
#adog2 #information #good-bad {
  display: flex;
  justify-content: space-between;
}
#adog2 #information #good-bad div {
  flex: 0 1 328px;
  padding: 20px;
}
#adog2 #information #good-bad div h3 {
  margin: 0;
  padding: 0;
  text-align: left;
  vertical-align: middle;
}
#adog2 #information #good-bad div p {
  margin: 0;
  padding: 0;
  text-align: left;
  vertical-align: middle;
  font-size: 1.5em;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4em;
}
#adog2 #information #good-bad div.good {
  border: 1px solid #AAA;
  border-radius: 20px;
}
#adog2 #information #good-bad div.good h3 {
  padding: 1em 0 1em 4em;
  color: #e79630;
  font-weight: bold;
  background: 0 50%/3em url(https://www.lifeboat.or.jp/images/satooya-dog-good-icon.png) no-repeat;
}
#adog2 #information #good-bad div.bad {
  border: 1px solid #AAA;
  border-radius: 20px;
}
#adog2 #information #good-bad div.bad h3 {
  padding: 1em 0 1em 4em;
  color: #7376e7;
  font-weight: bold;
  background: 0 50%/3em url(https://www.lifeboat.or.jp/images/satooya-dog-bad-icon.png) no-repeat;
}
#adog2 #information #instagram {
  margin: 2em 0;
  padding: 20px;
  border: 1px solid #AAA;
  border-radius: 20px;
}
#adog2 #information #instagram ul {
  display: flex;
  margin: 0;
  list-style-type: none;
  overflow-x: auto;
  overflow-y: hidden;
}
#adog2 #information #instagram ul li {
  flex: 0 1 30%;
  margin: 0;
}
#adog2 #information #instagram ul li .image {
  position: relative;
}
#adog2 #information #instagram ul li .image img {
  width: 200px;
  height: 200px;
  object-fit: cover;
  object-position: top;
}
#adog2 #information #instagram ul li .image img.movie {
  object-position: center;
}
#adog2 #information #instagram ul li .image img.playicon {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 80px;
  left: 80px;
}
#adog2 #information #instagram ul li .like {
  display: inline;
  margin-left: 0.5em;
}
#adog2 #information #instagram ul li .like img {
  width: 1em;
  height: auto;
}
#adog2 #information #radarchart {
  margin: 2em 0;
  padding: 20px;
  border: 1px solid #AAA;
  border-radius: 20px;
}
#adog2 #information #radarchart * {
  box-sizing: border-box;
}
#adog2 #information #radarchart #radarchart-body {
  position: relative;
  height: 285px;
}
#adog2 #information #radarchart #radarchart-body img {
  width: 336px;
  height: 285px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
#adog2 #information #radarchart #radarchart-body #triangle {
  width: 336px;
  height: 285px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
}
#adog2 #information #radarchart #radarchart-body2 {
  position: relative;
  height: 571px;
}
#adog2 #information #radarchart #radarchart-body2 img {
  width: 672px;
  height: 571px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
#adog2 #information #radarchart #radarchart-body2 #triangle {
  width: 672px;
  height: 571px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
}
#adog2 #information #comments {
  margin: 2em 0;
  padding: 20px;
  border: 1px solid #AAA;
  border-radius: 20px;
  font-size: 18px;
}
#adog2 #information #comments div.description {
  line-height: 2em;
}
#adog2 #back {
  margin: 0;
  padding: 2em 0 3em 0;
  text-align: center;
}

#dog-manual {
  /* Index */
  /* a page */
}
#dog-manual #left-pane {
  margin: 0 20px 20px 0;
  padding: 10px;
  width: 340px;
  float: left;
  border: dotted #888;
  border-width: 0 5px 0 0;
}
#dog-manual #right-pane {
  margin: 0 0 20px 0;
  padding: 10px;
  width: 340px;
  float: left;
}
#dog-manual #article {
  padding: 0 150px 1em 20px;
  background: #FFFFFF;
  border-top: 1px solid #DDD;
  /* photo */
}
#dog-manual #article.index {
  padding: 0 20px 1em 20px;
}
#dog-manual #article h1 {
  text-align: center;
  color: rgb(51, 51, 51);
  background: #D1F2CB;
}
#dog-manual #article h2 {
  color: #093488;
  border: 0;
  font-size: x-large;
  background: url(../contents/dog-manual/res/h2mark.png) no-repeat 0% 50%;
  padding-left: 30px;
}
#dog-manual #article h2.question {
  background: none;
}
#dog-manual #article h3 {
  color: rgb(51, 51, 51);
}
#dog-manual #article table.cost {
  width: 300px;
  background-color: #FFF;
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
}
#dog-manual #article table.cost caption {
  color: rgb(51, 51, 51);
  background-color: #FFFFFF;
}
#dog-manual #article table.cost thead {
  background-color: #D9D9D9;
}
#dog-manual #article table.cost thead.first {
  color: #FFF;
  background-color: #808080;
}
#dog-manual #article table.cost tfoot th, #dog-manual #article table.cost tfoot td {
  color: #FFF;
  font-weight: bold;
  font-size: 20px;
  background-color: #C00000;
}
#dog-manual #article table.cost tr th, #dog-manual #article table.cost tr td {
  border: 1px solid #333;
}
#dog-manual #article table.cost tr th {
  text-align: center;
}
#dog-manual #article table.cost tr td {
  text-align: right;
  padding-right: 1em;
}
#dog-manual #article .column {
  margin: 0;
  padding: 50px 0 0 46px;
  border: 0;
  background: no-repeat url(../contents/dog-manual/res/column-bg.jpg);
}
#dog-manual #article .column h3 {
  color: #085FED;
  font-size: larger;
  margin: 20px 0 1.5em 60px;
}
#dog-manual #article .column > div {
  margin: 0;
  padding: 0 2em 1em 2em;
  width: 500px;
  border: 3px solid #085FED;
}
#dog-manual #article .ex {
  vertical-align: middle;
  color: #DB8A17;
}
#dog-manual #article .ex img {
  vertical-align: middle;
  margin: 0 1em 0.5em 0;
}
#dog-manual #article .question {
  vertical-align: middle;
  color: #9A4900;
  border: 0;
  margin: 3em 0 0 0;
  padding: 0;
}
#dog-manual #article .question img {
  vertical-align: middle;
  margin: 0 1em 0.5em 0;
}
#dog-manual #article .icon {
  float: left;
}
#dog-manual #article #page-menu {
  clear: both;
  margin-top: 5em;
  text-align: center;
  background-color: #D1F2CB;
}
#dog-manual #article #age-table .human {
  background-color: #99CCFF;
  text-align: center;
}
#dog-manual #article #age-table .dog {
  background-color: #FFFF99;
  text-align: center;
}
#dog-manual #article .photo-right {
  padding: 0 10px 10px 10px;
  float: right;
}
#dog-manual #article .photo-right p {
  margin: 0;
  padding: 0;
  width: 240px;
  text-align: center;
  font-size: small;
  color: #7A4429;
}
#dog-manual #article .photo-left {
  padding: 0 10px 10px 10px;
  float: left;
}
#dog-manual #article .photo-left p {
  margin: 0;
  padding: 0;
  width: 240px;
  text-align: center;
  font-size: small;
  color: #7A4429;
}
#dog-manual #article .photo-three {
  padding: 0 5px 10px 5px;
  width: 190px;
  float: left;
  text-align: center;
}
#dog-manual #article .photo-three p {
  margin: 0;
  padding: 0;
  font-size: small;
  color: #7A4429;
}
#dog-manual #article .to-ipet {
  text-align: center;
}
#dog-manual #article .to-ipet a {
  text-decoration: none;
}
#dog-manual #article .to-ipet a span {
  display: block;
  width: 400px;
  margin: 2em auto 3em auto;
  padding: 20px 0;
  color: #FFF;
  background-color: #FF5300;
  font-size: 20px;
}

#cats img {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: bottom;
}
#cats .item {
  float: none;
  display: inline-block;
  vertical-align: top;
  list-style-type: none;
}
#cats .update-date {
  text-align: right;
}
#cats .staying-days {
  font-size: 10px;
  background-color: #FFE2E8;
  text-align: center;
}
#cats .staying-days span {
  font-size: 16px;
  font-weight: bold;
  color: #FF6666;
}
#cats .kitties {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .kitties .item {
  display: flex;
  flex-direction: column;
  padding: 0 8px 8px 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
}
#cats .kitties .item p {
  flex-grow: 1;
  clear: both;
  margin: 5px 0 0 0;
  padding: 3px 0 3px 5px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  width: 155px;
  height: auto;
  font-size: small;
}
#cats .kitties .item .memo {
  color: #B45A91;
}
#cats .kitties li.nopopup {
  padding-top: 21px;
}
#cats .kitties-compact {
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .kitties-compact li.item {
  padding: 0;
  margin: 2px 2px 15px 2px;
  border: 0;
  background-color: #FFF;
}
#cats .kitties-compact p {
  clear: both;
  margin: 5px 0 0 0;
  padding: 0;
  border: 0;
  width: 148px;
  height: auto;
  font-size: 13px;
}
#cats .kitties-compact p span.memo {
  color: #B45A91;
}
#cats .kitties-compact li.nopopup {
  padding-top: 21px;
}
#cats .wakaneko {
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .wakaneko li.item {
  padding: 0 8px 8px 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
}
#cats .wakaneko li.item .memo {
  color: #B45A91;
}
#cats .wakaneko p {
  clear: both;
  margin: 5px 0 0 0;
  padding: 3px 0 3px 5px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  width: 340px;
  height: 3em;
  font-size: 13px;
}
#cats .wakaneko li.nopopup {
  padding-top: 21px;
}
#cats .wakearies {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .wakearies .item {
  display: flex;
  flex-direction: column;
  padding: 0 8px 8px 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
}
#cats .wakearies .item p {
  flex-grow: 1;
  clear: both;
  margin: 5px 0 0 0;
  padding: 3px 0 3px 5px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  width: 155px;
  height: auto;
  font-size: 13px;
}
#cats .wakearies .item p .memo {
  color: #B45A91;
}
#cats .wakearies .item p .memo em {
  color: #B45A91;
  font-weight: normal;
  text-decoration: underline;
}
#cats .wakearies .item .link {
  margin: 15px 0 5px 0;
  text-align: center;
}
#cats .wakearies .item .link img {
  width: 85px;
}
#cats .wakearies .item .link img.movie {
  width: 30px;
  opacity: 0.7;
}
#cats .wakearies .item .link img.multibreed {
  width: 30px;
}
#cats .wakearies li.nopopup {
  padding-top: 21px;
}
#cats .adults {
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .adults li.item {
  padding: 0 8px 8px 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
}
#cats .adults li.item .link {
  margin: 10px 0 5px 0;
  text-align: center;
}
#cats .adults p {
  clear: both;
  margin: 5px 0 0 0;
  padding: 3px 0 3px 5px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  width: 155px;
  height: 4em;
  font-size: 13px;
}
#cats .adults p .memo {
  color: #B45A91;
}
#cats .adults p .memo em {
  color: #B45A91;
  font-weight: normal;
  text-decoration: underline;
}
#cats .adults li.nopopup {
  padding-top: 21px;
}
#cats .kanekoneko {
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .kanekoneko li.item {
  padding: 0 8px 8px 8px;
  margin: 4px 4px 15px 4px;
  border: 1px solid;
  border-color: #DDD #888 #888 #DDD;
}
#cats .kanekoneko li.item .link {
  margin: 10px 0 5px 0;
  text-align: center;
}
#cats .kanekoneko p {
  clear: both;
  margin: 5px 0 0 0;
  padding: 3px 0 3px 5px;
  border: 1px solid;
  border-color: #888 #DDD #DDD #888;
  width: 155px;
  height: auto;
  font-size: 13px;
}
#cats .kanekoneko p .memo {
  color: #B45A91;
}
#cats .kanekoneko li.nopopup {
  padding-top: 21px;
}
#cats .satooya {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  clear: both;
}
#cats .satooya .item {
  padding: 0;
  margin: 2px 2px 15px 2px;
  border: 0;
  background-color: #FFD;
  background-image: url(../satooya/cat/res/kettei-mark.png);
  background-repeat: no-repeat;
  background-position: bottom right;
}
#cats .satooya .item p {
  clear: both;
  margin: 5px 0 0 0;
  padding: 0;
  border: 0;
  width: 148px;
  height: 7em;
  font-size: 13px;
  font-family: sans-serif;
}
#cats .satooya .item p span {
  font-size: x-small;
}
#cats .satooya .item p span.date {
  font-size: 13px;
  font-weight: bold;
  color: #43689D;
}
#cats .satooya li.nopopup {
  padding-top: 21px;
}
#cats .jyoutokai p {
  height: 10em;
}

#acat h1 {
  margin-bottom: 5px;
}
#acat h3 {
  margin: 2em 0 0 0;
  font-size: small;
}
#acat #satooya {
  margin: 0 0 1em 0;
  text-align: center;
  color: #008800;
  font-weight: bold;
  font-size: medium;
}
#acat #left-pane {
  width: 335px;
  _width: 330px;
  float: left;
  margin: 0;
  font-size: small;
}
#acat #left-pane #first-photo {
  text-align: center;
}
#acat #left-pane #first-photo img {
  vertical-align: bottom;
}
#acat #left-pane #first-photo .staying-days {
  background-color: #FFE2E8;
  text-align: center;
  width: 320px;
  margin-left: 7px;
}
#acat #left-pane #first-photo .staying-days span {
  font-weight: bold;
  color: #FF6666;
}
#acat .movie {
  float: left;
  margin: 0;
  padding: 0;
  border: 0;
  text-align: center;
  font-size: small;
}
#acat #right-pane {
  float: left;
  width: 415px;
  _width: 420px;
  margin: 0 0 0 10px;
  padding: 0;
}
#acat #right-pane #other-photos img {
  margin: 0 4px 0 0;
}
#acat iframe {
  width: 400px;
  height: 225px;
  margin: 0 5px 5px 0;
  padding: 0;
}
#acat .back-to-index {
  clear: both;
  text-align: center;
  padding: 1em 0 0 0;
  border: 1px solid #888;
  border-width: 1px 0 0 0;
}
#acat .cbox {
  clear: both;
  padding-top: 10px;
}
#acat #social-buttons {
  height: 20px;
  padding-left: 345px;
}
#acat #social-buttons div {
  float: left;
  margin-right: 10px;
}
#acat #social-buttons .facebook {
  width: 100px;
}
#acat #social-buttons .twitter {
  width: 100px;
}
#acat #social-buttons .google {
  width: 60px;
}

#news {
  /* 3panes */
  /* entry list */
  /* an entry */
  /* images */
}
#news .social-icons {
  margin: 10px 0 10px 0;
  padding: 0 0 10px 0;
}
#news .social-icons img {
  width: 40px;
  height: auto;
  margin: 0 5px;
}
#news #main-pane {
  font-size: small;
  width: auto;
  float: left;
  margin-bottom: 2em;
}
#news #sidebar {
  width: 25%;
  float: right;
  font-size: small;
}
#news #sidebar ul li {
  margin: 1em 0;
}
#news #sidebar .widget {
  margin-bottom: 2em;
}
#news #sidebar .widget_search .field {
  padding: 0.5em 0;
  margin: 0.5em 0;
}
#news #sidebar .widget_search .submit {
  padding: 0.5em 0;
  margin: 0.5em 0;
}
#news #sidebar .tagcloud {
  line-height: 2em;
}
#news #sidebar .tagcloud a {
  padding-right: 1em;
}
#news .list-base ul {
  margin: 15px 15px;
  background-color: white;
  list-style-type: none;
}
#news .list-base li {
  clear: both;
  padding: 5px;
  background-color: #FFF;
}
#news .list-base img {
  float: left;
  margin-right: 10px;
}
#news .list-base h2 {
  display: inline;
  border: 0;
}
#news .list-base p.date {
  text-align: right;
}
#news .nav-above {
  margin-top: 1em;
  border: #AAA dotted;
  border-width: 0 0 1px 0;
}
#news .nav-below {
  margin-top: 1em;
  border: #AAA dotted;
  border-width: 1px 0 0 0;
}
#news .entry-body {
  clear: both;
}
#news .entry-body figure.fit img {
  width: 100%;
}
#news .entry-timestamp {
  font-size: 16px;
  border: 0;
  margin: 1em 0;
  text-align: right;
}
#news .entry-info {
  height: 30px;
  font-size: 16px;
  margin: 3em 0 0 0;
  padding-top: 10px;
  text-align: left;
  border: 1px solid #CCC;
  background-color: #EEE;
  /* social buttons */
}
#news .entry-info .entry-category {
  margin-right: 10px;
  float: right;
}
#news .entry-info .entry-category .categories {
  margin-right: 0.5em;
  padding-right: 0.5em;
  border-right: 1px solid #333;
  display: inline;
}
#news .entry-info .entry-category .tags {
  display: inline;
}
#news .entry-info .social-buttons {
  height: 20px;
  padding-left: 10px;
  float: left;
}
#news .entry-info .social-buttons div {
  float: left;
  margin-right: 10px;
}
#news .entry-info .social-buttons .facebook {
  width: 150px;
}
#news .entry-info .social-buttons .twitter {
  width: 100px;
}
#news .entry-info .social-buttons .google {
  width: 60px;
}
#news .alignright {
  float: right;
  margin: 0 5px;
}
#news .alignleft {
  float: left;
  margin: 0 5px;
}
#news .pc-inserted-image {
  width: 70%;
}
#news .related-entries li {
  margin: 1em 0;
}

.jyoutokai #satooya-banner {
  margin: 2em 0 1em 0;
  text-align: center;
}
.jyoutokai .menkai-flow {
  text-align: center;
  width: 610px;
  height: 200px;
  background: url(../images/menkai-flow.png) no-repeat;
}

#internship iframe {
  width: 100%;
  height: 50vw;
}
#internship #flow #text {
  display: none;
}

#rescued table.year {
  width: 700px;
  margin: 0;
  padding: 3px;
  border: 1px solid #CCC;
  border-collapse: separate;
}
#rescued table.year td, #rescued table.year th {
  margin: 1px;
  padding: 1px;
  border: 1px solid #CCC;
  text-align: center;
}
#rescued table.year th {
  background-color: #E6E6ED;
}
#rescued table.year tr.each_sum {
  background-color: #FFE9E9;
}
#rescued table.year tr.all_sum {
  background-color: #E9E9FF;
}
#rescued table.year tr th:first-child {
  width: 270px;
}
#rescued .rescued_sum {
  width: 700px;
  margin: 0.5em 0 0 0;
  text-align: center;
  text-decoration: underline;
}
#rescued .jump_to_year {
  margin-left: 0;
}
#rescued .jump_to_year li {
  display: inline-block;
  width: 80px;
  padding: 0;
  text-align: center;
}
#rescued .month-graph {
  font-size: 0;
}
#rescued .month-graph img {
  border: 1px solid #888;
}
#rescued .month-graph p {
  margin: 0 0 1em 0;
  padding: 0;
  font-size: 12px;
}

#syuushi-houkoku .syuushi {
  width: 600px;
  border: 0;
}
#syuushi-houkoku .syuushi td {
  padding: 1px 5px 1px 5px;
  border: 0;
}
#syuushi-houkoku .syuushi td.number {
  text-align: right;
}
#syuushi-houkoku .syuushi td.minus {
  color: red;
}
#syuushi-houkoku .syuushi td.sum_text {
  text-align: right;
  font-weight: bold;
  text-decoration: underline;
}
#syuushi-houkoku .syuushi td.sum_number {
  text-align: right;
  font-weight: bold;
  text-decoration: underline;
}
#syuushi-houkoku .syuushi td.subtotal-text {
  text-align: right;
}
#syuushi-houkoku .syuushi td.payment_category {
  background-color: #EEE;
  text-align: left;
}
#syuushi-houkoku .syuushi td.income_category {
  background-color: #EEE;
  text-align: left;
}
#syuushi-houkoku .syuushi td.income, #syuushi-houkoku .syuushi td.payment {
  font-weight: bold;
}
#syuushi-houkoku .syuushi td.income {
  background-color: #CEEFED;
}
#syuushi-houkoku .syuushi td.payment {
  background-color: #FDDEDC;
}
#syuushi-houkoku .syuushi td.total {
  background-color: #CCCCCC;
}
#syuushi-houkoku .syuushi td:nth-child(2) {
  white-space: nowrap;
}

.cooperation .pnl-menu {
  margin: 1em 0;
  padding: 1em 0;
  list-style-type: none;
  clear: both;
}
.cooperation .pnl-menu li {
  width: 253px;
  margin: 0;
  padding: 0 0 2em 0;
  text-align: center;
  float: left;
}
.cooperation .pnl-menu li p {
  width: 220px;
  margin-left: 16px;
  text-align: center;
  font-size: small;
}
.cooperation#houkoku section.initial {
  display: flex;
  flex-wrap: wrap;
}
.cooperation#houkoku section.initial div {
  flex: 0 0 12%;
  border: 1px solid #CCC;
  padding-left: 0.5em;
}
.cooperation#houkoku section.initial div span {
  display: block;
}
.cooperation#houkoku section.org div {
  display: flex;
  border: 1px solid #CCC;
}
.cooperation#houkoku section.org div span {
  display: block;
  padding: 0.5em;
  flex: 0 0 50%;
  text-align: center;
}
.cooperation#houkoku table.initial {
  width: 580px;
  padding: 3px;
  border: 1px solid #CCC;
  border-collapse: separate;
}
.cooperation#houkoku table.initial td {
  margin: 1px;
  padding: 1px;
  border: 1px solid #CCC;
  text-align: center;
}
.cooperation#houkoku table.goods {
  width: 580px;
  padding: 3px;
  border: 1px solid #CCC;
}
.cooperation#shelter table.cost img {
  float: right;
}
.cooperation#kaijyou-bosyuu .target {
  font-size: 32px;
}
.cooperation#kaijyou-bosyuu #ex h3 {
  margin: 1em 0 0 0;
  padding: 1em 0 0 0;
}
.cooperation#kaijyou-bosyuu #ex p {
  margin: 0;
}
.cooperation#volubeit .course-menu {
  font-size: 0;
}
.cooperation#volubeit .course-menu img {
  display: inline-block;
}
.cooperation#volubeit .course-menu a {
  padding: 5px 0;
  width: 720px;
  display: block;
  text-align: center;
  background-color: #D5DCEF;
}
.cooperation#projects ul.projects {
  margin: 0;
  padding: 0;
}
.cooperation#projects ul.projects li {
  margin: 5px;
  padding: 10px 5px;
  float: left;
  width: 230px;
  height: 13em;
  list-style-type: none;
  border: 1px solid;
  text-align: center;
}
.cooperation#projects ul.projects p {
  margin: 5px;
  padding: 0;
  font-size: small;
}
.cooperation#projects ul.projects a {
  text-decoration: none;
}
.cooperation#cf-board #board section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
.cooperation#cf-board #board section:after {
  content: "";
  display: block;
  height: 0;
}
.cooperation#cf-board #board section:before {
  content: "";
  display: block;
  height: 0;
  order: 1;
}
.cooperation#cf-board #board section .adonor {
  box-sizing: border-box;
  margin-bottom: 20px;
  text-decoration: none;
  background-image: url(../cooperation/donate/cf/images/bg-paper1.png);
  background-size: cover;
}
.cooperation#cf-board #board section .adonor:hover, .cooperation#cf-board #board section .adonor:link, .cooperation#cf-board #board section .adonor:visited, .cooperation#cf-board #board section .adonor:active {
  color: rgb(51, 51, 51);
}
.cooperation#cf-board #board section .adonor .photo {
  margin: 0;
  box-sizing: border-box;
  border-radius: 10px 10px 0 0;
  font-size: 0;
  overflow: hidden;
  position: relative;
}
.cooperation#cf-board #board section .adonor .photo img {
  -webkit-tap-highlight-color: transparent;
}
.cooperation#cf-board #board section .adonor .photo .tap-hint {
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0.7;
  transition: opacity 1s ease;
  z-index: 10;
  background-color: #FFF;
  border-radius: 32px;
}
.cooperation#cf-board #board section .adonor .photo .tap-hint img {
  width: 48px !important;
  height: 48px !important;
  opacity: 0.7;
}
.cooperation#cf-board #board section .adonor .photo .tap-hint.hidden {
  opacity: 0;
}
.cooperation#cf-board #board section .adonor .info {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  margin: 0;
  padding: 1em;
  font-size: 16px;
  border-radius: 0 0 10px 10px;
  border: solid #888;
  border-width: 0 1px 1px 1px;
}
.cooperation#cf-board #board section .adonor .info .name {
  margin: 0;
  padding: 0;
  flex: 0 0 100%;
  border: none;
  white-space: nowrap;
  overflow: hidden;
  font-size: inherit;
}
.cooperation#cf-board #board section .adonor .info .title {
  margin: 0;
  padding: 0;
  height: 1.5em;
  flex: 0 0 100%;
  overflow: hidden;
  white-space: nowrap;
  font-size: inherit;
}
.cooperation#cf-board #board section .adonor .info .title a {
  font-size: inherit;
}
.cooperation#cf-board #board section .adonor .info .amount {
  margin: 0;
  padding: 0;
  flex: 0 0 100%;
  font-size: inherit;
}
.cooperation#cf-board #board section .adonor .info .scrolling-text {
  position: relative;
  overflow: hidden;
  height: 1.5em;
  font-size: inherit;
}
.cooperation#cf-board #board section .adonor .info .scrolling-text .scroll-content {
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
  animation: marquee-scroll linear infinite;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: inherit;
}
@keyframes marquee-scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-33.3%);
  }
}
.cooperation#cf-board #board section.ex-large:after {
  width: 380px;
  height: 0;
}
.cooperation#cf-board #board section.ex-large:before {
  width: 380px;
  height: 0;
}
.cooperation#cf-board #board section.ex-large .adonor {
  display: flex;
  flex-wrap: nowrap;
  flex: 0 0 760px;
}
.cooperation#cf-board #board section.ex-large .adonor .photo {
  flex: 0 0 380px;
  border-radius: 10px 0 0 10px;
}
.cooperation#cf-board #board section.ex-large .adonor .photo img {
  width: 380px;
  height: 285px;
  margin-top: 0;
}
.cooperation#cf-board #board section.ex-large .adonor .info {
  flex: 0 0 380px;
  height: 285px;
  font-size: 24px;
  border-radius: 0 10px 10px 0;
  border-width: 1px 1px 1px 0;
  align-content: center;
  background-image: url(../cooperation/donate/cf/images/ribbon1.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 64px 64px;
}
.cooperation#cf-board #board section.large:after {
  width: 370px;
  height: 0;
}
.cooperation#cf-board #board section.large:before {
  width: 370px;
  height: 0;
}
.cooperation#cf-board #board section.large .adonor {
  flex: 0 0 370px;
}
.cooperation#cf-board #board section.large .adonor .photo {
  width: 370px;
  height: 278px;
}
.cooperation#cf-board #board section.large .adonor .photo img {
  width: 370px;
  height: 278px;
}
.cooperation#cf-board #board section.large .adonor .info {
  width: 370px;
  height: 7em;
  font-size: 20px;
  background-image: url(../cooperation/donate/cf/images/ribbon2.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 48px 48px;
}
.cooperation#cf-board #board section.medium:after {
  width: 240px;
  height: 0;
}
.cooperation#cf-board #board section.medium:before {
  width: 240px;
  height: 0;
}
.cooperation#cf-board #board section.medium .adonor {
  width: 240px;
  flex: 0 0 240px;
}
.cooperation#cf-board #board section.medium .adonor .photo {
  width: 240px;
  height: 180px;
}
.cooperation#cf-board #board section.medium .adonor .photo img {
  width: 240px;
  height: 180px;
}
.cooperation#cf-board #board section.medium .adonor .info {
  width: 240px;
  height: auto;
  font-size: 18px;
  background-image: url(../cooperation/donate/cf/images/ribbon3.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 48px 48px;
}
.cooperation#cf-board #board section.small:after {
  width: 370px;
  height: 0;
}
.cooperation#cf-board #board section.small:before {
  width: 370px;
  height: 0;
}
.cooperation#cf-board #board section.small .adonor {
  display: flex;
  flex-wrap: nowrap;
  flex: 0 0 370px;
}
.cooperation#cf-board #board section.small .adonor .photo {
  flex: 0 0 200px;
  border-radius: 10px 0 0 10px;
}
.cooperation#cf-board #board section.small .adonor .photo img {
  width: 200px;
  height: 150px;
  margin-top: 0;
}
.cooperation#cf-board #board section.small .adonor .info {
  width: 170px;
  height: 150px;
  font-size: 18px;
  border-radius: 0 10px 10px 0;
  border-width: 1px 1px 1px 0;
  align-content: center;
}
.cooperation#cf-board #board section.ex-small:after {
  width: 180px;
  height: 0;
}
.cooperation#cf-board #board section.ex-small:before {
  width: 180px;
  height: 0;
}
.cooperation#cf-board #board section.ex-small .adonor {
  flex: 0 0 180px;
}
.cooperation#cf-board #board section.ex-small .adonor .photo {
  width: 180px;
  height: 135px;
}
.cooperation#cf-board #board section.ex-small .adonor .photo img {
  width: 180px;
  height: 135px;
}
.cooperation#cf-board #board section.ex-small .adonor .info {
  width: 180px;
  height: auto;
}
.cooperation#cf-sign h1 {
  font-family: "Yuji Syuku", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  line-height: 1.5rem;
}
.cooperation#cf-sign .callout {
  font-size: 0.8rem;
}
.cooperation#cf-sign .callout a {
  font-size: 0.8rem;
}
.cooperation#cf-sign .search-container {
  margin-bottom: 1em;
  color: #666;
}
.cooperation#cf-sign .search-container * {
  font-size: 0.8rem;
}
.cooperation#cf-sign #sign {
  display: grid;
  margin-bottom: 2em;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 10px;
}
.cooperation#cf-sign #sign .adonor {
  margin: 0;
  padding: 8px;
  border-radius: 2px;
  background-color: #f1deb6;
  background-image: url(../cooperation/donate/cf/images/sign-background.jpg);
  box-shadow: 2px 2px 2px #888;
}
.cooperation#cf-sign #sign .adonor .sign {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  font-family: "Yuji Syuku", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
}
.cooperation#cf-sign #sign .adonor .amount {
  display: block;
  font-family: "Yuji Syuku", serif;
  font-weight: 400;
  font-style: normal;
}
.cooperation#cf-sign #sign .adonor .scrolling-text {
  position: relative;
  overflow: hidden;
  height: 1.5em;
  font-size: inherit;
  font-family: "Yuji Syuku", serif;
  font-size: 1.2rem;
}
.cooperation#cf-sign #sign .adonor .scrolling-text .scroll-content {
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
  animation: marquee-scroll linear infinite;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: inherit;
  font-family: "Yuji Syuku", serif;
  font-size: 1.2rem;
}
@keyframes marquee-scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-33.3%);
  }
}
.cooperation#cf-sign #sign .adonor.highlight {
  background-image: url(../cooperation/donate/cf/images/sign-background-highlight.jpg);
}
.cooperation#cf-sign #sign .adonor.hidden {
  display: none;
}

.shelter #header {
  border-bottom: 1px solid #DDD;
}
.shelter .topic_path {
  margin-left: 20px;
}
.shelter#top * {
  font-size: 16px;
}
.shelter#top #image {
  width: 800px;
  height: 215px;
  background: url(../shelter/res/top-image.jpg);
}
.shelter#top #menu {
  margin: 20px 0;
  padding: 0;
  list-style-type: none;
}
.shelter#top #menu li {
  display: block;
  float: left;
  width: 180px;
  height: 215px;
  margin: 20px 20px;
  padding: 0 0 0 30px;
  background: url(../shelter/res/top-menu-bg.jpg) no-repeat;
}
.shelter#top #menu li h2 {
  margin: 0;
  padding: 0;
  color: #FF6600;
  font-size: 13px;
  border: 0;
}
.shelter#top #menu li p {
  margin: 0;
  padding: 0;
  font-size: 12px;
}
.shelter#top #menu li a {
  color: #000;
  text-decoration: none;
}
.shelter#top #menu li a:hover, .shelter#top #menu li a:active {
  color: red;
  text-decoration: underline;
}
.shelter#day h2 {
  clear: both;
  padding: 70px 0 0 15px;
  height: 60px;
  border: 0;
  font-size: 15px;
  background: url(../shelter/res/day-time-bg.png) no-repeat;
}
.shelter#day .photos {
  margin: 20px 0;
  padding: 0;
  list-style-type: none;
}
.shelter#day .photos li {
  display: block;
  float: left;
  width: 200px;
  height: 225px;
  margin: 10px 20px;
  padding: 0;
}
.shelter#day .photos li.large {
  height: 300px;
}
.shelter#day .photos li p {
  margin: 5px 0 0 0;
  padding: 0;
  font-size: 12px;
}
.shelter#day .photos li img {
  border: solid 3px;
  border-color: #DDD #888 #888 #DDD;
}
.shelter#day .photos:after {
  content: "";
  display: block;
  clear: both;
}
.shelter#day #bottom-menu {
  text-align: center;
}

.contents#cat-1st #menu h2 {
  margin-top: 0;
}
.contents#cat-1st #menu li {
  width: 300px;
  margin: 20px;
  list-style-type: none;
  float: left;
}
.contents#cat-1st #menu li p {
  font-size: small;
  height: 4em;
}
.contents#cat-1st h2 {
  border: 1px #2A6A2A solid;
  background-color: #AEECAF;
  font-size: x-large;
  color: #2A6A2A;
}
.contents#cat-1st table td.color1 {
  background-color: #80FF80;
}
.contents#cat-1st table td.color2 {
  background-color: #FFC4E1;
}
.contents#cat-1st table th {
  color: white;
  background-color: rgb(44, 44, 175);
}
.contents#cat-1st table#goods {
  border: 0;
}
.contents#cat-1st table#goods td {
  border: 1px dotted;
  border-width: 0 0 1px 0;
}
.contents#cat-1st .column {
  margin: 0;
  padding: 38px 0 0 16px;
  background: no-repeat url(../contents/cat-1st/res/column-bg.png);
  border: 0;
  /* float box hack */
  overflow: hidden;
}
.contents#cat-1st .column > div {
  border: 2px solid #E73862;
  padding: 1em;
}
.contents#cat-1st .column h3 {
  margin: 0 0 0 80px;
  font-size: large;
  color: #E73862;
}
.contents#cat-1st .column:after {
  content: "";
  display: block;
  clear: both;
  height: 1px;
  overflow: hidden;
}
.contents#cat-1st .photobox-right {
  float: right;
  width: 230px;
  margin: 10px;
  text-align: center;
  font-size: small;
}
.contents#cat-1st #katazuke:after {
  content: "";
  clear: both;
  display: block;
}

#policy address {
  text-align: right;
}
#policy #article {
  padding: 20px;
}
#policy #article #first {
  padding: 0 1em;
  border: 1px solid #888;
  font-weight: bold;
}

.vet #main {
  border-top: 0;
}
.vet h1 {
  background: #FFF;
  padding: 20px;
  border: solid #AAA;
  border-width: 0 0 1px 0;
}
.vet#top h2 {
  margin: 0 0 1em 0;
  padding: 5px;
  text-align: center;
  color: white;
  background-color: #F6902A;
  border: 2px solid #C66000;
  border-width: 2px 0 2px 0;
  font-size: 100%;
}
.vet#top #first {
  margin: 20px;
}
.vet#top #to-gairai {
  border: 2px solid green;
  margin: 0 0 10px 0;
  padding: 10px;
}
.vet h2 {
  margin: 1em 0 0 0;
  padding: 0;
  color: #009;
  border: solid #009;
  border-width: 0 0 1px 0;
}
.vet h3 {
  padding-top: 1em;
  border-top: 1px dashed #ddd;
}
.vet h3 span {
  display: block;
  color: rgb(51, 51, 51);
  font-weight: normal;
}
.vet table.price-list {
  padding: 3px;
  border: 1px solid #333;
  border-collapse: collapse;
}
.vet table.price-list th {
  border: 1px solid #333;
}
.vet table.price-list td {
  border: 1px solid #333;
}
.vet table.price-list td:last-child {
  text-align: right;
}
.vet table.price-list td.ope-option {
  border-top: 1px dashed #BBB;
  border-bottom: 1px dashed #BBB;
}
.vet #navigation {
  width: 280px;
  float: right;
  margin-bottom: 1em;
}
.vet #contents {
  width: 465px;
  float: right;
  margin-left: 15px;
  margin-bottom: 1em;
}
.vet .topic-path {
  margin: 0;
  padding: 5px 0 5px 0;
  font-size: small;
  border: dashed #AAA;
  border-width: 0 0 1px 0;
}
.vet .even-row {
  background: #E1ECFF;
}
.vet ul.linklist li {
  list-style-type: none;
  background: 0% 50% url(../vet/res/linklist_mark.png) no-repeat;
  margin-left: -20px;
  padding-left: 20px;
}
.vet ul.linklist-top li {
  list-style-type: none;
  background: 0% 0% url(../vet/res/linklist_mark.png) no-repeat;
  margin-left: -20px;
  padding-left: 20px;
}
.vet a img, .vet a:hover img, .vet a:active img {
  border: 0;
}
.vet img.right {
  float: right;
}
.vet em {
  color: #00BB00;
}
.vet .to-application {
  text-align: center;
  margin-bottom: 2em;
}
.vet .contact {
  border-radius: 12px;
  background-color: #EEE;
  margin: 3em 80px;
  padding: 1em 5em;
  vertical-align: middle;
}
.vet .form .animal fieldset {
  margin: 0 0 1em 0;
}
.vet .form .animal .kind, .vet .form .animal .sex {
  display: inline-block;
  width: 250px;
}
.vet .form .animal .age:before {
  content: "\a";
  white-space: pre;
}

.bbs#top .to-bbs {
  text-align: center;
}

.basic-dog-training .index {
  width: 720px;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}
.basic-dog-training .index li {
  float: left;
  text-align: center;
  width: 200px;
  background-color: #EEE;
  margin: 10px;
  _margin: 5px;
  padding: 10px;
}
.basic-dog-training .index a,
.basic-dog-training .index a:visited,
.basic-dog-training .index a:active {
  color: rgb(51, 51, 51);
}
.basic-dog-training img.overflow {
  margin-bottom: 20px;
  _margin-bottom: 0;
}
.basic-dog-training .navigation {
  text-align: center;
  clear: both;
  padding-top: 20px;
  border: solid #DDD;
  border-width: 1px 0 0 0;
}
.basic-dog-training .step {
  height: 250px;
}
.basic-dog-training .one-point-advice {
  margin: 10px;
  padding: 10px 20px;
  border: 5px dotted pink;
}

.shelter-new ol {
  border: 0;
  background-color: #FFF;
}
.shelter-new #header {
  border-bottom: 1px solid #DDD;
}
.shelter-new .topic_path {
  margin-left: 20px;
}
.shelter-new #main {
  border: 0;
}
.shelter-new #map {
  width: 760px;
  height: 560px;
  background: url(../shelter_new/res/map.png);
}
.shelter-new #map #body {
  width: 760px;
  height: 440px;
  float: left;
  position: relative;
}
.shelter-new #map #menu {
  width: 540px;
}
.shelter-new #map #menu .item {
  width: 135px;
  height: 30px;
  border: 0;
  _display: inline;
  float: left;
  _float: none;
  margin: 0;
  padding: 0;
}
.shelter-new #map #menu .item a img, .shelter-new #map #menu .item a:hover img, .shelter-new #map #menu .item a:active img {
  border: 0;
}
.shelter-new #map #display {
  width: 220px;
  height: 200px;
  float: right;
  position: relative;
  top: -150px;
}
.shelter-new #map #display #photo {
  margin: 30px 28px 5px 28px;
}
.shelter-new #map #display #text {
  font-size: small;
  margin: 0px 28px;
}
.shelter-new #map #submenu {
  width: 540px;
  height: 30px;
  float: left;
}
.shelter-new #map .star {
  display: none;
  position: absolute;
}
.shelter-new h1 {
  margin: 0;
  padding: 0;
}
.shelter-new#shelters #main {
  padding: 0;
  border: 0;
}
.shelter-new .page-item {
  float: left;
  margin: 30px 0 0 0;
  padding: 0;
  width: 380px;
  background: url(../shelter_new/res/photo-bg.jpg) no-repeat;
}
.shelter-new .page-item img {
  margin: 50px 0 10px 38px;
  padding: 0;
}
.shelter-new .page-item p {
  font-size: 12px;
  margin: 0;
  padding: 0 35px 50px 38px;
  background: url(../shelter_new/res/photo-bg.jpg) no-repeat 0% 100%;
}
.shelter-new #bottom-menu {
  clear: both;
  text-align: center;
  background-color: #EEE;
  border: 1px solid #888;
  margin: 1em 20px 0 20px;
}
.shelter-new#day #main {
  border-top: none;
}
.shelter-new#day .tasks {
  margin: 0;
  padding: 0;
}
.shelter-new#day .tasks ul.task-items {
  margin: 0;
  padding: 0;
  list-style-type: none;
  font-size: 0;
}
.shelter-new#day .tasks ul.task-items li {
  display: inline-block;
  vertical-align: top;
  width: 240px;
  margin: 0 20px 20px 0;
  padding: 0 0 0 0;
}
.shelter-new#day .tasks ul.task-items li:nth-child(3n) {
  margin-right: 0;
}
.shelter-new#day .tasks ul.task-items li h3 {
  font-size: 16px;
  margin: 0;
}
.shelter-new#day .tasks ul.task-items li p {
  font-size: 14px;
  margin: 0;
}
.shelter-new#day .flow table {
  float: left;
  width: 500px;
}
.shelter-new#day .flow img {
  float: right;
}
.shelter-new#day .flow p {
  clear: both;
  margin: 1em 0;
}
.shelter-new#animals #main {
  border-top: none;
}
.shelter-new#animals #main h2 {
  border: 0;
  margin: 1em 0;
  padding: 0;
}
.shelter-new#animals #main .animals ul {
  margin: 0;
  list-style-type: none;
}
.shelter-new#animals #main .animals ul li {
  width: 370px;
  display: inline-block;
  margin: 0 0 0.5em 0;
  padding: 0;
  border: 1px solid #DDD;
  border-radius: 10px;
}
.shelter-new#animals #main .animals ul li:nth-child(even) {
  margin-left: 10px;
}
.shelter-new#animals #main .animals ul li a {
  display: block;
}
.shelter-new#animals #main .animals ul li a:link, .shelter-new#animals #main .animals ul li a:hover, .shelter-new#animals #main .animals ul li a:active, .shelter-new#animals #main .animals ul li a:visited {
  color: rgb(51, 51, 51);
}
.shelter-new#animals #main .animals ul li img {
  margin: 0;
  padding: 0;
  width: 40%;
  vertical-align: bottom;
  float: left;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.shelter-new#animals #main .animals ul li p {
  color: rgb(51, 51, 51);
  width: 50%;
  margin: 0 0 0 0.5em;
  float: left;
  font-size: 2em;
}
.shelter-new#animals #main .animal p {
  width: 100%;
  margin: 1em 0;
  padding: 0;
  display: inline-block;
}
.shelter-new#animals #main .animal p.text img {
  width: 200px;
}
.shelter-new#animals #main .animal p.left img {
  float: left;
  margin-right: 1em;
}
.shelter-new#animals #main .animal p.right img {
  float: right;
  margin-left: 1em;
}
.shelter-new#animals #main .animal p.skill {
  height: 64px;
  background: url(http://www.lifeboat.or.jp/shelter/images/animals-skill.png) no-repeat;
  background-size: contain;
  display: flex;
  align-items: center;
}
.shelter-new#animals #main .animal p.skill span {
  display: block;
  margin-left: 80px;
  position: absolute;
  font-size: 25px;
}

.future-2024 .topic_path {
  margin: 10px 20px;
  font-size: small;
}
.future-2024 #contents {
  padding: 0 20px;
}
.future-2024 #contents p {
  font-size: larger;
  line-height: 2em;
  margin: 1.5em 0;
}
.future-2024 #contents p.comment {
  font-size: small;
  line-height: 1.5em;
}
.future-2024 #contents p.continue {
  text-align: right;
}
.future-2024 #contents ul.pagemenu {
  margin: 20px;
  font-size: small;
  list-style-type: none;
}
.future-2024 #contents ul.pagemenu li {
  display: inline;
  margin-right: 2em;
}
.future-2024 #contents hr {
  height: 0px;
  border: 0;
  border-top: 1px dashed #888;
}

.staff .note {
  font-size: 16px;
  font-weight: normal;
  color: green;
}
.staff .contact {
  border-radius: 10px;
  margin: 0 50px;
  padding: 50px;
  background-color: #DDD;
}
.staff .contact div a {
  font-size: 24px;
  text-decoration: none;
  color: #009A2F;
}
.staff .to-application {
  text-align: center;
}

.recruit table.status {
  border-collapse: collapse;
}
.recruit table.status th {
  color: #FFFFFF;
  background-color: #4E7097;
}
.recruit table.status th {
  border: 1px solid #FFFFFF;
  border-color: #4E7097 #4E7097 #FFF #4E7097;
}
.recruit table.status td {
  border: 1px solid #4E7097;
}
.recruit .to-application {
  text-align: center;
}
.recruit .midcareer-flow {
  width: 570px;
  height: 136px;
  background: url(../images/staff-midcareer-flow.png);
}
.recruit .newgrad-flow {
  width: 720px;
  height: 136px;
  background: url(../images/staff-newgrad-flow.png);
}
.recruit .to-day-staff {
  text-align: center;
  margin-top: 2em;
}
.recruit .to-day-staff img {
  width: 30%;
}
.recruit#siiku img.insert {
  float: right;
  width: 40%;
}
.recruit#jimu #steps {
  display: flex;
  flex-wrap: wrap;
}
.recruit#jimu #steps img {
  width: 100%;
}
.recruit#jimu #steps .step {
  flex: 1 0 25%;
  padding: 0 2%;
  border: 1px solid #888;
  border-radius: 1em;
}
.recruit#jimu #steps .step:first-child, .recruit#jimu #steps .step:last-child {
  flex-basis: 95%;
}
.recruit#open-position .history td:first-child {
  white-space: nowrap;
}

.recruit2 table.status {
  border-collapse: collapse;
  margin-bottom: 2em;
}
.recruit2 table.status th {
  padding: 1em;
  vertical-align: top;
  color: #FFFFFF;
  background-color: #4E7097;
}
.recruit2 table.status th {
  border: 1px solid #4E7097;
}
.recruit2 table.status td {
  padding: 1em;
  vertical-align: top;
  border: 1px solid #4E7097;
}
.recruit2 h2 {
  margin-bottom: 2em;
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
  border-width: 0 0 1px 0;
  padding: 0;
}
.recruit2 h3 {
  color: #B68118;
}
.recruit2 section:after {
  content: none;
}
.recruit2 .index ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.recruit2 .index ul li {
  flex: 0 0 20%;
  list-style-type: none;
}
.recruit2 .index ul li a::before {
  content: "";
  display: inline-flex;
  position: relative;
  transform: translateY(0%);
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-top: 0.6em solid rgb(51, 51, 51);
  border-right: 0.4em solid transparent;
  border-left: 0.4em solid transparent;
}
.recruit2 .index ul li:last-child {
  flex: 0 0 80%;
  text-align: center;
  margin-top: 2em;
}
.recruit2 .index ul li:last-child a::before {
  border: none;
}
.recruit2 .work-images {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
.recruit2 .work-images h2 {
  flex: 1 0 100%;
}
.recruit2 .work-images h3 {
  margin: 0;
}
.recruit2 .work-images div {
  margin: 0 1% 1em 1%;
  flex: 0 0 31%;
}
.recruit2 .work-images div img {
  width: 100%;
  vertical-align: bottom;
}
.recruit2 .work-images div p {
  margin: 0;
}
.recruit2 .staff-images {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 4em;
}
.recruit2 .staff-images h2 {
  flex: 1 0 100%;
}
.recruit2 .staff-images div {
  display: flex;
  margin-top: 2em;
  flex: 0 0 45%;
  height: fit-content;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
}
.recruit2 .staff-images div h3 {
  flex: 0 0 100%;
  margin: 0 0 1em 0;
  font-size: 100%;
  text-align: center;
}
.recruit2 .staff-images div img {
  flex: 0 0 45%;
  width: 45%;
  height: auto;
  vertical-align: bottom;
  margin: 0.5em 0;
  order: 3;
}
.recruit2 .staff-images div p {
  flex: 0 0 45%;
  margin: 1em 0;
  font-size: 90%;
  order: 2;
}
.recruit2 .staff-images div:nth-child(odd) img {
  order: 3;
}
.recruit2 .staff-images div:nth-child(odd) p {
  order: 2;
}
.recruit2 .details {
  width: 100%;
}
.recruit2 .details h2 {
  flex: 1 0 100%;
}
.recruit2 .details h3 {
  margin: 1em 0;
}
.recruit2 .details .to-application {
  text-align: center;
}
.recruit2 .details .to-application p {
  margin: 1em 0;
}
.recruit2 .details .to-application img {
  width: 30%;
}
.recruit2#siiku img.insert {
  float: right;
  width: 40%;
}

#contact .menkai-flow {
  text-align: center;
  width: 760px;
  height: 16px;
  margin-bottom: 3em;
  padding-top: 200px;
  background: url(../images/menkai-flow-wide.png) no-repeat;
}

.contact#qa ul.qa-list li {
  list-style-type: none;
}
.contact#qa ul.qa-list li .q {
  margin-bottom: 0.5em;
}
.contact#qa ul.qa-list li .q span {
  color: #F45360;
  font-size: 18px;
  font-weight: bold;
  padding-right: 0.5em;
}
.contact#qa ul.qa-list li .a {
  margin-left: 1.5em;
  margin-top: 0.5em;
}
.contact#qa ul.qa-list li .a span {
  color: #00BDFE;
  font-size: 18px;
  font-weight: bold;
  padding-right: 0.5em;
}
.contact .menkai-flow {
  text-align: center;
  width: 760px;
  height: 16px;
  margin-bottom: 1em;
  padding-top: 200px;
  background: url(../images/menkai-flow-wide.png) no-repeat;
}

/* Landing page */
.entrance h1 {
  color: rgb(51, 51, 51);
  background-image: none;
  margin: 1em 0 0.5em 0;
  padding: 0;
}
.entrance #animals img {
  vertical-align: bottom;
}
.entrance #animals-left {
  width: 380px;
  float: left;
}
.entrance #animals-right {
  width: 380px;
  float: right;
}
.entrance #point-left {
  width: 370px;
  margin-right: 10px;
  float: left;
}
.entrance #point-left h2 {
  border: none;
  color: #E55;
  background-color: #FDD;
  border-radius: 10px;
  padding: 0.5em;
}
.entrance #point-right {
  width: 370px;
  margin-left: 10px;
  float: right;
}
.entrance #point-right h2 {
  border: none;
  color: #090;
  background-color: #DFD;
  border-radius: 10px;
  padding: 0.5em;
}
.entrance #satooya {
  line-height: 0;
}
.entrance #to-index {
  margin: 2em 0;
}
.entrance #to-index p {
  text-align: center;
}
.entrance #to-index #button {
  border: 2px solid #E57611;
  color: #FFCC66;
  background-color: #FFD583;
  font-size: x-large;
  text-align: center;
  margin: 1em auto;
  padding: 0.5em;
  width: 12em;
}

/* for clipmail cgi */
#clipmail {
  width: 600px;
  background-color: #FFF;
}
#clipmail h1 {
  margin: 1em 0 1em 0;
  padding: 0;
  background: none;
  border-bottom: 2px #00A solid;
}
#clipmail table.form {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  border: 1px solid #555 collapse;
}
#clipmail table.form th {
  background-color: #BAD4FD;
}
#clipmail .buttons {
  margin: 0;
  padding: 1em 0;
  border-bottom: 1px dotted #DDD;
}
#clipmail .buttons input {
  display: block;
  margin: 0 auto;
  padding: 0.5em 1em;
  font-size: 16px;
}
#clipmail .buttons .button {
  margin: 1em 0 0 0;
  text-align: center;
}
#clipmail .copyright {
  font-size: 16px;
  text-align: center;
}

#baby-cats #container #main h1 {
  background: none;
  margin: 0;
  padding: 0.5em 0 0.5em 0.5em;
}
#baby-cats #container #main ol.index {
  height: 260px;
  margin: 0;
  padding: 3em 0 3em 0;
}
#baby-cats #container #main ol.index li {
  margin: 5px;
  padding: 0;
  width: 240px;
  height: 80px;
  float: left;
  color: #4B1700;
  list-style-type: none;
}
#baby-cats #container #main ol.index li a {
  display: table-cell;
  vertical-align: middle;
  width: 240px;
  height: 80px;
  margin: 0;
  padding: 0 1em;
  text-decoration: none;
  font-size: 16px;
  color: rgb(51, 51, 51);
  background-color: #FFF;
  border-radius: 5em;
  border: 1px solid #AAA;
  box-shadow: 1px 1px 2px #444;
}
#baby-cats #container #main ol.index li a:hover, #baby-cats #container #main ol.index li a:active {
  background-color: #FFECCE;
}
#baby-cats #container #main ol.index li:nth-child(1) a:before {
  content: "0. ";
}
#baby-cats #container #main ol.index li:nth-child(2) a:before {
  content: "1. ";
}
#baby-cats #container #main ol.index li:nth-child(3) a:before {
  content: "2. ";
}
#baby-cats #container #main ol.index li:nth-child(4) a:before {
  content: "3. ";
}
#baby-cats #container #main ol.index li:nth-child(5) a:before {
  content: "4. ";
}
#baby-cats #container #main ol.index li:nth-child(6) a:before {
  content: "5. ";
}
#baby-cats #container #main ol.index li:nth-child(7) a:before {
  content: "6. ";
}
#baby-cats #container #main ol.index li:nth-child(8) a:before {
  content: "7. ";
}
#baby-cats #container #main ol.index li:nth-child(9) a:before {
  content: "8. ";
}
#baby-cats #container #main ol.index li.current-page {
  font-weight: bold;
  color: #FFF;
}
#baby-cats #container #main ol.index li.current-page a {
  color: #FFF;
  background-color: #E76800;
}
#baby-cats #container #main article section h1 {
  background-color: #DDDDE6;
  background: url(../images/h1_bg.png) no-repeat;
  background-position: left;
}
#baby-cats #container #main article section img {
  width: 80%;
}
#baby-cats #container #main article section.column {
  width: 90%;
  margin: 1em 2%;
  padding: 0 2% 0.5em 2%;
  border-radius: 0.5em;
  border: 1px solid #0589AE;
}
#baby-cats #container #main ul.topic-path {
  margin-left: 0;
  list-style-type: none;
}
#baby-cats #container #main ul.topic-path li {
  float: left;
  margin-left: 0.5em;
}
#baby-cats #container #main ul.topic-path li:before {
  content: " > ";
}
#baby-cats #container #main ul.topic-path li:nth-child(1):before {
  content: "";
}
#baby-cats #container #main ul.checklist li {
  font-size: 20px;
  background: url(../images/checkmark.png) no-repeat;
  background-size: contain;
  margin-left: 0.5em;
  padding-left: 2em;
}

#cats-with-disabilities * {
  box-sizing: border-box;
}
#cats-with-disabilities img {
  width: 100%;
  clear: both;
}
#cats-with-disabilities #container #main {
  width: 100%;
  margin: 0;
  padding: 0 0 1rem 0;
  background-color: #DDD;
}
#cats-with-disabilities #container #main h1 {
  margin: 0;
  padding: 0;
}
#cats-with-disabilities #container #main article {
  width: 100%;
  margin: 0;
  padding: 0 2%;
}
#cats-with-disabilities #container #main article section {
  width: 100%;
  margin: 1rem 0;
  padding: 0 0 1rem 0;
  border-radius: 0.5rem;
  background-color: #FFF;
}
#cats-with-disabilities #container #main article section h2 {
  margin: 0;
  padding: 1rem;
  border: none;
  color: #FFF;
  background-color: #708F62;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
#cats-with-disabilities #container #main article section p {
  margin: 0;
  padding: 1rem;
  font-size: 20px;
}
#cats-with-disabilities #container #main article section img {
  width: 100%;
  padding: 1rem 1rem 0 1rem;
}
#cats-with-disabilities #container #main article section ul {
  padding: 0 1rem;
}
#cats-with-disabilities #container #main article section ul li {
  font-size: 20px;
}
#cats-with-disabilities #container #main article section q {
  font-size: 20px;
}
#cats-with-disabilities #container #main article section q:before {
  content: "“";
}
#cats-with-disabilities #container #main article section q:after {
  content: "”";
}
#cats-with-disabilities #container #main article section#prologue {
  padding: 1rem 0;
  font-size: 20px;
}
#cats-with-disabilities #container #main article section#prologue h2 {
  margin: 0 1rem;
  padding: 0.5rem;
  color: rgb(51, 51, 51);
  font-weight: bold;
  border-radius: 0;
  background-color: #DDD;
}
#cats-with-disabilities #container #main article section#prologue li {
  font-size: 20px;
}
#cats-with-disabilities #container #main article section#prologue p {
  margin: 0;
  padding: 1rem;
  font-size: 20px;
}
#cats-with-disabilities #container #main article section#prologue p a {
  font-size: 20px;
}
#cats-with-disabilities #container #main article section.cats p.note {
  font-size: 14px;
  color: rgb(51, 51, 51);
  padding-bottom: 0;
}
#cats-with-disabilities #container #main article section.cats ul {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}
#cats-with-disabilities #container #main article section.cats ul li {
  flex: 0 1 45%;
  margin: 1rem 1rem;
  list-style-type: none;
  background-color: #FFEDDE;
}
#cats-with-disabilities #container #main article section.cats ul li a {
  display: flex;
  margin: 0;
  padding: 0;
}
#cats-with-disabilities #container #main article section.cats ul li a:visited, #cats-with-disabilities #container #main article section.cats ul li a:link {
  text-decoration: none;
  color: #E76800;
}
#cats-with-disabilities #container #main article section.cats ul li a div {
  flex-basis: 40%;
  font-size: 0;
}
#cats-with-disabilities #container #main article section.cats ul li a p {
  margin: 0;
  padding: 0 0 0 1rem;
  flex-basis: 67%;
  flex-shrink: 1;
  font-size: 2em;
}
#cats-with-disabilities #container #main article section.cats ul li a p.male {
  background: url(../images/cats-with-disabilities-male.png) no-repeat;
  background-size: auto 70%;
  background-position: right 0.5em bottom 0.5em;
}
#cats-with-disabilities #container #main article section.cats ul li a p.female {
  background: url(../images/cats-with-disabilities-female.png) no-repeat;
  background-size: auto 70%;
  background-position: right 0.5em bottom 0.5em;
}
#cats-with-disabilities #container #main article section.cats ul li a img {
  padding: 0;
}
#cats-with-disabilities #container #main article section.back {
  text-align: center;
  padding-top: 1em;
}
#cats-with-disabilities #container #main article section.paging {
  display: flex;
  flex-wrap: wrap;
  border-radius: 0.5rem;
  padding: 1rem;
}
#cats-with-disabilities #container #main article section.paging a {
  display: block;
  flex-basis: 40%;
  margin: 0 auto;
  padding: 0.5rem;
  width: 70%;
  background-color: #9EBD90;
  text-align: center;
}
#cats-with-disabilities #container #main article section.paging a:visited, #cats-with-disabilities #container #main article section.paging a:link {
  text-decoration: none;
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
}
#cats-with-disabilities #container #main article section.paging a:last-child {
  flex-basis: 60%;
  margin-top: 1em;
  background: none;
  color: blue;
  font-weight: normal;
  text-decoration: underline;
}
#cats-with-disabilities #container #main article section.column {
  width: 90%;
  margin: 1rem 2%;
  padding: 0 2% 0.5rem 2%;
  border-radius: 0.5rem;
  border: 1px solid #0589AE;
}
#cats-with-disabilities #container #main article.cat #prologue {
  display: flex;
  flex-wrap: wrap;
}
#cats-with-disabilities #container #main article.cat #prologue h2 {
  flex-basis: 100%;
  background-color: #FFE0FA;
}
#cats-with-disabilities #container #main article.cat #prologue div {
  flex-basis: 60%;
}
#cats-with-disabilities #container #main article.cat h3 {
  margin: 1em 1rem 0 1rem;
  font-size: 18px;
  font-weight: normal;
  color: rgb(51, 51, 51);
  text-decoration: underline;
}
#cats-with-disabilities #container #main article.cat .before {
  font-size: 0.75em;
  text-align: center;
  color: #888;
}
#cats-with-disabilities #container #main article.cat .before:after {
  content: "\a※ライフボートにいたときの写真です";
}
#cats-with-disabilities #container #main article.cat .survey section {
  display: flex;
  flex-wrap: wrap;
}
#cats-with-disabilities #container #main article.cat .survey section h3 {
  flex-basis: 100%;
  background-color: #FFE0FA;
  text-decoration: none;
  padding: 0.5em 1rem;
}
#cats-with-disabilities #container #main article.cat .survey section h3.q1:before {
  content: "Q1.引取を決めたポイント";
}
#cats-with-disabilities #container #main article.cat .survey section h3.q2:before {
  content: "Q2.この子と暮らしててよかった！";
}
#cats-with-disabilities #container #main article.cat .survey section h3.q3:before {
  content: "Q3.これだけは手を焼いているんだよな";
}
#cats-with-disabilities #container #main article.cat .survey section h3.q4:before {
  content: "Q4.工夫をしていること";
}
#cats-with-disabilities #container #main article.cat .survey section h3.q5:before {
  content: "Q5.一緒に暮らし始める前と後で印象が変わったところ";
}
#cats-with-disabilities #container #main article.cat .survey section h3.q6:before {
  content: "Q6.自由にご記入ください";
}
#cats-with-disabilities #container #main article.cat .survey section p {
  flex-basis: 60%;
}
#cats-with-disabilities #container #main article.cat .survey section img {
  flex-basis: 40%;
  max-width: 40%;
}
#cats-with-disabilities #container #main ul.topic-path {
  margin: 0;
  padding: 0;
  color: #FFF;
  background: #06480F;
}
#cats-with-disabilities #container #main ul.topic-path li {
  margin: 0;
  padding: 1rem 1rem 1rem 2rem;
  list-style-type: none;
  float: left;
  background: 0% 0% url(../images/cats-with-disabilities-topicpath.png) no-repeat #06480F;
  background-size: contain;
}
#cats-with-disabilities #container #main ul.topic-path li:before {
  content: "";
}
#cats-with-disabilities #container #main ul.topic-path li:first-child {
  background-image: none;
  padding: 1rem;
}
#cats-with-disabilities #container #main ul.topic-path li a {
  display: block;
  text-decoration: none;
}
#cats-with-disabilities #container #main ul.topic-path li a:visited, #cats-with-disabilities #container #main ul.topic-path li a:hover, #cats-with-disabilities #container #main ul.topic-path li a:link {
  color: #FFF;
}
#cats-with-disabilities #container #main ul.disabilities {
  padding: 0;
}
#cats-with-disabilities #container #main ul.disabilities li {
  margin: 1rem 0;
  list-style-type: none;
}
#cats-with-disabilities #container #main ul.disabilities li a {
  font-size: 0;
  display: block;
  background-color: #9EBD90;
  margin: 0;
  padding: 0;
}
#cats-with-disabilities #container #main ul.disabilities li a:visited, #cats-with-disabilities #container #main ul.disabilities li a:link {
  text-decoration: none;
  color: rgb(51, 51, 51);
}
#cats-with-disabilities #container #main ul.disabilities li a img {
  width: 50%;
  padding: 0;
}

#credit-card #input-form-area input#autozip {
  cursor: pointer;
}
#credit-card #confirm-form-area table tr:first-child {
  color: #FFF;
  background-color: rgb(44, 44, 175);
}
#credit-card #confirm-form-area #do-edit {
  text-align: center;
  cursor: pointer;
}
#credit-card #amount {
  display: flex;
  flex-wrap: wrap;
}
#credit-card #amount label {
  flex: 1 2 30%;
  margin: 0.5em 1em 0.5em 0;
  padding: 0.5em 0.5em;
  color: #634433;
  background-color: #FFF6EA;
}
#credit-card #amount label:nth-child(odd) {
  margin-right: 0;
}
#credit-card #amount label span {
  font-size: 18px;
  font-weight: bold;
}
#credit-card .submit-button {
  margin: 1em;
  padding: 0.5em;
  font-size: 20px;
  text-align: center;
  color: #FFF;
  background-color: #E38620;
  cursor: pointer;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}

.sp-only {
  display: none;
}

#pageTop {
  display: none;
  position: fixed;
  width: 50px;
  height: 50px;
  bottom: 60px;
  right: 20px;
  z-index: 999;
  background: url("../images/btn-pagetop.png") no-repeat;
  background-size: cover;
}
#pageTop a {
  display: block;
  width: 100%;
  height: 100%;
}

.about #container #main {
  margin-bottom: 5em;
}
.about #container #main h1 {
  background: none;
}
.about #container #main h1 img {
  width: 100%;
}
.about #container #main h2 {
  margin-bottom: 2em;
  padding: 0;
  border: 0;
  text-align: center;
  font-size: 28px;
}
.about #container #main h3 {
  margin: 2em;
  font-size: 120%;
  text-align: center;
  color: #B68118;
}
.about #container #main section:after {
  content: none;
}
.about #container #main section p img {
  width: 70%;
}
.about #container #main section.donation {
  text-align: center;
}
.about #container #main section.donation a {
  display: block;
  width: 80%;
  margin: 3em auto;
  padding: 0.8em 0;
  color: #FFF;
  background-color: rgb(255, 70, 63);
  border-radius: 0.4em;
  text-decoration: none;
  font-weight: bold;
  font-size: 18px;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.about #container #main .index ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.about #container #main .index ul li {
  flex: 0 0 70%;
  padding: 0 0 2em 0;
  text-align: center;
  list-style-type: none;
}

#subMenu {
  display: none;
  position: fixed;
  width: 3.5rem;
  height: 7.5rem;
  bottom: 2rem;
  right: 1rem;
  z-index: 100;
}
#subMenu #topBtn {
  display: block;
  position: fixed;
  width: 3.5rem;
  height: 3.5rem;
  bottom: 6rem;
  background: url("../images/btn-pagetop.png") no-repeat;
  background-size: cover;
  z-index: 200;
}
#subMenu #topBtn a {
  display: block;
  width: 100%;
  height: 100%;
}
#subMenu #menuBtn {
  display: block;
  position: fixed;
  width: 3.5rem;
  height: 3.5rem;
  bottom: 2rem;
  background: url("../images/btn-pagemenu.png") no-repeat;
  background-size: cover;
  z-index: 200;
}
#subMenu #menuBtn.open {
  background: url("../images/btn-pagemenu-close.png") no-repeat;
  background-size: cover;
}
#subMenu #list {
  display: none;
  position: fixed;
  width: 300px;
  height: auto;
  bottom: 6rem;
  right: 0.5rem;
  list-style-type: none;
  margin: 0;
  padding: 0;
  background-color: #754C24;
  z-index: 300;
}
#subMenu #list li {
  padding: 0;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
}
#subMenu #list li a {
  display: block;
  padding: 1rem;
  text-decoration: none;
}
#subMenu #list li a:link, #subMenu #list li a:hover, #subMenu #list li a:visited {
  color: #FFFFFF;
}
#subMenu #list li a:before {
  content: "";
  display: inline-flex;
  position: relative;
  transform: translateY(-35%);
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid #FFFFFF;
}
#subMenu #list li a.anchor:before {
  content: "";
  display: inline-flex;
  position: relative;
  transform: translateY(0%);
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-top: 0.6em solid #FFFFFF;
  border-right: 0.4em solid transparent;
  border-left: 0.4em solid transparent;
}

#dogs-cunning .dogs {
  margin: 1em 0;
}
#dogs-cunning .dogs .adog {
  display: flex;
  height: 18.75vw;
  margin-bottom: 1em;
  border: 1px solid #DDD;
}
#dogs-cunning .dogs .adog .photo {
  flex: 0 1 25vw;
}
#dogs-cunning .dogs .adog .photo img {
  width: 25vw;
  height: 18.75vw;
}
#dogs-cunning .dogs .adog .info {
  flex: 1 0 50%;
  border: none;
  font-size: 20px;
}

#cats-cunning #cats {
  margin: 1em 0;
}
#cats-cunning #cats li.acat {
  width: 100%;
  margin-top: 0.5em;
  display: flex;
  flex-wrap: wrap;
}
#cats-cunning #cats li.acat img {
  width: 30%;
  height: 30%;
  flex: 0 0 30%;
}
#cats-cunning #cats li.acat div {
  flex: 0 0 65%;
  padding-left: 2%;
}

.cooperation2 p {
  margin: 1em 0;
}
.cooperation2 #main {
  width: 100%;
  padding: 1em 0 0 0;
}
.cooperation2 #main h1 {
  margin: 1em 5%;
}
.cooperation2 #main img {
  width: 100%;
}
.cooperation2 #main img.insert {
  vertical-align: bottom;
}
.cooperation2 #main section.aid-buttons {
  border: none !important;
  padding: 0 !important;
  text-align: center;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.cooperation2 #main section.aid-buttons:after {
  content: none;
}
.cooperation2 #main section.aid-buttons a {
  display: block;
  flex: 0 0 22%;
  margin: 0.6em 0;
  padding: 0.6em 0;
  text-decoration: none;
  color: #FFF;
  font-size: 16px;
  font-weight: bold;
  border-radius: 0.4rem;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.cooperation2 #main section.aid-buttons a.donate {
  border: 2px solid rgb(255, 70, 63);
  background-color: rgb(255, 70, 63);
}
.cooperation2 #main section.aid-buttons a.donate:before {
  content: "お金を寄付する";
}
.cooperation2 #main section.aid-buttons a.mono {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons a.mono:before {
  content: "物を寄付する";
}
.cooperation2 #main section.aid-buttons a.point {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons a.point:before {
  content: "ポイントで寄付する";
}
.cooperation2 #main section.aid-buttons a.others {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons a.others:before {
  content: "行動で支援する";
}
.cooperation2 #main section.aid-buttons-mini {
  border: none !important;
  margin: 0.2em !important;
  padding: 0 !important;
  text-align: center;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.cooperation2 #main section.aid-buttons-mini:after {
  content: none;
}
.cooperation2 #main section.aid-buttons-mini a {
  display: block;
  flex: 0 0 22%;
  margin: 0.6em 0;
  padding: 0.6em 0;
  text-decoration: none;
  color: #FFF;
  font-size: 16px;
  font-weight: bold;
  border-radius: 0.4rem;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}
.cooperation2 #main section.aid-buttons-mini a.donate {
  border: 2px solid rgb(255, 70, 63);
  background-color: rgb(255, 70, 63);
}
.cooperation2 #main section.aid-buttons-mini a.donate:before {
  content: "寄付金";
}
.cooperation2 #main section.aid-buttons-mini a.mono {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons-mini a.mono:before {
  content: "物を寄付";
}
.cooperation2 #main section.aid-buttons-mini a.point {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons-mini a.point:before {
  content: "ポイント寄付";
}
.cooperation2 #main section.aid-buttons-mini a.others {
  color: rgb(44, 44, 175);
  border: 1px solid rgb(44, 44, 175);
}
.cooperation2 #main section.aid-buttons-mini a.others:before {
  content: "行動で支援";
}
.cooperation2 #main section .social-icons {
  width: 50%;
  margin: 4em auto 1em auto;
  display: flex;
  justify-content: space-between;
}
.cooperation2 #main section .social-icons a {
  display: block;
  flex: 0 0 18%;
}
.cooperation2 #main p.report {
  text-align: center;
  margin: 2em 0;
}
.cooperation2 #main #tabui {
  margin: 2em 5% 5em 5%;
}
.cooperation2 #main #tabui .tab-control {
  margin: 0 0 2em 0;
  display: flex;
  justify-content: space-between;
  list-style-type: none;
  border-bottom: 2px solid rgb(255, 172, 63);
  z-index: 0;
}
.cooperation2 #main #tabui .tab-control li {
  margin: 0 0 -2px 0;
  padding: 0.5em 0;
  flex: 0 0 24%;
  text-align: center;
  border: 1px solid #858585;
  border-bottom: 2px solid rgb(255, 172, 63);
  border-radius: 0.3rem 0.3rem 0 0;
  background-color: #DDD;
  z-index: 10;
}
.cooperation2 #main #tabui .tab-control li.selected {
  font-weight: bold;
  border: 2px solid rgb(255, 172, 63);
  border-bottom: #FFF;
  background-color: #FFF;
}
.cooperation2 #main #tabui .tab-sheet {
  display: none;
}
.cooperation2 #main #tabui .tab-sheet.selected {
  display: block;
}
.cooperation2 #main #tabui .tab-sheet > section {
  margin: 5% 0;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2 #main #tabui .tab-sheet > section h2 {
  margin: 1em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2 #main #tabui .tab-sheet > section p {
  margin: 2em 1em;
}
.cooperation2 #main #tabui .tab-sheet > section p.link {
  text-align: center;
  margin: 3em 0 2em;
}
.cooperation2 #main #tabui .tab-sheet > section#bank-list h2 {
  border-bottom: 0;
}
.cooperation2 #main #tabui .tab-sheet > section#bank-list table {
  margin: 1em 0;
  width: 100%;
}
.cooperation2 #main #tabui .tab-sheet > section#bank-list table thead {
  background-color: #DDD;
}
.cooperation2 #main #tabui .tab-sheet > section#bank-list table tbody th {
  width: 30%;
}
.cooperation2 #main #tabui .tab-sheet > section#bank-list table tbody td.number {
  font-size: 20px;
  text-align: left;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list h2 {
  border-bottom: 0;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table {
  margin: 1em 0;
  width: 100%;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table thead {
  background-color: #DDD;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody th {
  width: 30%;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address {
  text-align: left;
  word-break: break-all;
  display: flex;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:first-child {
  flex: 1 0 80%;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:last-child {
  flex: 0 1 20%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:last-child img {
  width: 1em;
  height: auto;
  opacity: 0.7;
}
.cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:last-child img:hover {
  opacity: 1;
}
.cooperation2 #main #tabui .tab-sheet > section#project h3 {
  margin: 2em 0 2em 1em;
  color: rgb(51, 51, 51);
}
.cooperation2 #main #tabui .tab-sheet > section#project ul {
  margin: 1em 1em 1em 2em;
}
.cooperation2 #main #tabui .tab-sheet#others img {
  width: 50%;
}
.cooperation2 #main .banking table {
  margin: 1em 0;
  width: 100%;
}
.cooperation2 #main .banking table thead {
  background-color: #DDD;
}
.cooperation2 #main .banking table tbody th {
  width: 30%;
}
.cooperation2 #main .banking table tbody td.number {
  font-size: 20px;
  text-align: left;
}
.cooperation2 #main .banking table th {
  padding-left: 1em;
}
.cooperation2 #main .usage-list {
  margin: 2em 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2 #main .usage-list p {
  margin: 0;
  display: flex;
  align-items: center;
}
.cooperation2 #main .usage-list p img {
  flex: 0 0 15%;
  width: 100px;
  margin-right: 3em;
}
.cooperation2 #main .mini-menu {
  margin: 1.5em 5% 0.5em 5%;
  text-align: right;
}
.cooperation2 #main .mini-menu a {
  padding: 0.2em 0;
}
.cooperation2 #main .mini-menu a.cancel {
  padding: 0.2em 0.5em;
  color: rgb(159, 63, 76);
  background-color: rgb(255, 204, 204);
}
.cooperation2 #main #top-topic {
  text-align: center;
}
.cooperation2 #main #hot-topic {
  margin: 1em 3em;
}
.cooperation2 #main #hot-topic li {
  margin: 0.5em 0;
}
.cooperation2 #main #hot-topic li.new {
  background-color: inherit;
}
.cooperation2 #main #hot-topic li.new::before {
  content: "NEW";
  margin-right: 0.5em;
  padding: 0 0.5em;
  color: #F00;
  background-color: #FF0;
}
.cooperation2 #main #bookmarks {
  display: flex;
  flex-wrap: wrap;
  margin: 1em 3em;
  list-style-type: none;
}
.cooperation2 #main #bookmarks li {
  flex: 0 0 45%;
  margin: 0.5em 0;
  padding-left: 1.5em;
  background: 0 50% url(../images/cooperation-icon-bookmark.svg) no-repeat;
  background-size: 1.3em;
  line-height: 2.5em;
  color: #888;
}
.cooperation2#top #main {
  width: 100%;
  padding: 0;
}
.cooperation2#top #main h1 {
  margin: 0.5em 0;
}
.cooperation2#top #main #donate-tab {
  margin: 2em 0;
}
.cooperation2#top #main > section {
  margin: 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#top #main > section h2 {
  margin: 1em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2#top #main > section p {
  margin: 2em 1em;
  text-align: center;
}
.cooperation2#top #main .sevensmile-campaign img {
  width: 90%;
  margin: 0 5%;
}
.cooperation2#top #main .sevensmile-campaign p {
  margin: 1em 5% 0 5%;
}
.cooperation2#donate #main .progress {
  text-align: center;
}
.cooperation2#donate #main .progress img {
  width: 80%;
}
.cooperation2#donate #main #confirm-form-area {
  padding-top: 1em;
}
.cooperation2#donate #main .confirm-button {
  display: block;
  width: 70%;
  margin: 2em auto 3em auto;
  padding: 0.6em 0;
  text-decoration: none;
  color: rgb(44, 44, 175);
  background-color: #FFF;
  border: 1px solid rgb(44, 44, 175);
  border-radius: 0.4rem;
  font-size: 16px;
  font-weight: bold;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}
.cooperation2#donate #main .submit-button {
  display: block;
  width: 70%;
  margin: 2em auto 1em auto;
  padding: 0.6em 0;
  text-align: center;
  color: #FFF;
  background-color: rgb(255, 70, 63);
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  border-radius: 0.4rem;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}
.cooperation2#donate #main .edit-button {
  text-align: center;
  margin-top: 2em;
  margin-bottom: 3em;
}
.cooperation2#donate #main .edit-button a {
  cursor: pointer;
}
.cooperation2#donate #main .resetForm {
  text-align: center;
}
.cooperation2#donate #main .resetForm a {
  cursor: pointer;
}
.cooperation2#donate #main #tabui .tab-control {
  border-bottom: 2px solid rgb(255, 70, 63);
}
.cooperation2#donate #main #tabui .tab-control li {
  flex: 0 0 49%;
  border-bottom: 2px solid rgb(255, 70, 63);
}
.cooperation2#donate #main #tabui .tab-control li.selected {
  border: 2px solid rgb(255, 70, 63);
  border-bottom: #FFF;
}
.cooperation2#donate #main #tabui .donate-value-list a {
  display: block;
  width: 100%;
  margin: 0.8em auto;
  padding: 0.8em 0;
  text-align: center;
  text-decoration: none;
  color: rgb(51, 51, 51);
  border: 1px solid #555;
}
.cooperation2#donate #main #tabui .donate-value-list a span {
  font-size: 120%;
  font-weight: bold;
}
.cooperation2#donate #main #tabui .donate-value-list a:before {
  display: inline-block;
  vertical-align: text-bottom;
  content: "";
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-style: solid;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid rgb(255, 70, 63);
  border-right: 0;
}
.cooperation2#donate #main #tabui .donate-value-list p {
  margin: 2em 0;
  display: flex;
  align-items: center;
}
.cooperation2#donate #main #tabui .donate-value-list p img {
  flex: 0 0 15%;
  width: 100px;
  margin-right: 3em;
}
.cooperation2#donate #main .togglelist li h2 {
  height: 3em;
  border-color: #DDD;
}
.cooperation2#donate #main .togglelist li.creditcard > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-icon-creditcard.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.creditcard-link > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-icon-creditcard.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.creditcard-link #any-amount {
  display: block;
  width: 100%;
  margin: 0.8em auto;
  padding: 0.8em 0;
  text-align: center;
  text-decoration: none;
  color: rgb(51, 51, 51);
  border: 1px solid #555;
}
.cooperation2#donate #main .togglelist li.creditcard-link #any-amount span {
  font-size: 120%;
  font-weight: bold;
}
.cooperation2#donate #main .togglelist li.creditcard-link #any-amount:before {
  display: inline-block;
  vertical-align: text-bottom;
  content: "";
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-style: solid;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid rgb(255, 70, 63);
  border-right: 0;
}
.cooperation2#donate #main .togglelist li.creditcard-link #any-amount #am {
  width: 10em;
}
.cooperation2#donate #main .togglelist li.banking > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-icon-banking.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.paypay > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-paypay_logo.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.vpoint > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-vpoint_logo.svg) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.creditcard-monthly > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-icon-creditcard-monthly.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.banking-monthly > h2 {
  padding-left: 3.5em;
  background: 0% 50% url(../images/cooperation-donate-icon-banking-monthly.png) no-repeat;
  background-size: 2.8em;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list h2 {
  border-bottom: 0;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table {
  margin: 1em 0;
  width: 100%;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table thead {
  background-color: #DDD;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody th {
  width: 30%;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody td.address {
  text-align: left;
  word-break: break-all;
  display: flex;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody td.address span:first-child {
  flex: 1 0 80%;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody td.address span:last-child {
  flex: 0 1 20%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody td.address span:last-child img {
  width: 1em;
  height: auto;
  opacity: 0.7;
}
.cooperation2#donate #main .togglelist li.crypt .crypt-list table tbody td.address span:last-child img:hover {
  opacity: 1;
}
.cooperation2#monthly-bank #main {
  width: 90%;
  padding: 0 5% 5em 5%;
}
.cooperation2#monthly-bank #main h1 {
  margin: 0.5em 0;
}
.cooperation2#monthly-bank #main #donate-tab {
  margin: 2em 0;
}
.cooperation2#monthly #main #cancel {
  margin: 1.5em 5% 0.5em 5%;
  text-align: right;
}
.cooperation2#monthly #main #tabui .tab-control {
  border-bottom: 2px solid rgb(255, 70, 63);
}
.cooperation2#monthly #main #tabui .tab-control li {
  flex: 0 0 32%;
  border-bottom: 2px solid rgb(255, 70, 63);
}
.cooperation2#monthly #main #tabui .tab-control li.selected {
  border: 2px solid rgb(255, 70, 63);
  border-bottom: #FFF;
}
.cooperation2#monthly #main #tabui .donate-value-list a {
  display: block;
  width: 100%;
  margin: 0.8em auto;
  padding: 0.8em 0;
  text-align: center;
  text-decoration: none;
  color: rgb(51, 51, 51);
  border: 1px solid #555;
}
.cooperation2#monthly #main #tabui .donate-value-list a span {
  font-size: 120%;
  font-weight: bold;
}
.cooperation2#monthly #main #tabui .donate-value-list a:before {
  display: inline-block;
  vertical-align: text-bottom;
  content: "";
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-style: solid;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid rgb(255, 70, 63);
  border-right: 0;
}
.cooperation2#monthly #main #tabui .donate-value-list p {
  margin: 2em 0;
  display: flex;
  align-items: center;
}
.cooperation2#monthly #main #tabui .donate-value-list p img {
  flex: 0 0 15%;
  width: 100px;
  margin-right: 3em;
}
.cooperation2#others #main > p {
  margin: 1em 10%;
}
.cooperation2#others #main > section p:last-child {
  text-align: center;
}
.cooperation2#point #main {
  width: 100%;
  padding: 0;
}
.cooperation2#point #main h1 {
  margin: 0.5em 5%;
}
.cooperation2#point #main #items > section {
  margin: 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#point #main #items > section h2 {
  margin: 1em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2#point #main #items > section p {
  margin: 2em 1em;
  text-align: center;
}
.cooperation2#point #main #items > section p.link {
  margin: 3em 0 2em;
}
.cooperation2#point #main #items > section p.link a {
  display: block;
  width: 60%;
  margin: 0 auto;
  padding: 0.8em;
  color: #348241;
  border: 2px solid #348241;
  background-color: #FFF;
  text-decoration: none;
  border-radius: 2em;
}
.cooperation2#point #main #items > section p.link a:before {
  display: inline-block;
  vertical-align: baseline;
  content: "";
  width: 0;
  height: 0;
  margin-right: 0.5em;
  border-style: solid;
  border-top: 0.5em solid transparent;
  border-bottom: 0.5em solid transparent;
  border-left: 0.87em solid #348241;
  border-right: 0;
}
.cooperation2#point #main #items > section.sevenmile span {
  display: inline-block;
}
.cooperation2#point #main #items > section.vpoint > h2 {
  line-height: 2.8em;
  padding-left: 0;
  background: url(../images/cooperation-donate-vpoint_logo.svg) no-repeat;
  background-position: calc(50% - 3.8em) 50%;
  background-size: 2.8em;
}
.cooperation2#point #main #items > section.paypay > h2 {
  line-height: 2.8em;
  padding-left: 0;
  background: url(../images/cooperation-donate-paypay_logo.png) no-repeat;
  background-position: calc(50% - 3.8em) 50%;
  background-size: 2.8em;
}
.cooperation2#point #main .sevensmile-campaign img {
  width: 90%;
  margin: 0 5%;
}
.cooperation2#point #main .sevensmile-campaign p {
  margin: 2em 5% 0 5%;
}
.cooperation2#mono #main {
  margin-bottom: 5em;
}
.cooperation2#mono #main > section {
  margin: 5% 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#mono #main > section h2 {
  margin: 1em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2#mono #main > section em {
  color: rgb(51, 51, 51);
  text-decoration: underline;
}
.cooperation2#mono #main > section #items {
  display: block;
}
.cooperation2#mono #main > section #items .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border: none;
  margin: 1em 0;
  width: 100%;
  vertical-align: top;
}
.cooperation2#mono #main > section #items .item h4 {
  flex: 0 0 100%;
  color: #754C24;
  border: dotted #754C24;
  border-width: 0.2em 0 0.2em 0;
  font-size: 22px;
  font-weight: bold;
  width: 100%;
  text-align: center;
  margin: 1.5em 0 1em 0;
  padding: 0.5em 0;
}
.cooperation2#mono #main > section #items .item h5 {
  margin: 1em 0;
  text-decoration: underline;
}
.cooperation2#mono #main > section #items .item em {
  color: blue;
}
.cooperation2#mono #main > section #items .item .stock {
  margin: 0.5em 0 1em 0;
  padding: 0.1em 0;
  display: block;
  width: 100%;
  text-align: center;
  border: 1px solid #DDD;
  background-size: 100% 100%;
}
.cooperation2#mono #main > section #items .item .stock.towel {
  margin-top: 0.5em;
}
.cooperation2#mono #main > section #items .item .stock.quantity0 {
  background-image: url(../images/cooperation-mono-quantity0.png);
}
.cooperation2#mono #main > section #items .item .stock.quantity1 {
  background-image: url(../images/cooperation-mono-quantity1.png);
}
.cooperation2#mono #main > section #items .item .stock.quantity2 {
  background-image: url(../images/cooperation-mono-quantity2.png);
}
.cooperation2#mono #main > section #items .item .stock.quantity3 {
  background-image: url(../images/cooperation-mono-quantity3.png);
}
.cooperation2#mono #main > section #items .item .stock.quantity4 {
  background-image: url(../images/cooperation-mono-quantity4.png);
}
.cooperation2#mono #main > section #items .item img {
  height: 100%;
  flex: 0 0 49%;
}
.cooperation2#mono #main > section #items .item p {
  margin: 0;
  padding: 0 1%;
  display: inline-block;
  width: 45%;
}
.cooperation2#mono #main > section #items .item span {
  color: #ff863b;
  font-size: 24px;
  font-weight: bold;
}
.cooperation2#mono #main > section #items .item.newspaper p {
  display: block;
  width: 100%;
}
.cooperation2#mono #main > section #items .item.newspaper .images {
  flex: 0 0 49%;
}
.cooperation2#mono #main > section #items .item.newspaper .images img {
  width: 100%;
  height: auto;
}
.cooperation2#mono #main > section #items .item.newspaper .description {
  flex: 0 0 49%;
}
.cooperation2#mono #main > section #items .item.newspaper .status {
  flex: 0 0 100%;
}
.cooperation2#mono #main > section #items .item.towel p {
  display: block;
  width: 100%;
}
.cooperation2#mono #main > section #items .item.towel .images {
  flex: 0 0 49%;
}
.cooperation2#mono #main > section #items .item.towel .images img {
  width: 100%;
  height: 100%;
}
.cooperation2#mono #main > section #items .item.towel .description {
  flex: 0 0 49%;
}
.cooperation2#mono #main > section #items .item.towel .status {
  flex: 0 0 100%;
}
.cooperation2#mono #main > section #items .item.towel .sizes {
  margin-top: 2em;
  height: auto;
}
.cooperation2#mono #main > section #items .item.towel .status {
  display: flex;
  margin-top: 1em;
  flex-wrap: wrap;
}
.cooperation2#mono #main > section #items .item.towel .status h5 {
  flex: 0 0 100%;
}
.cooperation2#mono #main > section #items .item.towel .status div {
  flex: 0 0 30%;
  margin: 5px 0;
  text-align: center;
}
.cooperation2#mono #main > section #items .item.towel .status .stock {
  flex: 1 0 60%;
}
.cooperation2#mono #main > section#address p {
  font-size: 24px;
}
.cooperation2#mono #main > section#qa .qa-items {
  margin: 1em 0;
  list-style-type: none;
}
.cooperation2#mono #main > section#qa .qa-items li {
  border-bottom: 2px dotted #888;
}
.cooperation2#mono #main > section#qa .qa-items li:last-child {
  border-bottom: none;
}
.cooperation2#mono #main > section#qa .qa-items li p:first-child:before {
  content: "Q";
  margin-right: 0.5em;
  font-size: 20px;
  font-weight: bold;
  color: #BA5E5E;
}
.cooperation2#mono #main > section#qa .qa-items li p:last-child:before {
  content: "A";
  margin-right: 0.5em;
  font-size: 20px;
  font-weight: bold;
  color: #5E5EBA;
}
.cooperation2#mono #main > section#shopping h3 {
  margin-top: 2em;
}
.cooperation2#mono #main > section#shopping img {
  width: 60%;
}
.cooperation2#action #main {
  margin-bottom: 5em;
}
.cooperation2#action #main .action-items {
  margin: 2em 5%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.cooperation2#action #main .action-items > section {
  flex: 0 0 38%;
  margin: 1em 0;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#action #main .action-items > section h2 {
  margin: 1em 0 2em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2#action #main .action-items > section h3 {
  color: rgb(51, 51, 51);
}
.cooperation2#action #main .action-items > section.shopping h3 {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 5px dotted rgb(200, 200, 200);
}
.cooperation2#action #main .action-items > section.shopping h3:nth-child(2) {
  padding-top: 0;
  border: none;
}
.cooperation2#action #main .action-items > section p:last-child {
  text-align: center;
}
.cooperation2#action #main .action-items > section .social-icons {
  display: flex;
  justify-content: space-between;
}
.cooperation2#action #main .action-items > section .social-icons a {
  display: block;
  flex: 0 0 23%;
}
.cooperation2#action #main .action-items > section.konokonoie a {
  font-size: 16px;
}
.cooperation2#action #main .action-items > section.konokonoie small {
  margin: 0;
  padding: 0;
  display: block;
  font-size: 80%;
  text-align: right;
}
.cooperation2#action #main .action-items > section.konokonoie .catchphrase {
  text-align: center;
  text-decoration: underline;
}
.cooperation2#action #main #tabui .tab-control {
  border-bottom: 2px solid rgb(77, 184, 99);
}
.cooperation2#action #main #tabui .tab-control li {
  flex: 0 0 49%;
  border-bottom: 2px solid rgb(77, 184, 99);
}
.cooperation2#action #main #tabui .tab-control li.selected {
  border: 2px solid rgb(77, 184, 99);
  border-bottom: #FFF;
}
.cooperation2#cancel #main {
  margin-bottom: 5em;
}
.cooperation2#cancel #main > p {
  margin: 1em 10%;
}
.cooperation2#cancel #main > section {
  margin: 5% 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#cancel #main > section h2 {
  margin: 1em 0 2em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}
.cooperation2#cancel #main > section p:last-child {
  text-align: center;
}
.cooperation2#cancel #main > section input[type=submit] {
  display: block;
  width: 70%;
  margin: 0.5em auto;
  padding: 0.8em 0;
}
.cooperation2#cancel #main > section label:after {
  content: "\a";
  white-space: pre;
}
.cooperation2#qa #main {
  margin-bottom: 5em;
}
.cooperation2#qa #main > p {
  margin: 1em 10%;
}
.cooperation2#qa #main > ul {
  margin: 5%;
  list-style-type: none;
}
.cooperation2#qa #main > ul > li {
  border-top: 5px dotted rgb(200, 200, 200);
  padding: 1em 0.5em;
}
.cooperation2#qa #main > ul > li:first-child {
  border: none;
}
.cooperation2#qa #main > ul > li div:first-child:before {
  content: "Q: ";
  font-size: 24px;
  font-weight: bold;
  color: rgb(255, 100, 100);
}
.cooperation2#qa #main > ul > li div:last-child:before {
  content: "";
}
.cooperation2#qa #main > section {
  margin: 5% 5%;
  padding: 5%;
  border: 1px solid #888;
  border-radius: 0.8rem;
}
.cooperation2#qa #main > section h2 {
  margin: 1em 0 2em 0;
  padding: 0;
  border: 0;
  text-align: center;
  color: rgb(44, 44, 175);
}

#charm .sp {
  display: none;
}
#charm .pc {
  display: block;
  width: 60%;
  margin: 2em auto;
  color: #333;
}
#charm .pc img {
  width: 100%;
}
#charm .pc p {
  margin-top: 0;
  font-size: 12px;
  text-align: center;
}

.cf-banner {
  margin: 20px;
  font-size: 0;
}
.cf-banner img {
  width: 100%;
}
.cf-banner p {
  text-align: center;
  margin-top: 0;
  font-size: 14px;
}

@media screen and (max-width: 520px) {
  * {
    margin: 0;
    padding: 0;
    line-height: 1.5;
    font-size: 16px;
    word-wrap: break-word;
  }
  body {
    width: 100%;
    font-size: 16px;
    background-color: #EEEEEE;
  }
  body h1 {
    margin: 0.5em 0;
    padding: 0.2em;
    font-size: 24px;
  }
  body h2 {
    margin: 1.5em 0 0.2em 0;
    padding: 0.2em 0 0.2em 10px;
    font-size: 20px;
  }
  body h2:after {
    content: "";
    display: block;
    clear: both;
  }
  body p.callout {
    padding: 1em 1em 1em 2.5em;
    background: #f3f3f3 url("../images/icon_callout.png") 0.5em 1.25em/1.5em 1.5em no-repeat;
    border-radius: 0.5em;
  }
  body ul {
    margin: 1em;
  }
  body ul.linklist {
    margin-left: 2em;
  }
  body ul.linklist li {
    background-size: 2em auto;
    margin-left: -1.5em;
    padding: 0.5em 0 0.5em 2em;
  }
  body ul.linklist-middle {
    margin-left: 2em;
  }
  body ul.linklist-middle li {
    list-style-type: none;
    background-size: 2em auto;
    background-position-y: 0.2em;
    margin-left: -1.5em;
    padding: 0.5em 0 0.5em 2em;
  }
  body ul.checklist li {
    list-style-type: none;
    background: 0% 0% url(../res/checklist.png) no-repeat;
    margin-left: -20px;
    margin-bottom: 0.5em;
    padding-left: 20px;
  }
  body ul.photos2 {
    width: 100%;
    font-size: 0;
  }
  body ul.photos2 li {
    margin: 1em 1%;
    display: inline-block;
    float: none;
    width: 98%;
    vertical-align: top;
  }
  body ul.photos2 li p {
    font-size: 16px;
  }
  body ul.year-menu li {
    width: 25%;
  }
  body ul#jump_to_month {
    padding: 0;
    width: 100%;
  }
  body ul#jump_to_month li {
    width: 16%;
    margin: 0.5em 0;
  }
  body ul.togglelist > li > h2 {
    margin: 0;
    padding: 1em 0.5em;
  }
  body ol {
    margin: 1em;
  }
  body form input {
    width: 100%;
  }
  body form select {
    width: 100%;
  }
  body form textarea {
    width: 100%;
  }
  body .pc-only {
    display: none;
  }
  body .sp-only {
    display: block;
  }
  body.volunteer#cat img {
    width: 100%;
  }
  body.volunteer#cat img.timeschedule {
    width: 100%;
  }
  body#volunteer-form #volunteer-schedule .timeschedule {
    width: 100%;
  }
  body#dog-volunteer p.to-application {
    margin: 2em 0 3em 0;
  }
  body#dog-volunteer .head-image {
    width: 100%;
    margin: 1em 0;
  }
  body#mycalendar {
    width: 100%;
  }
  body#mycalendar #wrapper h1 {
    padding: 1em;
  }
  body#mycalendar #wrapper img {
    width: 100%;
  }
  body#mycalendar #wrapper fieldset.two-ctrls {
    width: auto;
  }
  body#mycalendar #wrapper fieldset.three-ctrls {
    width: auto;
  }
  body#mycalendar #wrapper fieldset.three-sets {
    width: 91%;
    clear: both;
    margin: 0 0 1em 0;
  }
  body#mycalendar #wrapper #display {
    margin-left: 0;
  }
  body#mycalendar #wrapper #display #calendarWrapper {
    position: relative;
    width: 100%;
    height: auto;
  }
  body#mycalendar #wrapper #display #calendarWrapper:before {
    content: "";
    display: block;
    padding-top: 70%;
  }
  body#mycalendar #wrapper #display #calendarWrapper #calendar {
    border: none;
    position: absolute;
    width: 100%;
    height: auto;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
  }
  body#mycalendar #wrapper #display #calendarWrapper #calendar #photoWrapper {
    width: 30%;
    height: 42%;
    left: 67%;
    top: 11%;
  }
  body#mycalendar #wrapper #display #calendarWrapper #calendar #photoWrapper #photo {
    width: 100%;
    height: 100%;
  }
  body#mycalendar #wrapper #display #calendarWrapper #calendar #weekNumberWrapper {
    width: 100%;
    height: 100%;
  }
  body#faq-test .grid1 {
    display: flex;
    flex-wrap: wrap;
  }
  body#faq-test .grid1 .item {
    border: 1px solid red;
    flex-basis: 32%;
    flex-grow: 1;
  }
  body#faq-test .grid1 .item:nth-child(2) {
    margin: 0 1%;
  }
  body#faq-test .grid2 {
    display: flex;
    flex-wrap: wrap;
  }
  body#faq-test .grid2 .item {
    flex-basis: 100%;
    height: 3em;
    border: 1px solid green;
  }
  body#faq-test .grid2 .item.middle {
    flex-basis: 60%;
    flex-grow: 1;
  }
  body#faq-test .grid2 .item.small {
    flex: 0 0 30%;
  }
  body#access img {
    width: 100%;
  }
  body#blog #container #main {
    margin: 0;
    padding: 0;
    width: 100%;
  }
  body#blog #container #main h1 {
    margin: 0;
    padding: 0;
  }
  body#blog #container #main h1 img {
    width: 100%;
    height: auto;
  }
  body#blog #container #main h1.others {
    border: dotted #ccc;
    border-width: 0.3em 0;
    margin: 2em 3vw;
    padding: 0.5em 0;
    font-size: 16px;
    color: #333;
    background: none;
  }
  body#blog #container #main p.callout {
    margin: 1em 3vw;
    padding: 1em 1em 1em 2.5em;
    background: #f3f3f3 url("../images/icon_callout.png") 0.7em 1.1em/1.2em 1.2em no-repeat;
    border-radius: 0.5em;
  }
  body#blog #container #main ul.top-articles {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 3vw 2em 3vw;
  }
  body#blog #container #main ul.top-articles li {
    margin: 0;
    padding: 1em 0;
    border-top: none;
    list-style-type: none;
    flex: 0 0 91vw;
    justify-content: space-between;
  }
  body#blog #container #main ul.top-articles li a {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-decoration: none;
  }
  body#blog #container #main ul.top-articles li a img {
    width: 44vw;
    height: 33vw;
    aspect-ratio: 4/3;
    flex: 0 0 44vw;
  }
  body#blog #container #main ul.top-articles li a h2 {
    display: inline;
    margin: 0;
    padding: 0;
    border: 0;
    flex: 0 0 44vw;
    color: #333;
    font-size: 16px;
  }
  body#blog #container #main ul.top-articles li a .excerpt {
    flex: 0 0 91vw;
    color: #555;
    font-size: 14px;
    padding-top: 1em;
  }
  body#blog #container #main ul.top-articles li a .date {
    flex: 0 0 91vw;
    color: #aaa;
    text-align: right;
    font-size: 14px;
  }
  body#blog #container #main ul.top-articles li a:hover h2 {
    text-decoration: underline;
  }
  body#blog #container #main article {
    margin: 1em 3vw;
  }
  body#blog #container #main article h2 {
    margin: 0;
    padding: 0;
    border: none;
  }
  body#blog #container #main article .date {
    text-align: right;
    color: #aaa;
    font-size: 14px;
  }
  body#blog #container #footer {
    padding: 1em 1em;
    background-color: #eee;
    border: none;
  }
  body#blog #container #footer a {
    color: #333;
    text-decoration: none;
  }
  #header {
    margin: 0;
    padding: 0 !important;
    width: 100%;
    height: auto;
    background-image: none !important;
  }
  #header img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  #header #bubble {
    display: none;
  }
  #footer {
    padding: 0 2%;
    background-color: #CCC;
  }
  #footer #nav {
    line-height: 2;
  }
  .topic_path {
    margin: 0;
    padding: 1em 0;
    font-size: 16px;
  }
  .form {
    width: 100%;
  }
  .form section h2 {
    margin: 0 !important;
  }
  .form section div {
    padding: 0 2%;
  }
  .form .ssl-mark {
    margin-top: 1em;
    width: 100%;
    text-align: right;
    font-size: 10px;
  }
  .form .ssl-mark img {
    width: 50% !important;
    height: auto !important;
  }
  .form .brand img {
    width: auto;
    height: 2em;
    margin-right: 0.5em;
  }
  .form .min-field {
    width: 30%;
  }
  .form .mid-field {
    width: 94%;
  }
  .form .max-field {
    width: 94%;
  }
  .form .phone-field {
    width: 60%;
  }
  .form textarea {
    width: 94%;
    height: 5em;
  }
  .form input {
    margin: 0.5em 0;
    padding: 0.5em 0 0.5em 0.5em;
  }
  .form input[type=radio] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form input[type=checkbox] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form input[type=button] {
    padding-left: 0;
  }
  .form input[type=submit] {
    width: 70%;
  }
  .form input#submit-button {
    width: 70%;
    height: auto;
  }
  .form select {
    margin: 0.5em 0;
    padding: 0.5em 0;
  }
  .form label input[type=checkbox] {
    margin-right: 0.5em;
  }
  .form label:after {
    content: "\a";
    white-space: pre;
  }
  .form label.cancel-return:after {
    content: "";
  }
  .form fieldset {
    margin: 1em 0;
    padding: 2%;
  }
  .form fieldset.vertical label {
    width: 100%;
  }
  .form fieldset.columns label {
    width: 100%;
  }
  .form fieldset.cancel-returns label::after {
    content: "";
  }
  .form fieldset.cancel-returns label.force-return::after {
    content: "\a";
    white-space: pre;
  }
  .form-dev {
    width: 100%;
  }
  .form-dev section h2 {
    margin: 0 !important;
  }
  .form-dev section div {
    padding: 0 2%;
  }
  .form-dev span.required {
    margin-left: 1em;
    font-size: 14px;
    font-weight: normal;
    color: #F55;
  }
  .form-dev .ssl-mark {
    margin-top: 1em;
    width: 100%;
    text-align: right;
    font-size: 10px;
  }
  .form-dev .ssl-mark img {
    width: 50% !important;
    height: auto !important;
  }
  .form-dev .brand img {
    width: auto;
    height: 2em;
    margin-right: 0.5em;
  }
  .form-dev .min-field {
    width: 30%;
  }
  .form-dev .mid-field {
    width: 94%;
  }
  .form-dev .max-field {
    width: 94%;
  }
  .form-dev .phone-field {
    width: 60%;
  }
  .form-dev textarea {
    width: 100%;
    height: 5em;
  }
  .form-dev input {
    margin: 0.5em 0;
    padding: 0.5em 0 0.5em 0.5em;
  }
  .form-dev input[type=radio] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form-dev input[type=checkbox] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form-dev input[type=button] {
    padding-left: 0;
  }
  .form-dev input[type=submit] {
    width: 70%;
  }
  .form-dev input#submit-button {
    width: 70%;
    height: auto;
    margin: 2em 15%;
  }
  .form-dev select {
    margin: 0.5em 0;
    padding: 0.5em 0;
  }
  .form-dev label input[type=checkbox] {
    margin-right: 0.5em;
  }
  .form-dev label:after {
    content: "\a";
    white-space: pre;
  }
  .form-dev label.cancel-return:after {
    content: "";
  }
  .form-dev fieldset {
    margin: 1em 0;
    padding: 2%;
    border: none;
  }
  .form-dev fieldset legend {
    margin-bottom: 1em;
  }
  .form-dev fieldset.vertical label {
    width: 100%;
  }
  .form-dev fieldset.columns label {
    width: 100%;
  }
  .form-dev fieldset.cancel-returns label::after {
    content: "";
  }
  .form-dev fieldset.cancel-returns label.force-return::after {
    content: "\a";
    white-space: pre;
  }
  .form-cf {
    width: 100%;
  }
  .form-cf section h2 {
    margin: 0 !important;
  }
  .form-cf section div {
    padding: 0 2%;
  }
  .form-cf span.required {
    margin-left: 1em;
    font-size: 14px;
    font-weight: normal;
    color: #F55;
  }
  .form-cf span.label {
    margin-right: 1em;
    font-weight: bold;
  }
  .form-cf div {
    margin: 1.5em 0;
  }
  .form-cf .brand img {
    width: auto;
    height: 2em;
    margin-right: 0.5em;
  }
  .form-cf .min-field {
    width: 30%;
  }
  .form-cf .mid-field {
    width: 94%;
  }
  .form-cf .max-field {
    width: 94%;
  }
  .form-cf .phone-field {
    width: 60%;
  }
  .form-cf textarea {
    width: 100%;
    height: 5em;
  }
  .form-cf input {
    width: 100%;
    margin: 0.5em 0;
    padding: 0.5em 0;
  }
  .form-cf input[type=radio] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form-cf input[type=checkbox] {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
  }
  .form-cf input[type=button] {
    padding-left: 0;
  }
  .form-cf input[type=submit] {
    width: 70%;
  }
  .form-cf input#submit-button {
    width: 70%;
    height: auto;
    margin: 2em 15%;
  }
  .form-cf select {
    margin: 0.5em 0;
    padding: 0.5em 0;
  }
  .form-cf label {
    font-weight: bold;
  }
  .form-cf label input[type=checkbox] {
    margin-right: 0.5em;
  }
  .form-cf label:after {
    content: "\a";
    white-space: pre;
  }
  .form-cf label.cancel-return:after {
    content: "";
  }
  .form-cf fieldset {
    margin: 1em 0;
    padding: 0;
    border: none;
  }
  .form-cf fieldset legend {
    margin-bottom: 1em;
    font-size: 20px;
  }
  .form-cf fieldset.vertical label {
    width: 100%;
  }
  .form-cf fieldset.columns label {
    width: 100%;
  }
  .form-cf fieldset.cancel-returns label::after {
    content: "";
  }
  .form-cf fieldset.cancel-returns label.force-return::after {
    content: "\a";
    white-space: pre;
  }
  .form-cf .callout, .form-cf .desc {
    font-size: 95%;
  }
  #main {
    width: 96%;
    margin: 0;
    padding: 0 2%;
  }
  #main img {
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
  }
  #main img.right {
    width: 40%;
    height: auto;
    margin-left: 1%;
  }
  #main img.left {
    width: 40%;
    height: auto;
    margin-right: 1%;
  }
  #main table {
    margin: 0;
    padding: 0;
    width: 100%;
    border-collapse: collapse;
  }
  #main table tr th, #main table tr td {
    margin: 0;
    padding: 1em 0;
    white-space: normal;
  }
  #main table tr td {
    padding-left: 1em;
  }
  #main table#schedule * {
    margin: 0;
    padding: 0;
  }
  #main table.jyoutokai td {
    padding: 0;
  }
  #main table.jyoutokai td img {
    width: 100%;
  }
  #main table.jyoutokai th {
    padding: 0;
    white-space: normal;
  }
  #main table.select-place td {
    padding: 0;
  }
  #main .column-double {
    margin: 0.5em 0;
    padding: 2%;
    width: 96%;
    float: none;
  }
  #main .panel-menu li {
    margin: 0;
    padding: 0;
    width: 50%;
    height: auto;
  }
  #main .to-submit {
    padding: 1em 0 2em 0;
  }
  #main .to-submit img {
    width: 80%;
  }
  #fureai #main .to-submit .catch {
    font-size: 24px;
  }
  #fureai #main .to-submit .text {
    font-size: 16px;
    margin: 0;
  }
  #main.volunteer img {
    float: none;
    width: 100%;
  }
  #main.volunteer #requirements tr {
    width: 100%;
    font-size: 0;
    display: flex;
    flex-wrap: wrap;
  }
  #main.volunteer #requirements tr th, #main.volunteer #requirements tr td {
    flex: 0 1 100%;
  }
  #main.volunteer #requirements tr th ul, #main.volunteer #requirements tr td ul {
    width: auto;
    margin: 1em;
  }
  #main.volunteer #requirements tr th ul li, #main.volunteer #requirements tr td ul li {
    width: 100%;
  }
  #main.volunteer #works li {
    display: inline-block;
    vertical-align: top;
    margin: 0;
    padding: 0 1% 1em 1%;
    width: 48%;
  }
  #main.volunteer iframe.schedule {
    width: 100%;
  }
  #main.volunteer .to-application {
    margin-bottom: 3em;
  }
  #main.volunteer .to-application img {
    width: 60% !important;
  }
  #main img.pdf {
    width: 1.5em;
    height: auto;
  }
  .timestamp {
    background-color: white;
    margin: 0;
    padding: 2em 1em 0 0;
  }
  .adoption img.ill {
    border: solid #AAA;
    border-width: 0;
  }
  .adoption ol.topic-path .to-cooperation {
    right: 0;
  }
  .adoption ol.topic-path .to-cooperation a {
    padding: 0.1em 0.8em;
    font-size: 16px;
  }
  .adoption .schedule {
    width: 100%;
  }
  .adoption .schedule tr th, .adoption .schedule tr td {
    padding-left: 0 !important;
    text-align: center;
  }
  .adoption .schedule tr th:nth-child(4), .adoption .schedule tr td:nth-child(4) {
    display: none;
  }
  .adoption .schedule * {
    font-size: 14px;
  }
  .adoption #random-animals {
    margin: 0 0 1em 0;
    padding: 0;
    border: none;
    width: 100%;
  }
  .adoption #random-animals #display {
    width: 100%;
  }
  .adoption #random-animals #display img {
    width: 20%;
    height: auto;
  }
  .adoption #random-animals #shuffle-button {
    position: relative;
    font-size: 16px;
    left: 0;
    top: 0;
    margin: 0.5em 0;
  }
  .adoption #random-animals .btn {
    width: 80%;
    margin: 0 0 1em 0;
  }
  .adoption #voices * {
    width: 100%;
    margin: 0;
    padding: 0;
    background: none;
  }
  .adoption #voices h1 {
    font-size: 18px;
    font-weight: bold;
    color: #888;
  }
  .adoption #voices .voice {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    padding-bottom: 1.5em;
    border: 1px solid #888;
  }
  .adoption #voices .voice h2 {
    flex: 0 0 100%;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 39.1%;
    background-size: cover;
    font-size: 16px;
    border: 0;
  }
  .adoption #voices .voice h2 .name {
    display: block;
    width: fit-content;
    padding: 0 0.5rem;
    position: relative;
    left: 0.5rem;
    bottom: 2rem;
    text-align: center;
    border-radius: 0.2rem;
    color: #FFFFFF;
    font-weight: bold;
  }
  .adoption #voices .voice h2 .name.male {
    background-color: #29ABE2;
  }
  .adoption #voices .voice h2 .name.female {
    background-color: #FF8FB8;
  }
  .adoption #voices .voice h3 {
    flex: 0 1 100%;
    text-align: center;
    font-size: 20px;
    margin: 1em 0 2em 0;
    padding: 0 5%;
    border: 0;
    color: rgb(51, 51, 51);
    background: none;
  }
  .adoption #voices .voice h3 .quote-left {
    height: 1.5em;
    margin-bottom: 0.2em;
    background: url(../satooya/cat/voices/quote-left.svg) no-repeat;
    background-size: contain;
  }
  .adoption #voices .voice h3 .quote-right {
    background: url(../satooya/cat/voices/quote-right.svg) no-repeat;
    background-size: contain;
    background-position: right;
    height: 1.5em;
  }
  .adoption #voices .voice .comment {
    flex: 0 0 58%;
    padding-left: 2%;
    font-size: 12px;
  }
  .adoption #voices .voice .altPhoto {
    flex: 0 0 35%;
    color: #B68118;
    padding: 0 2%;
  }
  .adoption #voices .voice .altPhoto p {
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    margin-top: 0.5em;
  }
  .adoption #voices .voice .altPhoto img {
    width: 100%;
  }
  .adoption #ng-cases img {
    width: 100%;
  }
  .adoption .satooya-flow {
    width: 100%;
  }
  .adoption .satooya-flow .step {
    padding: 1em 0 0 0;
  }
  .adoption .satooya-flow .step h3 {
    margin-left: 1em;
  }
  .adoption .satooya-flow .step h3:first-child {
    margin-top: 0;
  }
  .adoption .satooya-flow .step ul {
    margin: 0 0.5em 1em 1.5em;
  }
  .adoption .satooya-flow .option-step {
    padding: 0 0 0 20%;
    background-size: contain;
  }
  .adoption .photo_popups a:hover div {
    display: none;
  }
  .adoption .photo_popups li:nth-child(1) {
    display: none;
  }
  .adoption table.cost tr td:first-child {
    width: 30%;
  }
  .adoption .plane-photos {
    font-size: 0;
  }
  .adoption .plane-photos img {
    width: 50% !important;
  }
  .adoption #cat-top-banner #display img {
    width: 25%;
  }
  .adoption #cat-top-text .all img {
    width: 80%;
  }
  .adoption .dog-top-banner #display img {
    width: 25%;
    vertical-align: middle;
  }
  .adoption .dog-top-banner #all img {
    width: 80%;
  }
  .adoption .dog-top-banner .to-latest-movie {
    padding-bottom: 1em;
    margin-bottom: 1.5em;
    border-bottom: none;
  }
  .adoption .dog-top-banner .to-latest-movie img {
    width: 100%;
  }
  .adoption .fureai-banner {
    width: 100%;
    margin: 0 auto;
    padding: 1em 0;
  }
  .adoption .menkai-flow {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 2em;
    padding-top: 0;
    background: url(../images/menkai-flow-sp.png) no-repeat;
    background-size: cover;
    background: none;
  }
  .adoption .menkai-flow p {
    font-size: 20px;
  }
  .adoption .menkai-belongings {
    text-align: center;
    width: 100%;
    height: auto;
    margin-top: 1em;
    margin-bottom: 2em;
    padding-top: 0;
    background: url(../images/menkai-belongings-sp.png) no-repeat;
    background-size: cover;
    background: none;
  }
  .adoption .inhouse > div {
    width: 100%;
    margin: 1em 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border: 0;
  }
  .adoption .inhouse > div > h4 {
    flex: 1 0 100%;
    margin: 0.5em 0 1em 0;
    font-size: 20px;
  }
  .adoption .inhouse > div > div {
    flex: 1 0 40%;
  }
  .adoption .inhouse > div > div:nth-child(2) {
    border: 1px dashed #DDD;
    text-align: center;
    margin: 0 3% 3% 3%;
    padding: 3%;
  }
  .adoption .inhouse > div > div:nth-child(3) {
    border: none;
    text-align: center;
  }
  .adoption .inhouse > div > div:nth-child(3) img {
    width: 100%;
  }
  .adoption .inhouse > div.ok h5 {
    font-size: 20px;
    color: blue;
  }
  .adoption .inhouse > div.ok > div:nth-child(2) {
    order: 1;
  }
  .adoption .inhouse > div.ok > div:nth-child(3) {
    order: 2;
  }
  .adoption .inhouse > div.ng h5 {
    font-size: 20px;
    color: red;
  }
  .adoption .inhouse > div.ng > div:nth-child(2) {
    order: 2;
  }
  .adoption .inhouse > div.ng > div:nth-child(3) {
    order: 1;
  }
  .adoption .to-all-dogs {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 2em 0 3em 0;
  }
  .adoption .to-all-dogs a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-basis: 80%;
    height: 2em;
    margin: 0;
    font-size: 20px;
    color: #FFFFFF;
    background-color: #479EE1;
    text-decoration: none;
  }
  .adoption .to-all-cats {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 2em 0 5em 0;
  }
  .adoption .to-all-cats a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-basis: 80%;
    height: 2em;
    margin: 0;
    font-size: 20px;
    color: #FFFFFF;
    background-color: #E57880;
    text-decoration: none;
  }
  .adoption .to-content-banner {
    display: block;
  }
  .adoption #instagram {
    display: flex;
    flex-wrap: wrap;
  }
  .adoption #instagram .item {
    flex: 1 1 30vw;
  }
  .adoption #instagram .item div:first-child {
    height: 33vw;
  }
  .adoption #instagram .item div:first-child img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .adoption #instagram .item div:first-child img.playicon {
    width: 10vw;
    height: 10vw;
    top: 11.5vw;
    left: 11.5vw;
  }
  .adoption#dogs .to-charm {
    font-size: 80%;
  }
  .adoption#dogs .to-charm a {
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 31.25%;
    background: center center/contain url("https://shopping.geocities.jp/chanet/archives/docs/dogcatlife/synchro/img/charmsupport_sp.jpg") no-repeat;
  }
  .adoption#cats .to-charm {
    display: none;
    font-size: 80%;
  }
  .adoption#cats .to-charm a {
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 31.25%;
    background: center center/contain url("https://shopping.geocities.jp/chanet/archives/docs/dogcatlife/synchro/img/charmsupport_sp.jpg") no-repeat;
  }
  #dogs * {
    font-family: "Google Sans", "Helvetica Neue", sans-serif;
  }
  #dogs section:after {
    display: none;
  }
  #dogs #main {
    width: 92vw;
    padding: 0 4vw 4vw 4vw;
    background-color: #FFF;
  }
  #dogs #main h2 {
    margin: 1.5em 0 0 0;
    color: #333;
    background: none;
    border: solid #333;
    border-width: 0 0 2px 0;
  }
  #dogs #main h2 + p {
    margin: 0.5em 0 1em 0;
    text-align: right;
  }
  #dogs .smart {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
  }
  #dogs .smart .item {
    box-sizing: border-box;
    width: 44vw;
    flex: 0 0 44vw;
    margin-bottom: 1.5em;
    text-decoration: none;
  }
  #dogs .smart .item:hover, #dogs .smart .item:link, #dogs .smart .item:visited, #dogs .smart .item:active {
    color: rgb(51, 51, 51);
  }
  #dogs .smart .item .new {
    position: absolute;
    display: block;
    margin: 0;
    padding: 0.2125rem 0.51rem;
    width: auto;
    height: 0.935rem;
    line-height: 0.935rem;
    top: calc(33vw - 0.70125rem);
    right: 3vw;
    font-size: 0.85rem;
    color: #FFF;
    background-color: #05B153;
    border-radius: 0.70125rem;
    z-index: 9999;
  }
  #dogs .smart .item .new:after {
    content: "更新あり";
  }
  #dogs .smart .item .swiper {
    width: 44vw;
    height: 33vw;
    border-radius: 3vw 3vw 0 0;
  }
  #dogs .smart .item .swiper .swiper-wrapper {
    width: 100%;
    margin: 0;
  }
  #dogs .smart .item .swiper .swiper-wrapper .swiper-slide {
    margin: 0;
  }
  #dogs .smart .item .swiper .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: auto;
  }
  #dogs .smart .item .swiper .swiper-pagination-bullet-active {
    background: #FFF;
  }
  #dogs .smart .item .basic {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    width: 44vw;
    height: 28vw;
    margin: 0;
    padding: 1.5vw 3vw;
    border-radius: 0 0 3vw 3vw;
    border: solid #888;
    border-width: 0 1px 1px 1px;
    position: relative;
  }
  #dogs .smart .item .basic.Male {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
    background-size: 18vw;
    background-position: right 30% top 10vw;
    background-color: #FFF;
  }
  #dogs .smart .item .basic.Female {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
    background-size: 18vw;
    background-position: right 30% bottom 10vw;
    background-color: #FFF;
  }
  #dogs .smart .item .basic .info {
    margin: 0;
    padding: 0;
    font-size: 18px;
    flex: 0 0 100%;
    border: none;
    white-space: nowrap;
    overflow: hidden;
  }
  #dogs .smart .item .basic .info .id {
    display: block;
    font-weight: bold;
    font-size: 20px;
  }
  #dogs .smart .item .basic .info .age {
    display: block;
    font-weight: normal;
    font-size: 18px;
    color: #777;
  }
  #dogs .smart .item .basic .info .catchphrase {
    display: block;
    white-space: break-spaces;
    color: deeppink;
  }
  #dogs .smart .item .basic .icons {
    padding: 0;
    opacity: 0.6;
    position: absolute;
    width: 5vw;
    right: 3vw;
    top: 1.5vw;
    flex-wrap: wrap;
  }
  #dogs .smart .item .basic .icons img {
    width: 5vw;
    height: 5vw;
  }
  #dogs .smart2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
  }
  #dogs .smart2 .item {
    box-sizing: border-box;
    width: 44vw;
    flex: 0 0 44vw;
    margin-bottom: 1.5em;
    text-decoration: none;
  }
  #dogs .smart2 .item:hover, #dogs .smart2 .item:link, #dogs .smart2 .item:visited, #dogs .smart2 .item:active {
    color: rgb(51, 51, 51);
  }
  #dogs .smart2 .item .swiper {
    width: 44vw;
    height: 33vw;
    border-radius: 3vw 3vw 0 0;
  }
  #dogs .smart2 .item .swiper .swiper-wrapper {
    width: 100%;
    margin: 0;
  }
  #dogs .smart2 .item .swiper .swiper-wrapper .swiper-slide {
    margin: 0;
  }
  #dogs .smart2 .item .swiper .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: auto;
  }
  #dogs .smart2 .item .swiper .swiper-pagination-bullet-active {
    background: #FFF;
  }
  #dogs .smart2 .item .basic {
    box-sizing: border-box;
    display: block;
    position: relative;
    flex-wrap: wrap;
    align-content: space-between;
    width: 44vw;
    height: 28vw;
    margin: 0;
    padding: 1vw 3vw 3vw 3vw;
    border-radius: 0 0 3vw 3vw;
    border: solid #888;
    border-width: 0 1px 1px 1px;
  }
  #dogs .smart2 .item .basic.Male {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
    background-size: 18vw;
    background-position: right 10% top 10vw;
    background-color: #FFF;
  }
  #dogs .smart2 .item .basic.Female {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
    background-size: 18vw;
    background-position: right 10% bottom 10vw;
    background-color: #FFF;
  }
  #dogs .smart2 .item .basic .info {
    margin: 0;
    padding: 0;
    font-size: 18px;
    flex: 0 0 100%;
    border: none;
    white-space: nowrap;
    overflow: hidden;
  }
  #dogs .smart2 .item .basic .info span {
    font-weight: bold;
    font-size: 20px;
  }
  #dogs .smart2 .item .basic .good {
    color: deeppink;
    margin: 0.2em 0 0 0;
  }
  #dogs .smart2 .item .basic .icons {
    width: 30vw;
    padding: 0 0 0 8vw;
    opacity: 0.6;
  }
  #dogs .smart2 .item .basic .icons img {
    width: 7vw;
    height: 7vw;
  }
  #dogs .smart-puppy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
  }
  #dogs .smart-puppy:after {
    content: "";
    display: block;
    width: 29.3vw;
    height: 0;
  }
  #dogs .smart-puppy:before {
    content: "";
    display: block;
    width: 29.3vw;
    height: 0;
    order: 1;
  }
  #dogs .smart-puppy .item {
    box-sizing: border-box;
    width: 29.3vw;
    flex: 0 0 29.3vw;
    margin-bottom: 1.5em;
    text-decoration: none;
  }
  #dogs .smart-puppy .item:hover, #dogs .smart-puppy .item:link, #dogs .smart-puppy .item:visited, #dogs .smart-puppy .item:active {
    color: rgb(51, 51, 51);
  }
  #dogs .smart-puppy .item .swiper {
    width: 29.3vw;
    height: 21.9vw;
    border-radius: 2vw 2vw 0 0;
  }
  #dogs .smart-puppy .item .swiper .swiper-wrapper {
    width: 100%;
    margin: 0;
  }
  #dogs .smart-puppy .item .swiper .swiper-wrapper .swiper-slide {
    margin: 0;
  }
  #dogs .smart-puppy .item .swiper .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: auto;
  }
  #dogs .smart-puppy .item .swiper .swiper-pagination-bullet-active {
    background: #FFF;
  }
  #dogs .smart-puppy .item .basic {
    box-sizing: border-box;
    display: block;
    width: 29.3vw;
    height: 27vw;
    margin: 0;
    padding: 2vw;
    border-radius: 0 0 2vw 2vw;
    border: solid #888;
    border-width: 0 1px 1px 1px;
  }
  #dogs .smart-puppy .item .basic.Male {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
    background-size: 18vw;
    background-position: right 10% top 8vw;
    background-color: #FFF;
  }
  #dogs .smart-puppy .item .basic.Female {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
    background-size: 18vw;
    background-position: right 10% bottom 8vw;
    background-color: #FFF;
  }
  #dogs .smart-puppy .item .basic .info {
    margin: 0;
    padding: 0;
    border: none;
    font-size: 18px;
    white-space: nowrap;
    overflow: hidden;
  }
  #dogs .smart-puppy .item .basic .info .id {
    font-weight: bold;
    font-size: 20px;
  }
  #dogs .smart-puppy .item .basic .info .age {
    font-weight: normal;
    font-size: 18px;
  }
  #dogs .smart-puppy .item .basic .memo {
    width: 100%;
    margin: 0;
    height: 3em;
    white-space: normal;
    text-overflow: ellipsis;
    font-size: 14px;
    overflow: hidden;
  }
  #dogs .satooya {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
  }
  #dogs .satooya:after {
    content: "";
    display: block;
    width: 29vw;
    height: 0;
  }
  #dogs .satooya:before {
    content: "";
    display: block;
    width: 29vw;
    height: 0;
    order: 1;
  }
  #dogs .satooya .item {
    box-sizing: border-box;
    width: 29vw;
    flex: 0 0 29vw;
    margin-bottom: 1.5em;
    text-decoration: none;
  }
  #dogs .satooya .item:hover, #dogs .satooya .item:link, #dogs .satooya .item:visited, #dogs .satooya .item:active {
    color: rgb(51, 51, 51);
  }
  #dogs .satooya .item .swiper {
    width: 29vw;
    height: 21.75vw;
    border-radius: 0;
  }
  #dogs .satooya .item .swiper .swiper-wrapper {
    width: 29vw;
    margin: 0;
  }
  #dogs .satooya .item .swiper .swiper-wrapper .swiper-slide {
    margin: 0;
  }
  #dogs .satooya .item .swiper .swiper-wrapper .swiper-slide img {
    width: 29vw;
    height: auto;
  }
  #dogs .satooya .item .swiper .swiper-pagination-bullet-active {
    background: #FFF;
  }
  #dogs .satooya .item .basic {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 29vw;
    height: 6em;
    margin: 0;
    padding: 5px;
    border-radius: 0;
    border: solid #888;
    border-width: 0 1px 1px 1px;
  }
  #dogs .satooya .item .basic p {
    margin: 0;
    font-size: 16px;
    flex: 0 0 100%;
    white-space: nowrap;
    overflow: hidden;
  }
  #dogs .satooya .item .basic p span {
    font-weight: bold;
    font-size: 20px;
  }
  #dogs .satooya .item .basic.Male {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
    background-size: 40%;
    background-position: right 10% top 40px;
    background-color: #FFF;
  }
  #dogs .satooya .item .basic.Female {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
    background-size: 40%;
    background-position: right 10% bottom 40px;
    background-color: #FFF;
  }
  #dogs .satooya .item .basic .icons {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-top: 10px;
    font-size: 0;
    line-height: 0;
    opacity: 0.6;
  }
  #dogs .satooya .item .basic .icons img {
    width: 7vw;
    height: 7vw;
  }
  #adog h3 {
    font-size: 16px;
  }
  #adog #media {
    margin-bottom: 2em;
    width: 100%;
    float: none;
  }
  #adog #media #other-photos {
    font-size: 0;
  }
  #adog #media #other-photos img {
    margin: 0;
    width: 50%;
    vertical-align: bottom;
  }
  #adog #media .movie img {
    display: none;
  }
  #adog #media .movie iframe {
    height: 54vw;
  }
  #adog #media:after {
    content: "";
    clear: both;
    display: block;
  }
  #adog .back-to-index {
    padding-bottom: 1em;
  }
  #adog #social-buttons {
    height: 2em;
    padding: 0;
  }
  #adog #social-buttons div {
    float: left;
    margin-right: 1em;
  }
  #adog #social-buttons .facebook {
    width: auto;
  }
  #adog #social-buttons .twitter {
    width: auto;
  }
  #adog #social-buttons .google {
    width: auto;
  }
  #adog #information {
    float: none;
    margin: 0;
    width: 100%;
  }
  #adog #information div {
    border: none;
    margin-bottom: 2em;
    padding: 0;
  }
  #adog #information div ul {
    margin-left: 2em;
  }
  #adog #information .osanpo {
    padding: 1em;
    border: 1px solid #DDD;
  }
  #adog2 * {
    font-family: "Google Sans", "Helvetica Neue", sans-serif;
  }
  #adog2 #main {
    width: 92vw;
    padding: 0 4vw;
  }
  #adog2 h3 {
    font-size: 16px;
    color: #333;
  }
  #adog2 section:after {
    display: none;
  }
  #adog2 .back-to-index {
    padding-bottom: 1em;
  }
  #adog2 #information #basic-info {
    margin: 2em 0;
    padding: 4vw;
    border: 1px solid #AAA;
    border-radius: 3vw;
  }
  #adog2 #information #basic-info.male {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-male.png) no-repeat;
    background-size: 30vw;
    background-position: right 5vw top 8vw;
    background-color: #FFF;
  }
  #adog2 #information #basic-info.female {
    background: url(https://www.lifeboat.or.jp/images/satooya-animals-female.png) no-repeat;
    background-size: 30vw;
    background-position: right 5vw bottom 8vw;
    background-color: #FFF;
  }
  #adog2 #information #basic-info .nickname {
    font-size: 3rem;
    font-weight: bold;
    color: #333;
    margin: 0;
  }
  #adog2 #information #basic-info .id {
    font-size: 1.5rem;
    margin: 0 0 0 0.5rem;
    color: #333;
  }
  #adog2 #information #basic-info .age {
    font-size: 1.5rem;
    margin: 0 0 0 0.5rem;
    color: #333;
  }
  #adog2 #information #basic-info .weight {
    font-size: 1.5rem;
    margin: 0 0 0 0.5rem;
    color: #333;
  }
  #adog2 #information #basic-info .memo {
    margin: 1.5em 0.5em 1em 0.5em;
    padding: 0.5em;
    border: 0.4em dotted #CCC;
  }
  #adog2 #information .swiper {
    width: 92vw;
    height: 69vw;
    border-radius: 5vw 5vw 0 0;
  }
  #adog2 #information .swiper .swiper-wrapper {
    width: 100%;
    margin: 0;
  }
  #adog2 #information .swiper .swiper-wrapper .swiper-slide {
    margin: 0;
  }
  #adog2 #information .swiper .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: auto;
  }
  #adog2 #information .swiper .swiper-wrapper .swiper-slide iframe {
    width: 92vw;
    height: 69vw;
  }
  #adog2 #information .swiper .swiper-button-next, #adog2 #information .swiper .swiper-button-prev {
    color: #FFF;
  }
  #adog2 #information .swiper-my-navigation {
    display: flex;
    flex-wrap: wrap;
  }
  #adog2 #information .swiper-my-navigation img {
    width: 18.4vw;
    height: auto;
  }
  #adog2 #information #good-bad {
    display: flex;
    justify-content: space-between;
  }
  #adog2 #information #good-bad div {
    flex: 0 1 36vw;
    padding: 4vw;
  }
  #adog2 #information #good-bad div h3 {
    margin: 0;
    padding: 0;
    text-align: left;
    vertical-align: middle;
  }
  #adog2 #information #good-bad div p {
    margin: 0;
    padding: 0;
    text-align: left;
    vertical-align: middle;
    font-size: 1.5em;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4em;
  }
  #adog2 #information #good-bad div.good {
    border: 1px solid #AAA;
    border-radius: 3vw;
  }
  #adog2 #information #good-bad div.good h3 {
    padding: 1em 0 1em 4em;
    color: #e79630;
    font-weight: bold;
    background: 0 50%/3em url(https://www.lifeboat.or.jp/images/satooya-dog-good-icon.png) no-repeat;
  }
  #adog2 #information #good-bad div.bad {
    border: 1px solid #AAA;
    border-radius: 3vw;
  }
  #adog2 #information #good-bad div.bad h3 {
    padding: 1em 0 1em 4em;
    color: #7376e7;
    font-weight: bold;
    background: 0 50%/3em url(https://www.lifeboat.or.jp/images/satooya-dog-bad-icon.png) no-repeat;
  }
  #adog2 #information #instagram {
    margin: 2em 0;
    padding: 4vw;
    border: 1px solid #AAA;
    border-radius: 3vw;
  }
  #adog2 #information #instagram ul {
    margin: 0;
    padding: 0;
    display: flex;
    list-style-type: none;
    overflow-x: auto;
    overflow-y: hidden;
  }
  #adog2 #information #instagram ul li {
    margin: 0 0;
    flex: 0 1 32%;
  }
  #adog2 #information #instagram ul li .image {
    position: relative;
  }
  #adog2 #information #instagram ul li .image img {
    width: 27vw;
    height: 27vw;
    object-fit: cover;
    object-position: top;
  }
  #adog2 #information #instagram ul li .image img.movie {
    object-position: center;
  }
  #adog2 #information #instagram ul li .image img.playicon {
    position: absolute;
    width: 10vw;
    height: 10vw;
    top: 8.5vw;
    left: 8.5vw;
  }
  #adog2 #information #instagram ul li .like {
    display: inline;
    margin-left: 0.5em;
  }
  #adog2 #information #instagram ul li .like img {
    width: 1em;
    height: auto;
  }
  #adog2 #information #radarchart {
    margin: 2em 0;
    padding: 4vw;
    border: 1px solid #AAA;
    border-radius: 3vw;
  }
  #adog2 #information #radarchart * {
    box-sizing: border-box;
  }
  #adog2 #information #radarchart #radarchart-body {
    position: relative;
    height: 71.4vw;
  }
  #adog2 #information #radarchart #radarchart-body img {
    width: 84vw;
    height: 71.4vw;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }
  #adog2 #information #radarchart #radarchart-body #triangle {
    width: 84vw;
    height: 71.4vw;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 50;
  }
  #adog2 #information #comments {
    margin: 2em 0;
    padding: 4vw;
    border: 1px solid #AAA;
    border-radius: 3vw;
    font-size: 18px;
  }
  #adog2 #information #comments div.description {
    line-height: 2em;
  }
  #adog2 #back {
    margin: 0;
    padding: 2em 0 3em 0;
    text-align: center;
  }
  #cats .item {
    margin: 0 0 1em 0 !important;
    padding: 0 !important;
    border: 1px solid #DDD !important;
    font-size: 16px !important;
    width: 32% !important;
  }
  #cats .item p {
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    border: none;
  }
  #cats .item p .memo {
    font-size: 13px;
    display: block;
  }
  #cats .item p.info {
    height: auto !important;
  }
  #cats .item .link img {
    width: 80%;
  }
  #cats .kitties .item {
    flex-grow: 1;
    max-width: 33%;
  }
  #cats .kitties .item p {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
  }
  #cats .wakearies li.item {
    flex-grow: 1;
    max-width: 33%;
  }
  #cats .wakearies li.item .main-photo div {
    top: 2%;
    left: 2%;
    width: 25%;
    height: 25%;
  }
  #cats .wakearies li.item p {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
  }
  #cats .wakearies li.item p .memo {
    display: block;
  }
  #cats .wakearies li.item .link {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 1em 5%;
  }
  #cats .wakearies li.item .link a {
    order: 1;
    margin-bottom: 0.5em;
  }
  #cats .wakearies li.item .link img {
    width: 90%;
  }
  #cats .wakearies li.item .link img.multibreed {
    width: 30%;
    order: 2;
  }
  #cats .wakearies li.item .link img.movie {
    width: 30%;
    order: 3;
  }
  #cats .adults .item p .memo {
    display: block;
  }
  #cats .adults .item img.movie {
    width: 30%;
  }
  #cats .kanekoneko .item p .memo {
    display: block;
  }
  #cats .satooya .item {
    flex-grow: 1;
    max-width: 33%;
  }
  #cats .satooya .item p {
    width: 100%;
  }
  #acat h3 {
    font-size: 16px;
  }
  #acat #left-pane {
    width: 100%;
    float: none;
  }
  #acat #left-pane #first-photo img {
    width: 100%;
  }
  #acat #left-pane #first-photo .staying-days {
    width: 100%;
    margin: 0;
  }
  #acat #left-pane ul {
    margin-left: 2em;
  }
  #acat #right-pane {
    width: 100%;
    float: none;
    margin: 0;
  }
  #acat #right-pane #other-photos {
    font-size: 0;
  }
  #acat #right-pane #other-photos img {
    margin: 0;
    width: 50%;
    vertical-align: bottom;
  }
  #acat #right-pane #movies img {
    display: none;
  }
  #acat #right-pane #movies iframe {
    width: 100%;
  }
  #acat .back-to-index {
    padding-bottom: 1em;
  }
  #acat #social-buttons {
    height: 2em;
    padding: 0;
  }
  #acat #social-buttons div {
    float: left;
    margin-right: 1em;
  }
  #acat #social-buttons .facebook {
    width: auto;
  }
  #acat #social-buttons .twitter {
    width: auto;
  }
  #acat #social-buttons .google {
    width: auto;
  }
  #top.top * {
    margin: 0;
    padding: 0;
    font-size: 16px;
  }
  #top.top #top-image {
    width: 100%;
    height: auto;
    position: relative;
    background-size: cover;
  }
  #top.top #top-image:after {
    padding-top: 62.5%;
    display: block;
    content: "";
  }
  #top.top #top-image > h1 {
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
  }
  #top.top .top-image1 {
    background: #cccccc url(../images/top-image-1905am.jpg);
  }
  #top.top .top-image2 {
    background: #cccccc url(../images/top-image-1906bm.jpg);
  }
  #top.top #hotmenu ul {
    text-align: center;
  }
  #top.top #hotmenu ul li {
    margin: 0.5em 0;
  }
  #top.top #hotmenu ul li.special {
    background-color: #F3F0E6;
    border-left: none;
  }
  #top.top #hotmenu ul li.special a:visited, #top.top #hotmenu ul li.special a:link {
    text-decoration: none;
    color: rgb(51, 51, 51);
  }
  #top.top #hotmenu ul li:last-child a {
    text-decoration: none;
    color: #FFF;
    background-color: rgb(255, 70, 63);
  }
  #top.top #summary {
    margin: 1em 2vw;
    padding: 4vw;
    background-color: #FFF;
    display: flex;
    flex-wrap: no-wrap;
    justify-content: space-between;
  }
  #top.top #summary #text {
    flex: 1 1 100%;
  }
  #top.top #summary #text h2 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 0.5em;
    padding-left: 0.5em;
    border-left: 0.5em solid #BBB;
  }
  #top.top #summary #text p {
    margin: 0;
  }
  #top.top #summary #total {
    flex: 1 1 35%;
    display: flex;
    margin-top: 0.5em;
  }
  #top.top #summary #total p {
    margin: 0;
    flex: 1 1 50%;
    vertical-align: center;
    padding: 0.5em 0;
    font-size: 1.2rem;
  }
  #top.top #summary #total p#sum span {
    font-size: 2rem;
  }
  #top.top #summary #total p#dog span {
    font-size: 1.5rem;
  }
  #top.top #summary #total p#cat span {
    font-size: 1.5rem;
  }
  #top.top #content-banners a img {
    margin-bottom: 0.5rem;
  }
  #top.top #content-banners a:last-child img {
    margin-bottom: 0;
  }
  #top.top #social-icons.sp-only {
    display: flex;
  }
  #top.top #social-icons.pc-only {
    display: none;
  }
  #top.top #social-icons a {
    flex-basis: 16%;
  }
  #top.top #social-buttons {
    margin: 0;
    padding: 0.5em 0;
    width: 100%;
    height: auto;
  }
  #top.top #social-buttons div {
    float: none;
    display: inline-block;
  }
  #top.top #social-buttons div.facebook {
    margin: 0 10% 0 2%;
    padding: 0;
    width: 40%;
    left: 0;
  }
  #top.top #social-buttons div.twitter {
    margin: 0;
    padding: 0;
    width: 40%;
    left: 0;
  }
  #top.top #contents {
    width: 96%;
    float: none;
    margin: 0;
    padding: 0 2%;
  }
  #top.top #contents h1, #top.top #contents h2 {
    margin: 0;
    padding: 0;
    width: 100%;
    background-image: none;
    background-color: #88848E;
  }
  #top.top #contents h1 {
    font-size: 24px;
  }
  #top.top #contents p {
    margin: 0;
    width: 100%;
  }
  #top.top #contents #schedule table {
    margin: 0.5em 0 0 0;
    padding: 0;
    width: 100%;
  }
  #top.top #contents #schedule table tr th, #top.top #contents #schedule table tr td {
    padding: 1em 0;
  }
  #top.top #contents #main-nav {
    margin: 1em 0;
  }
  #top.top #contents .panel-nav {
    margin: 0;
    padding: 0.5rem 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  #top.top #contents .panel-nav li {
    margin: 0;
    padding: 0;
  }
  #top.top #contents .panel-nav li h1 {
    display: inline-block;
  }
  #top.top #contents .panel-nav li.type1 {
    flex: 0 1 100%;
  }
  #top.top #contents .panel-nav li.type2 {
    flex: 0 1 50%;
  }
  #top.top #contents .panel-nav li img {
    width: 100%;
    height: auto;
  }
  #top.top #contents .panel-nav li h1, #top.top #contents .panel-nav li h2 {
    background-color: #F5F5F5;
  }
  #top.top #contents #hotnews {
    margin: 1em 0;
  }
  #top.top #contents #hotnews ul {
    margin: 0;
  }
  #top.top #contents #hotnews ul li h2 {
    background: transparent;
  }
  #top.top #contents #hotnews ul li img {
    margin: 0 0 0 1%;
    width: 30%;
    height: auto;
    float: right;
  }
  #top.top #sidebar {
    width: 96%;
    padding: 0 2%;
    float: none;
  }
  #top.top #sidebar .section {
    margin: 1em 0;
    padding: 0;
  }
  #top.top #sidebar .section h1 {
    margin: 0;
    padding: 0;
    font-size: 20px;
    background-image: none;
    background-color: #CCCCCC;
  }
  #top.top #sidebar .section img {
    width: 100%;
    height: auto;
  }
  #top.top #sidebar .section#news ul {
    width: 100%;
  }
  #top.top #sidebar .section#yahoo h1 {
    margin-bottom: 0;
  }
  #top.top #sidebar .section#yahoo p {
    margin: 0;
    padding: 0.5em;
  }
  #top.top #sidebar .section#yahoo .logos {
    display: flex;
    justify-content: space-between;
    padding: 1em 0.5em 0 0.5em;
  }
  #top.top #sidebar .section#yahoo .logos p {
    margin: 0;
    padding: 0;
    flex: 0 0 45%;
  }
  #top.top #sidebar .section#yahoo .logos p.paypay img {
    width: 100%;
    height: auto;
    position: relative;
    left: 4%;
  }
  #top.top #sidebar .section#yahoo .logos p.vpoint img {
    width: 75%;
    height: auto;
    position: relative;
    right: -10%;
    top: 3.5vw;
  }
  #top.top #sidebar .section#mycalendar img {
    width: 80%;
  }
  #top.top #nav {
    margin: 1em 0;
    padding: 0 2%;
  }
  #dog-manual #article {
    margin: 0;
    padding: 0 2%;
  }
  #dog-manual #article h2 {
    margin: 1.5em 0;
    padding: 0 0 0 7%;
    font-size: 20px;
    background-size: 5%;
  }
  #dog-manual #article h3 {
    font-size: 20px;
  }
  #dog-manual #article img {
    width: 100%;
    height: auto;
  }
  #dog-manual #article table {
    margin: 0;
    padding: 0;
    border-collapse: collapse;
  }
  #dog-manual #article ul {
    margin: 0;
    padding: 0;
  }
  #dog-manual #article ul li {
    background-size: 10%;
    margin: 1em;
    padding: 0 0 0 10%;
  }
  #dog-manual #article ul.checklist {
    margin-left: 0;
  }
  #dog-manual #article ul.checklist li {
    margin-left: 0;
    padding-left: 2em;
  }
  #dog-manual #article ol {
    margin-left: 0;
  }
  #dog-manual #article.index li {
    padding: 0;
  }
  #dog-manual #article #summary img {
    width: 30%;
  }
  #dog-manual #article #left-pane, #dog-manual #article #right-pane {
    float: none;
    width: 90%;
    margin: 0 0 0 10%;
    padding: 0;
    border: none;
  }
  #dog-manual #article #left-pane ul, #dog-manual #article #right-pane ul {
    margin: 0 0 0 1em;
    padding: 0;
  }
  #dog-manual #article #left-pane li, #dog-manual #article #right-pane li {
    margin: 0.5em 0;
  }
  #dog-manual #article .photo-right, #dog-manual #article .photo-left {
    padding: 1em 0;
    float: none;
  }
  #dog-manual #article .photo-right img, #dog-manual #article .photo-left img {
    width: 100%;
    height: auto;
  }
  #dog-manual #article .photo-right p, #dog-manual #article .photo-left p {
    width: auto;
    font-size: 16px;
  }
  #dog-manual #article .photo-three {
    width: 100%;
    padding: 1em 0;
    float: none;
  }
  #dog-manual #article .photo-three img {
    width: 100%;
    height: auto;
  }
  #dog-manual #article .photo-three p {
    font-size: 16px;
  }
  #dog-manual #article .column {
    width: 100%;
    margin: 2em 0;
    padding: 0;
    background: none;
  }
  #dog-manual #article .column div {
    margin: 0;
    padding: 0;
    width: 100%;
    border: none;
  }
  #dog-manual #article .column h3 {
    margin: 0;
    padding: 6% 0 6% 25%;
    background: url(../contents/dog-manual/res/column-bg.jpg) no-repeat 0 50%;
    background-size: 20%;
  }
  #dog-manual #article .ex img {
    margin: 0 2% 0 0;
    width: 15%;
  }
  #dog-manual #article .icon {
    margin: 5% 5% 5% 0;
    padding: 0;
    width: 15%;
  }
  #dog-manual #article .to-ipet a span {
    width: 70%;
    margin: 2em auto 3em auto;
    padding: 1em 2em;
  }
  #baby-cats #check th:nth-child(1) {
    width: 20%;
  }
  #baby-cats #check th:nth-child(2) {
    width: 30%;
  }
  #news #header {
    width: 100%;
    height: auto;
  }
  #news #header img {
    width: 100%;
  }
  #news #main {
    width: 96%;
    margin: 0;
    padding: 0 2%;
  }
  #news #main .topic_path {
    margin: 0;
    padding: 1em 0;
    font-size: 16px;
  }
  #news #main h1 {
    width: auto;
    font-size: 20px;
    margin: 0.5em 0;
    padding: 0;
    background-color: transparent;
    background-image: none;
  }
  #news #main .entry-body {
    margin-bottom: 3em;
  }
  #news #main .entry-info {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0 2%;
  }
  #news #main .entry-info .social-buttons {
    float: none;
    width: auto;
    height: auto;
    margin: 1em 0;
    padding: 0 0 1em 0;
  }
  #news #main .entry-info .social-buttons div {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
  }
  #news #main .entry-info .social-buttons div .google {
    margin-left: 1em;
  }
  #news #main .entry-info .entry-category {
    margin: 1em 0;
    padding: 0;
    float: none;
    clear: both;
  }
  #news #main .entry-info .entry-category .categories {
    margin: 1em 0;
    padding: 0;
    border: none;
    display: block;
  }
  #news #main .entry-info .entry-category .tags {
    margin: 1em 0;
    padding: 0;
    display: block;
  }
  #news #main .entry-info ul.related-entries {
    margin: 0;
    padding: 0;
    list-style-type: squre;
  }
  #news #main .entry-info ul.related-entries li {
    margin: 0;
    padding: 0;
  }
  #news #main #sidebar {
    width: auto;
    float: none;
  }
  #news #footer {
    padding: 0 2%;
  }
  #news .pc-inserted-image {
    width: 100%;
  }
  .jyoutokai #satooya-banner {
    margin: 2em 0 1em 0;
    text-align: center;
  }
  .jyoutokai #satooya-banner img {
    width: 50%;
  }
  .jyoutokai .menkai-flow {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 1em;
    padding-top: 0;
    background: url(../images/menkai-flow-sp.png) no-repeat;
    background-size: cover;
    background: none;
  }
  #internship iframe {
    width: 100%;
    height: 70vw;
  }
  #internship #flow img {
    display: none;
  }
  #internship #flow #text {
    display: block;
  }
  #internship #flow #text div {
    width: 95%;
    margin: 0 auto;
    text-align: center;
  }
  #internship #flow #text div.item {
    border: 1px solid #888;
    border-radius: 0.5em;
  }
  #rescued table.year {
    width: 100%;
    margin: 0;
    padding: 0;
    border-collapse: collapse;
  }
  #rescued table.year td, #rescued table.year th {
    margin: 0;
    padding: 0;
  }
  #rescued table.year tr th:first-child {
    width: 6em;
  }
  #rescued .rescued_sum {
    width: 100%;
  }
  #rescued .center-name {
    display: none;
  }
  #rescued .jump_to_year {
    margin: 0;
    padding: 0;
    font-size: 0;
  }
  #rescued .jump_to_year li {
    margin: 0.5em 0;
    font-size: 16px;
    width: 25%;
  }
  #rescued .month-graph p {
    font-size: 16px;
  }
  #syuushi-houkoku .scroller {
    overflow-x: auto;
    width: 100%;
  }
  #syuushi-houkoku .syuushi {
    width: 100%;
    border: 0;
  }
  #syuushi-houkoku .syuushi td {
    padding: 1px 5px 1px 5px;
    border: 0;
  }
  .cooperation .pnl-menu li {
    width: 80%;
    float: none;
    margin: 0 auto;
  }
  .cooperation .pnl-menu li p {
    width: 100%;
    margin-left: 0;
  }
  .cooperation#houkoku section.initial {
    display: flex;
    flex-wrap: wrap;
  }
  .cooperation#houkoku section.initial div {
    flex: 0 0 30%;
    border: 1px solid #CCC;
    padding-left: 2%;
  }
  .cooperation#houkoku section.initial div span {
    display: block;
  }
  .cooperation#houkoku section.org {
    width: 98%;
  }
  .cooperation#houkoku section.org div {
    display: flex;
    border: 1px solid #CCC;
  }
  .cooperation#houkoku section.org div span {
    display: block;
    padding: 0.5em 2%;
    flex: 0 0 46%;
    text-align: center;
  }
  .cooperation#houkoku table.initial {
    width: 100%;
    margin: 0;
    padding: 0;
    border-collapse: collapse;
  }
  .cooperation#houkoku table.initial td {
    margin: 0;
    padding: 0;
    word-wrap: break-word;
  }
  .cooperation#houkoku table.goods {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .cooperation#shelter table.cost img {
    float: right;
  }
  .cooperation#shelter table.cost tr {
    margin: 0;
    padding: 0;
    font-size: 0;
  }
  .cooperation#shelter table.cost tr td, .cooperation#shelter table.cost tr th {
    display: inline-block;
    border: none;
  }
  .cooperation#shelter table.cost tr td:nth-child(1), .cooperation#shelter table.cost tr th:nth-child(1) {
    width: 69%;
    border-right: 1px dotted #CCC;
    font-weight: bold;
  }
  .cooperation#shelter table.cost tr td:nth-child(2), .cooperation#shelter table.cost tr th:nth-child(2) {
    width: 30%;
  }
  .cooperation#shelter table.cost tr td:nth-child(3), .cooperation#shelter table.cost tr th:nth-child(3) {
    width: 100%;
    border-top: 1px dotted #CCC;
    border-bottom: 1px solid #CCC;
  }
  .cooperation#shelter table.cost tr td:nth-child(3) img, .cooperation#shelter table.cost tr th:nth-child(3) img {
    width: 50%;
  }
  .cooperation#shelter section#meaning img {
    width: 50%;
  }
  .cooperation#kaijyou-bosyuu #ex img {
    margin: 0;
    padding: 0;
    width: 50%;
  }
  .cooperation#volubeit .course-menu a {
    padding: 0.5em 0;
    width: 100%;
  }
  .cooperation#volubeit .course-menu a img {
    width: 80%;
  }
  .cooperation#projects ul.projects li {
    margin: 0.5em 0;
    padding: 0;
    float: clear;
    width: 100%;
    height: auto;
  }
  .cooperation#projects ul.projects p {
    margin: 0.5em 3%;
    font-size: 16px;
  }
  .cooperation#projects ul.projects a {
    font-size: 20px;
  }
  .cooperation#cf-board #board section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
  }
  .cooperation#cf-board #board section:after {
    content: "";
    display: block;
    height: 0;
  }
  .cooperation#cf-board #board section:before {
    content: "";
    display: block;
    height: 0;
    order: 1;
  }
  .cooperation#cf-board #board section .adonor {
    display: block;
    box-sizing: border-box;
    margin-bottom: 4vw;
    text-decoration: none;
  }
  .cooperation#cf-board #board section .adonor:hover, .cooperation#cf-board #board section .adonor:link, .cooperation#cf-board #board section .adonor:visited, .cooperation#cf-board #board section .adonor:active {
    color: rgb(51, 51, 51);
  }
  .cooperation#cf-board #board section .adonor .photo {
    margin: 0;
    box-sizing: border-box;
    border-radius: 2vw 2vw 0 0;
    font-size: 0;
    overflow: hidden;
  }
  .cooperation#cf-board #board section .adonor .photo .tap-hint img {
    width: 15vw !important;
    height: 15vw !important;
  }
  .cooperation#cf-board #board section .adonor .info {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
    padding: 1em;
    font-size: 16px;
    border-radius: 0 0 2vw 2vw;
    border: solid #888;
    border-width: 0 1px 1px 1px;
  }
  .cooperation#cf-board #board section .adonor .info .name {
    margin: 0;
    padding: 0;
    flex: 0 0 100%;
    border: none;
    white-space: nowrap;
    overflow: hidden;
    font-size: inherit;
    line-height: inherit;
  }
  .cooperation#cf-board #board section .adonor .info .name a {
    font-size: inherit;
    line-height: inherit;
  }
  .cooperation#cf-board #board section .adonor .info .title {
    margin: 0;
    padding: 0;
    flex: 0 0 100%;
    overflow: hidden;
    font-size: 90%;
    line-height: inherit;
  }
  .cooperation#cf-board #board section .adonor .info .title a {
    font-size: inherit;
    line-height: inherit;
  }
  .cooperation#cf-board #board section .adonor .info .amount {
    margin: 0;
    padding: 0;
    flex: 0 0 100%;
    font-size: inherit;
    line-height: inherit;
  }
  .cooperation#cf-board #board section.ex-large:after {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.ex-large:before {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.ex-large .adonor {
    display: block;
    width: 96vw;
    flex: 0 0 96vw;
  }
  .cooperation#cf-board #board section.ex-large .adonor .photo {
    width: 96vw;
    height: 60vw;
    border-radius: 2vw 2vw 0 0;
  }
  .cooperation#cf-board #board section.ex-large .adonor .photo img {
    width: 96vw;
    height: 60vw;
    margin-top: 0;
  }
  .cooperation#cf-board #board section.ex-large .adonor .info {
    width: 96vw;
    height: auto;
    font-size: 28px;
    line-height: 1.5;
    border-radius: 0 0 2vw 2vw;
    border-width: 0 1px 1px 1px;
    background-image: url(../cooperation/donate/cf/images/ribbon1.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 20vw 20vw;
  }
  .cooperation#cf-board #board section.large:after {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.large:before {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.large .adonor {
    width: 96vw;
    flex: 0 0 96vw;
  }
  .cooperation#cf-board #board section.large .adonor .photo {
    width: 96vw;
    height: 54vw;
  }
  .cooperation#cf-board #board section.large .adonor .photo img {
    width: 96vw;
    height: 54vw;
  }
  .cooperation#cf-board #board section.large .adonor .info {
    width: 96vw;
    height: auto;
    padding: 0.8em 1em;
    font-size: 24px;
    background-image: url(../cooperation/donate/cf/images/ribbon2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16vw 16vw;
  }
  .cooperation#cf-board #board section.medium:after {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.medium:before {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.medium .adonor {
    width: 96vw;
    flex: 0 0 96vw;
  }
  .cooperation#cf-board #board section.medium .adonor .photo {
    width: 96vw;
    height: 54vw;
  }
  .cooperation#cf-board #board section.medium .adonor .photo img {
    width: 96vw;
    height: 54vw;
  }
  .cooperation#cf-board #board section.medium .adonor .info {
    width: 96vw;
    height: auto;
    padding: 0.5em 1em;
    font-size: 22px;
    background-image: url(../cooperation/donate/cf/images/ribbon3.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 15vw 15vw;
  }
  .cooperation#cf-board #board section.medium-BK:after {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.medium-BK:before {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.medium-BK .adonor {
    width: 96vw;
    flex: 0 0 96vw;
    display: flex;
    flex-wrap: nowrap;
  }
  .cooperation#cf-board #board section.medium-BK .adonor .photo {
    width: 55vw;
    height: 37.5vw;
    flex: 0 0 55vw;
    border-radius: 2vw 0 0 2vw;
  }
  .cooperation#cf-board #board section.medium-BK .adonor .photo img {
    width: 55vw;
    height: 37.5vw;
  }
  .cooperation#cf-board #board section.medium-BK .adonor .info {
    width: 41vw;
    height: 37.5vw;
    padding: 0.5em;
    flex: 0 0 41vw;
    border-radius: 0 2vw 2vw 0;
    border: solid #888;
    border-width: 1px 1px 1px 0;
    background-image: url(../cooperation/donate/cf/images/ribbon3.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 12vw 12vw;
    font-size: 20px;
  }
  .cooperation#cf-board #board section.small:after {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.small:before {
    width: 96vw;
    height: 0;
  }
  .cooperation#cf-board #board section.small .adonor {
    width: 96vw;
    flex: 0 0 96vw;
    display: flex;
    flex-wrap: nowrap;
  }
  .cooperation#cf-board #board section.small .adonor .photo {
    width: 44vw;
    height: 33vw;
    flex: 0 0 44vw;
    border-radius: 2vw 0 0 2vw;
  }
  .cooperation#cf-board #board section.small .adonor .photo img {
    width: 44vw;
    height: 33vw;
  }
  .cooperation#cf-board #board section.small .adonor .info {
    width: 52vw;
    height: 33vw;
    padding: 0.5em;
    flex: 0 0 52vw;
    border-radius: 0 2vw 2vw 0;
    border: solid #888;
    border-width: 1px 1px 1px 0;
    font-size: 20px;
  }
  .cooperation#cf-board #board section.small-BK:after {
    width: 46vw;
    height: 0;
  }
  .cooperation#cf-board #board section.small-BK:before {
    width: 46vw;
    height: 0;
  }
  .cooperation#cf-board #board section.small-BK .adonor {
    flex: 0 0 46vw;
    flex-wrap: wrap;
  }
  .cooperation#cf-board #board section.small-BK .adonor .photo {
    height: 34.5;
    flex: 0 0 46vw;
    border-radius: 2vw 2vw 0 0;
  }
  .cooperation#cf-board #board section.small-BK .adonor .photo img {
    width: 46vw;
    height: 34.5vw;
  }
  .cooperation#cf-board #board section.small-BK .adonor .info {
    width: 46vw;
    height: auto;
    padding: 2vw;
    border-radius: 0 0 2vw 2vw;
    border-width: 0 1px 1px 1px;
    font-size: 16px;
  }
  .cooperation#cf-board #board section.ex-small:after {
    width: 30vw;
    height: 0;
  }
  .cooperation#cf-board #board section.ex-small:before {
    width: 30vw;
    height: 0;
  }
  .cooperation#cf-board #board section.ex-small .adonor {
    flex: 0 0 30vw;
  }
  .cooperation#cf-board #board section.ex-small .adonor .photo {
    width: 30vw;
    height: 22.5vw;
  }
  .cooperation#cf-board #board section.ex-small .adonor .photo img {
    width: 30vw;
    height: 22.5vw;
  }
  .cooperation#cf-board #board section.ex-small .adonor .info {
    width: 30vw;
    height: auto;
    padding: 2vw;
    font-size: 16px;
  }
  .cooperation#cf-sign #sign {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2vw;
    width: 100%;
  }
  .cooperation#cf-sign #sign .adonor {
    margin: 0;
    padding: 2vw;
  }
  .cooperation#cf-sign #sign .adonor .sign {
    display: block;
  }
  .cooperation#cf-sign #sign .adonor .amount {
    display: block;
  }
  .shelter#top .topic_path {
    margin-left: 1em;
  }
  .shelter#top #image {
    width: 100%;
    height: auto;
    background-size: contain;
  }
  .shelter#top #image:after {
    padding-top: 26.9%;
    display: block;
    content: "";
  }
  .shelter#top #menu {
    margin: 0;
    padding: 1em 0;
  }
  .shelter#top #menu li {
    margin: 0;
    padding: 0;
    width: 32%;
    background: none;
  }
  .shelter#top #menu li h2 {
    font-size: 16px;
    height: 2.5em;
  }
  .shelter#top #menu li p {
    font-size: 16px;
  }
  .shelter#top #menu li:nth-child(2) {
    padding: 0 2%;
  }
  .shelter#top #menu:after {
    display: block;
    clear: both;
    content: "";
  }
  .shelter#day h2 {
    margin: 1em 0 -3em 0;
    padding: 20% 0 0 5%;
    width: 95%;
    height: auto;
    background-size: contain;
  }
  .shelter#day h2:after {
    padding-top: 17%;
    display: block;
    content: "";
  }
  .shelter#day .photos {
    margin: 0;
    padding: 0;
    font-size: 0;
  }
  .shelter#day .photos li {
    width: 32%;
    height: auto;
    margin: 0;
    padding: 0;
    display: inline-block;
    float: none;
    vertical-align: top;
  }
  .shelter#day .photos li img {
    border: none;
  }
  .shelter#day .photos li.large {
    height: auto;
  }
  .shelter#day .photos li p {
    margin: 0;
    padding: 0;
  }
  .shelter#day .photos li:nth-child(2), .shelter#day .photos li:nth-child(5) {
    padding: 0 2%;
  }
  .shelter#day .photos li.large {
    width: 100%;
  }
  .shelter#day #bottom-menu {
    margin: 2em 0 1em 0;
    text-align: center;
  }
  .contents#cat-1st #menu {
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .contents#cat-1st #menu h2 {
    margin-top: 0;
  }
  .contents#cat-1st #menu li {
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .contents#cat-1st #menu li p {
    font-size: 16px;
    height: auto;
  }
  .contents#cat-1st h2 {
    font-size: 20px;
  }
  .contents#cat-1st table {
    border: none;
  }
  .contents#cat-1st table td ul {
    margin: 0 0 0 2em;
  }
  .contents#cat-1st table#age td, .contents#cat-1st table#age th {
    width: 100%;
    display: inline-block;
  }
  .contents#cat-1st table#goods td {
    width: 100%;
    display: inline-block;
  }
  .contents#cat-1st table#goods td img {
    width: 80%;
  }
  .contents#cat-1st img.graph {
    width: 100%;
  }
  .contents#cat-1st p {
    margin: 1em 0;
    padding: 0;
  }
  .contents#cat-1st .column {
    margin: 1em 0;
    padding: 0;
    width: 100%;
    background: none;
    text-align: left;
  }
  .contents#cat-1st .column > div {
    padding: 0.5em;
  }
  .contents#cat-1st .column h3 {
    margin: 0;
    font-size: 16px;
  }
  .contents#cat-1st .column p {
    margin: 0;
    padding: 0;
    font-size: 16px;
  }
  .contents#cat-1st .photobox {
    width: 46%;
    margin: 0;
    padding: 0 2%;
  }
  .contents#cat-1st .photobox-right {
    margin: 0 0 0 0.5em;
    padding: 0 0 0 0.5em;
    width: 45%;
    border-left: 1px dotted #DDD;
  }
  .contents#cat-1st #katazuke .photobox {
    padding: 0;
    width: 40%;
  }
  .contents#cat-1st #katazuke > img {
    width: 15%;
  }
  #sitemap ul li {
    line-height: 2;
  }
  #policy address {
    text-align: right;
  }
  #policy #article {
    padding: 0;
  }
  #policy #article #first {
    padding: 0 0.5em;
  }
  .vet#top #first {
    margin: 1em 0;
    padding: 0;
  }
  .vet#top #contents {
    margin: 0;
    padding: 0;
    width: 100%;
    float: none;
  }
  .vet#top #navigation {
    margin: 2em 0 0 0;
    padding: 0;
    width: 100%;
    float: none;
  }
  .vet#top #navigation h2 {
    font-size: 20px;
  }
  .vet#top #navigation ul {
    margin: 0;
  }
  .vet#top #navigation ul li {
    margin: 1em 0;
    padding: 0 0 0 2em;
    font-size: 16px;
    background-size: contain;
  }
  .vet .to-application {
    margin: 2em 0;
  }
  .vet .to-application img {
    width: 60% !important;
  }
  .vet .contact {
    margin: 1em 0;
    padding: 0;
    word-wrap: break-word;
  }
  .vet .form #month, .vet .form #date {
    display: inline-block;
    width: 30%;
  }
  .vet .form #month select, .vet .form #date select {
    width: 80%;
  }
  .vet .form .animal .kind, .vet .form .animal .sex {
    width: 90%;
  }
  .vet .form .animal .kind label:after, .vet .form .animal .sex label:after {
    content: "";
  }
  .vet iframe {
    width: 100%;
  }
  .bbs#top .to-bbs {
    margin: 0 0 2em 0;
  }
  .bbs#top .to-bbs img {
    width: 80%;
  }
  .basic-dog-training .index {
    width: 100%;
    margin: 0 0 2em 0;
    padding: 0;
  }
  .basic-dog-training .index li {
    float: none;
    text-align: center;
    width: 99%;
    margin: 0;
    padding: 0;
    border: 1px solid #888;
    border-radius: 0.5em;
  }
  .basic-dog-training .index li a {
    display: block;
    padding: 1em 0;
  }
  .basic-dog-training img.overflow {
    margin: 0;
  }
  .basic-dog-training .navigation {
    padding-top: 1em;
  }
  .basic-dog-training .step {
    height: auto;
    display: block;
  }
  .basic-dog-training .step:after {
    display: block;
    clear: both;
    content: "";
  }
  .basic-dog-training .one-point-advice {
    margin: 0;
    padding: 0.5em;
    border: 1px solid pink;
  }
  .shelter-new .topic_path {
    margin: 0 1em;
    padding: 1em 0;
  }
  .shelter-new #map {
    width: 100%;
    height: auto;
    background-size: contain;
    background-repeat: no-repeat;
  }
  .shelter-new #map #body {
    width: 100%;
    height: auto;
    float: none;
    position: normal;
  }
  .shelter-new #map #body:after {
    padding-top: 39.5%;
    content: "";
    display: block;
  }
  .shelter-new #map #menu {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .shelter-new #map #menu .item {
    width: 50%;
    height: auto;
    border: 0;
    float: left;
  }
  .shelter-new #map #menu .item img {
    vertical-align: bottom;
  }
  .shelter-new #map #display {
    margin: 0;
    padding: 0 0 0 1.3%;
    width: 100%;
    height: auto;
    top: 0;
  }
  .shelter-new #map #display #photo {
    width: 20%;
    margin: 0;
    padding: 2% 0 0 75%;
  }
  .shelter-new #map #display #text {
    display: none;
  }
  .shelter-new #map #submenu {
    display: none;
  }
  .shelter-new #map .star {
    display: none;
  }
  .shelter-new #bottom-menu {
    margin: 1em auto;
    padding: 0;
    width: 80%;
  }
  .shelter-new #bottom-menu a {
    display: block;
    padding: 1em 0;
  }
  .shelter-new#shelters h1 {
    margin: 0;
    padding: 0;
  }
  .shelter-new#shelters h1 img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  .shelter-new#shelters .page-item {
    margin: 0;
    padding: 40px 0 0 0;
    width: 100%;
    float: none;
    background-size: cover;
    text-align: center;
  }
  .shelter-new#shelters .page-item img {
    margin: 0;
    padding: 0;
    width: 80%;
  }
  .shelter-new#shelters .page-item p {
    font-size: 16px;
    margin: 0;
    padding: 1em 10% 40px 10%;
    background-size: cover;
  }
  .shelter-new#day .tasks ul.task-items {
    margin: 0;
  }
  .shelter-new#day .tasks ul.task-items li {
    width: 48%;
    margin: 0 2% 1em 0 !important;
  }
  .shelter-new#day .tasks ul.task-items li:nth-child(2n) {
    margin-right: 0;
  }
  .shelter-new#day .flow table {
    width: 100%;
  }
  .shelter-new#animals #main .animals ul li {
    width: 100%;
  }
  .shelter-new#animals #main .animals ul li:nth-child(even) {
    margin-left: 0;
  }
  .shelter-new#animals #main .animal p {
    width: 100%;
    margin: 1em 0;
  }
  .shelter-new#animals #main .animal p.text img {
    width: 40%;
  }
  .shelter-new#animals #main .animal p.skill {
    width: 100%;
    height: auto;
    margin: 2em 0 4em 0;
    position: relative;
    background: url(http://www.lifeboat.or.jp/shelter/images/animals-skill.png) no-repeat;
    background-size: contain;
    display: flex;
    align-items: center;
  }
  .shelter-new#animals #main .animal p.skill:after {
    padding-top: 15%;
    display: block;
    content: "";
  }
  .shelter-new#animals #main .animal p.skill span {
    display: block;
    margin-left: 20%;
    position: absolute;
    font-size: 25px;
  }
  .future-2024 .topic_path {
    margin: 0;
    font-size: 16px;
  }
  .future-2024 #contents {
    padding: 0 2%;
  }
  .future-2024 #contents p {
    font-size: 16px;
  }
  .future-2024 #contents p.comment {
    font-size: 16px;
  }
  .future-2024 #contents ul.pagemenu {
    margin: 0;
    font-size: 16px;
  }
  .future-2024 #contents ul.pagemenu li {
    margin: 0;
  }
  .staff .steps {
    margin: 1em 0;
  }
  .staff .steps li {
    margin: 0;
  }
  .staff .contact {
    margin: 1em 5%;
    padding: 1em 5%;
  }
  .staff .to-application {
    padding-top: 2em;
  }
  .staff .to-application img {
    width: 60% !important;
  }
  .recruit#siiku img.insert {
    float: none;
    width: 100%;
  }
  .recruit #container #main table.status th, .recruit #container #main table.status td {
    float: left;
    width: 90%;
    padding: 5% !important;
    border: 1px solid #4E7097;
  }
  .recruit #container #main .midcareer-flow {
    width: 100%;
    height: auto;
    background: none;
  }
  .recruit #container #main .midcareer-flow img {
    width: 100%;
  }
  .recruit #container #main .newgrad-flow {
    width: 100%;
    height: auto;
    background: none;
  }
  .recruit #container #main .newgrad-flow img {
    width: 100%;
  }
  .recruit #container #main .to-day-staff {
    text-align: center;
  }
  .recruit #container #main .to-day-staff img {
    width: 60%;
  }
  .recruit #container #main .to-application {
    padding: 2em 0;
  }
  .recruit #container #main .to-application img {
    width: 60%;
  }
  .recruit2#siiku img.insert {
    float: none;
    width: 100%;
  }
  .recruit2 #container #main table.status {
    margin-bottom: 2em;
  }
  .recruit2 #container #main table.status th, .recruit2 #container #main table.status td {
    float: left;
    width: 90%;
    padding: 5% !important;
    border: 1px solid #4E7097;
  }
  .recruit2 #container #main h2 {
    margin-bottom: 2em;
    padding: 0;
    border: 0;
    text-align: center;
    font-size: 28px;
  }
  .recruit2 #container #main h3 {
    margin: 0;
    font-size: 100%;
    text-align: center;
    color: #B68118;
  }
  .recruit2 #container #main section:after {
    content: none;
  }
  .recruit2 #container #main .index ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  .recruit2 #container #main .index ul li {
    flex: 0 0 45%;
    padding: 0 0 2em 0;
    text-align: center;
    list-style-type: none;
  }
  .recruit2 #container #main .index ul li:last-child {
    flex: 0 0 80%;
  }
  .recruit2 #container #main .work-images {
    display: flex;
    margin-top: 1em;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  .recruit2 #container #main .work-images div {
    margin-bottom: 1em;
    flex: 0 0 45%;
  }
  .recruit2 #container #main .work-images div img {
    width: 100%;
    vertical-align: bottom;
    margin: 0.5em 0;
  }
  .recruit2 #container #main .work-images div p {
    margin: 0;
    font-size: 90%;
  }
  .recruit2 #container #main .staff-images {
    display: block;
    margin-top: 2em;
  }
  .recruit2 #container #main .staff-images div {
    margin-bottom: 2em;
    flex: 0 0 90%;
    height: fit-content;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start;
  }
  .recruit2 #container #main .staff-images div h3 {
    flex: 0 0 100%;
    margin: 0 0 1em 0;
  }
  .recruit2 #container #main .staff-images div img {
    flex: 0 0 45%;
    width: 45%;
    height: 45%;
    align-items: flex-start;
    vertical-align: bottom;
    margin: 0.5em 0;
  }
  .recruit2 #container #main .staff-images div p {
    flex: 0 0 45%;
    margin: 1em 0;
    font-size: 90%;
  }
  .recruit2 #container #main .staff-images div:nth-child(odd) img {
    order: 2;
  }
  .recruit2 #container #main .staff-images div:nth-child(odd) p {
    order: 3;
  }
  .recruit2 #container #main .details {
    width: 100%;
  }
  .recruit2 #container #main .details h3 {
    margin: 1em 0;
  }
  .recruit2 #container #main .details .to-application {
    text-align: center;
  }
  .recruit2 #container #main .details .to-application p {
    margin: 1em 0;
  }
  .recruit2 #container #main .details .to-application img {
    width: 70%;
  }
  .about #container #main {
    margin-bottom: 5em;
  }
  .about #container #main h1 img {
    width: 100%;
  }
  .about #container #main h2 {
    margin-bottom: 2em;
    padding: 0;
    border: 0;
    text-align: center;
    font-size: 28px;
  }
  .about #container #main h3 {
    margin: 2em;
    font-size: 120%;
    text-align: center;
    color: #B68118;
  }
  .about #container #main section:after {
    content: none;
  }
  .about #container #main section p img {
    width: 100%;
  }
  .about #container #main section.donation {
    text-align: center;
  }
  .about #container #main section.donation a {
    display: block;
    width: 80%;
    margin: 3em auto;
    padding: 0.8em 0;
    color: #FFF;
    background-color: rgb(255, 70, 63);
    border-radius: 0.4em;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  }
  .about #container #main .index ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  .about #container #main .index ul li {
    flex: 0 0 70%;
    padding: 0 0 2em 0;
    text-align: center;
    list-style-type: none;
  }
  #contact .menkai-flow {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 2em;
    padding-top: 0;
    background: url(../images/menkai-flow-sp.png) no-repeat;
    background-size: cover;
    background: none;
  }
  #contact .menkai-flow p {
    font-size: 20px;
  }
  .contact .menkai-flow {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 1em;
    padding-top: 0;
    background-size: cover;
    background: none;
  }
  /* for clipmail cgi */
  #clipmail {
    width: 90%;
  }
  #clipmail table.form td {
    word-break: break-all;
  }
  #clipmail .buttons {
    padding: 2em 0;
  }
  #clipmail .buttons input {
    padding: 1em 0;
  }
  #clipmail .buttons .button {
    margin: 2em 0 0 0;
  }
  #baby-cats #container #main {
    width: 100%;
    margin: 0;
    padding: 0 0 1em 0;
    background-color: #DDD;
  }
  #baby-cats #container #main h1 {
    margin: 0;
    padding: 0;
  }
  #baby-cats #container #main article {
    width: 96%;
    margin: 1em 2%;
    padding: 0 0 1em 0;
    background-color: #FFF;
    border-radius: 0.5em;
  }
  #baby-cats #container #main article h2 {
    margin: 0;
    padding: 1em;
    border: none;
    color: #FFF;
    background-color: #E76800;
    border-top-left-radius: 0.5em;
    border-top-right-radius: 0.5em;
  }
  #baby-cats #container #main article section {
    padding: 0 1em;
  }
  #baby-cats #container #main article section h3 {
    font-size: 18px;
    font-weight: normal;
    color: rgb(51, 51, 51);
    text-decoration: underline;
  }
  #baby-cats #container #main article section h3:before {
    content: "◆";
  }
  #baby-cats #container #main article section p {
    width: 100%;
  }
  #baby-cats #container #main article section img {
    width: 100%;
  }
  #baby-cats #container #main article section table {
    margin: 1em 0;
  }
  #baby-cats #container #main article section table td {
    padding-left: 1em;
  }
  #baby-cats #container #main article section section {
    margin: 0;
    padding: 0;
  }
  #baby-cats #container #main article section.column {
    width: 90%;
    margin: 1em 2%;
    padding: 0 2% 0.5em 2%;
    border-radius: 0.5em;
    border: 1px solid #0589AE;
  }
  #baby-cats #container #main article#prologue {
    padding: 0.5em 0;
  }
  #baby-cats #container #main article#prologue h1 {
    color: rgb(51, 51, 51);
    font-weight: bold;
    margin-top: 0.5em;
  }
  #baby-cats #container #main ul.topic-path {
    margin: 0;
    padding: 0;
    color: #FFF;
    background: #4B1700;
  }
  #baby-cats #container #main ul.topic-path li {
    margin: 0;
    padding: 1em 1em 1em 2em;
    list-style-type: none;
    float: left;
    background: 0% 0% url(../images/baby-cats-topicpath.png) no-repeat #4B1700;
    background-size: contain;
  }
  #baby-cats #container #main ul.topic-path li:before {
    content: "";
  }
  #baby-cats #container #main ul.topic-path li:first-child {
    background-image: none;
    padding: 1em;
  }
  #baby-cats #container #main ul.topic-path li a {
    display: block;
    text-decoration: none;
  }
  #baby-cats #container #main ul.topic-path li a:visited, #baby-cats #container #main ul.topic-path li a:hover, #baby-cats #container #main ul.topic-path li a:link {
    color: #FFF;
  }
  #baby-cats #container #main ul.q-and-a li {
    margin: 1em 0;
  }
  #baby-cats #container #main ul.q-and-a li ul li {
    margin: 0;
  }
  #baby-cats #container #main ul.checklist li {
    font-size: 20px;
    background: url(../images/checkmark.png) no-repeat;
    background-size: contain;
    margin-left: 0.5em;
    padding-left: 2em;
  }
  #baby-cats #container #main ol.index {
    height: auto;
    border-radius: 0.5em;
    margin: 1em 2%;
    padding: 0.25em 0.5em;
    background-color: #FFF;
  }
  #baby-cats #container #main ol.index li {
    width: auto;
    height: auto;
    float: none;
    color: #4B1700;
    list-style-position: inside;
    margin: 0.5em 0;
    padding: 0;
  }
  #baby-cats #container #main ol.index li a {
    width: auto;
    height: auto;
    display: block;
    text-decoration: none;
    font-size: 16px;
    margin: 0;
    padding: 1em;
    color: rgb(51, 51, 51);
    background-color: #F9CC9D;
    border: none;
    border-radius: 0.5em;
    box-shadow: none;
  }
  #baby-cats #container #main ol.index li.current-page {
    font-weight: bold;
    color: #FFF;
  }
  #baby-cats #container #main ol.index li.current-page a {
    color: #FFF;
    background-color: #E76800;
  }
  #cats-with-disabilities * {
    box-sizing: border-box;
  }
  #cats-with-disabilities img {
    clear: both;
  }
  #cats-with-disabilities #container #main {
    width: 100%;
    margin: 0;
    padding: 0 0 1rem 0;
    background-color: #DDD;
  }
  #cats-with-disabilities #container #main h1 {
    margin: 0;
    padding: 0;
  }
  #cats-with-disabilities #container #main article {
    width: 100%;
    margin: 0;
    padding: 0 2%;
  }
  #cats-with-disabilities #container #main article section {
    width: 100%;
    margin: 1rem 0;
    padding: 0 0 1rem 0;
    border-radius: 0.5rem;
    background-color: #FFF;
  }
  #cats-with-disabilities #container #main article section h2 {
    margin: 0;
    padding: 1rem;
    border: none;
    color: #FFF;
    background-color: #708F62;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
  }
  #cats-with-disabilities #container #main article section p {
    margin: 0;
    padding: 1rem;
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section img {
    width: 100%;
    padding: 1rem 1rem 0 1rem;
  }
  #cats-with-disabilities #container #main article section ul {
    padding: 0 1rem;
  }
  #cats-with-disabilities #container #main article section ul li {
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section q {
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section q:before {
    content: "“";
  }
  #cats-with-disabilities #container #main article section q:after {
    content: "”";
  }
  #cats-with-disabilities #container #main article section#prologue {
    padding: 1rem 0;
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section#prologue h2 {
    margin: 0 1rem;
    padding: 0.5rem;
    color: rgb(51, 51, 51);
    font-weight: bold;
    border-radius: 0;
    background-color: #DDD;
  }
  #cats-with-disabilities #container #main article section#prologue li {
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section#prologue p {
    margin: 0;
    padding: 1rem;
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section#prologue p a {
    font-size: 20px;
  }
  #cats-with-disabilities #container #main article section.cats p.note {
    font-size: 14px;
    color: rgb(51, 51, 51);
    padding-bottom: 0;
  }
  #cats-with-disabilities #container #main article section.cats ul {
    display: block;
    padding: 0;
  }
  #cats-with-disabilities #container #main article section.cats ul li {
    margin: 1rem 0;
    list-style-type: none;
    background-color: #FFEDDE;
  }
  #cats-with-disabilities #container #main article section.cats ul li a {
    display: flex;
    margin: 0;
    padding: 0;
  }
  #cats-with-disabilities #container #main article section.cats ul li a:visited, #cats-with-disabilities #container #main article section.cats ul li a:link {
    text-decoration: none;
    color: #E76800;
  }
  #cats-with-disabilities #container #main article section.cats ul li a div {
    flex-basis: 40%;
    font-size: 0;
  }
  #cats-with-disabilities #container #main article section.cats ul li a p {
    margin: 0;
    padding: 0 0 0 1rem;
    flex-basis: 67%;
    flex-shrink: 1;
    font-size: 2em;
  }
  #cats-with-disabilities #container #main article section.cats ul li a p.male {
    background: url(../images/cats-with-disabilities-male.png) no-repeat;
    background-size: auto 70%;
    background-position: right 0.5em bottom 0.5em;
  }
  #cats-with-disabilities #container #main article section.cats ul li a p.female {
    background: url(../images/cats-with-disabilities-female.png) no-repeat;
    background-size: auto 70%;
    background-position: right 0.5em bottom 0.5em;
  }
  #cats-with-disabilities #container #main article section.cats ul li a img {
    padding: 0;
  }
  #cats-with-disabilities #container #main article section.back {
    border-radius: 0.5rem;
    padding: 1rem;
  }
  #cats-with-disabilities #container #main article section.back a {
    display: block;
    margin: 0 auto;
    padding: 0.5rem;
    width: 70%;
    background-color: #9EBD90;
    text-align: center;
  }
  #cats-with-disabilities #container #main article section.back a:visited, #cats-with-disabilities #container #main article section.back a:link {
    text-decoration: none;
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
  }
  #cats-with-disabilities #container #main article section.column {
    width: 90%;
    margin: 1rem 2%;
    padding: 0 2% 0.5rem 2%;
    border-radius: 0.5rem;
    border: 1px solid #0589AE;
  }
  #cats-with-disabilities #container #main article.cat #prologue {
    display: block;
  }
  #cats-with-disabilities #container #main article.cat #prologue h2 {
    background-color: #FFE0FA;
  }
  #cats-with-disabilities #container #main article.cat h3 {
    margin: 1em 1rem 0 1rem;
    font-size: 18px;
    font-weight: normal;
    color: rgb(51, 51, 51);
    text-decoration: underline;
  }
  #cats-with-disabilities #container #main article.cat .before {
    font-size: 0.75em;
    text-align: center;
    color: #888;
  }
  #cats-with-disabilities #container #main article.cat .before:after {
    content: "\a※ライフボートにいたときの写真です";
  }
  #cats-with-disabilities #container #main article.cat .survey {
    display: block;
  }
  #cats-with-disabilities #container #main article.cat .survey section {
    display: block;
  }
  #cats-with-disabilities #container #main article.cat .survey section h3 {
    background-color: #FFE0FA;
    text-decoration: none;
    padding: 0.5em 1rem;
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q1:before {
    content: "Q1.引取を決めたポイント";
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q2:before {
    content: "Q2.この子と暮らしててよかった！";
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q3:before {
    content: "Q3.これだけは手を焼いているんだよな";
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q4:before {
    content: "Q4.工夫をしていること";
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q5:before {
    content: "Q5.一緒に暮らし始める前と後で印象が変わったところ";
  }
  #cats-with-disabilities #container #main article.cat .survey section h3.q6:before {
    content: "Q6.自由にご記入ください";
  }
  #cats-with-disabilities #container #main article.cat .survey section img {
    max-width: 100%;
  }
  #cats-with-disabilities #container #main ul.topic-path {
    margin: 0;
    padding: 0;
    color: #FFF;
    background: #06480F;
  }
  #cats-with-disabilities #container #main ul.topic-path li {
    margin: 0;
    padding: 1rem 1rem 1rem 2rem;
    list-style-type: none;
    float: left;
    background: 0% 0% url(../images/cats-with-disabilities-topicpath.png) no-repeat #06480F;
    background-size: contain;
  }
  #cats-with-disabilities #container #main ul.topic-path li:before {
    content: "";
  }
  #cats-with-disabilities #container #main ul.topic-path li:first-child {
    background-image: none;
    padding: 1rem;
  }
  #cats-with-disabilities #container #main ul.topic-path li a {
    display: block;
    text-decoration: none;
  }
  #cats-with-disabilities #container #main ul.topic-path li a:visited, #cats-with-disabilities #container #main ul.topic-path li a:hover, #cats-with-disabilities #container #main ul.topic-path li a:link {
    color: #FFF;
  }
  #cats-with-disabilities #container #main ul.disabilities {
    padding: 0;
  }
  #cats-with-disabilities #container #main ul.disabilities li {
    margin: 1rem 0;
    list-style-type: none;
  }
  #cats-with-disabilities #container #main ul.disabilities li a {
    font-size: 0;
    display: block;
    background-color: #9EBD90;
    margin: 0;
    padding: 0;
  }
  #cats-with-disabilities #container #main ul.disabilities li a:visited, #cats-with-disabilities #container #main ul.disabilities li a:link {
    text-decoration: none;
    color: rgb(51, 51, 51);
  }
  #cats-with-disabilities #container #main ul.disabilities li a img {
    width: 100%;
    padding: 0;
  }
  #credit-card .brand img {
    width: auto;
    height: 2em;
    margin-right: 0.5em;
  }
  #credit-card #empty-alert {
    color: red;
  }
  #pageTop {
    display: none;
    position: fixed;
    width: 3.5rem;
    height: 3.5rem;
    bottom: 2rem;
    right: 1rem;
    z-index: 999;
    background: url("../images/btn-pagetop.png") no-repeat;
    background-size: cover;
  }
  #pageTop a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #subMenu {
    display: none;
    position: fixed;
    width: 3.5rem;
    height: 7.5rem;
    bottom: 2rem;
    right: 1rem;
    z-index: 100;
  }
  #subMenu #topBtn {
    display: block;
    position: fixed;
    width: 3.5rem;
    height: 3.5rem;
    bottom: 6rem;
    background: url("../images/btn-pagetop.png") no-repeat;
    background-size: cover;
    z-index: 200;
  }
  #subMenu #topBtn a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #subMenu #menuBtn {
    display: block;
    position: fixed;
    width: 3.5rem;
    height: 3.5rem;
    bottom: 2rem;
    background: url("../images/btn-pagemenu.png") no-repeat;
    background-size: cover;
    z-index: 200;
  }
  #subMenu #menuBtn.open {
    background: url("../images/btn-pagemenu-close.png") no-repeat;
    background-size: cover;
  }
  #subMenu #list {
    display: none;
    position: fixed;
    width: auto;
    height: auto;
    bottom: 6rem;
    left: 0.5rem;
    right: 0.5rem;
    list-style-type: none;
    margin: 0;
    padding: 0;
    background-color: #754C24;
    z-index: 300;
  }
  #subMenu #list li {
    padding: 0;
    color: #FFFFFF;
    border: 1px solid #FFFFFF;
  }
  #subMenu #list li a {
    display: block;
    padding: 1rem;
    text-decoration: none;
  }
  #subMenu #list li a:link, #subMenu #list li a:hover, #subMenu #list li a:visited {
    color: #FFFFFF;
  }
  .cooperation2 a.inner-link {
    width: 80%;
  }
  .cooperation2 a.outer-link {
    width: 80%;
  }
  .cooperation2 p {
    margin: 1em 0;
  }
  .cooperation2 #main {
    width: 100%;
    padding: 0;
  }
  .cooperation2 #main h1 {
    margin: 1em 5%;
  }
  .cooperation2 #main img.insert {
    width: 100%;
    vertical-align: bottom;
  }
  .cooperation2 #main section.aid-buttons {
    border: none !important;
    padding: 0 !important;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cooperation2 #main section.aid-buttons:after {
    content: none;
  }
  .cooperation2 #main section.aid-buttons a {
    display: block;
    flex: 0 0 47.2%;
    margin: 0.6em 0;
    padding: 0.6em 0;
    text-decoration: none;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    border-radius: 0.4rem;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  }
  .cooperation2 #main section.aid-buttons a.donate {
    border: 2px solid rgb(255, 70, 63);
    background-color: rgb(255, 70, 63);
  }
  .cooperation2 #main section.aid-buttons a.donate:before {
    content: "お金を寄付する";
  }
  .cooperation2 #main section.aid-buttons a.mono {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons a.mono:before {
    content: "物を寄付する";
  }
  .cooperation2 #main section.aid-buttons a.point {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons a.point:before {
    content: "ポイントで寄付する";
  }
  .cooperation2 #main section.aid-buttons a.others {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons a.others:before {
    content: "行動で支援する";
  }
  .cooperation2 #main section.aid-buttons-mini {
    border: none !important;
    padding: 0 !important;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cooperation2 #main section.aid-buttons-mini:after {
    content: none;
  }
  .cooperation2 #main section.aid-buttons-mini a {
    display: block;
    flex: 0 0 20%;
    height: 1.2em;
    margin: 0.6em 0;
    padding: 0.6em 0;
    text-decoration: none;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    border-radius: 0.4rem;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  }
  .cooperation2 #main section.aid-buttons-mini a.donate {
    border: 2px solid rgb(255, 70, 63);
    background-color: rgb(255, 70, 63);
  }
  .cooperation2 #main section.aid-buttons-mini a.donate:before {
    content: "寄付金";
  }
  .cooperation2 #main section.aid-buttons-mini a.mono {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons-mini a.mono:before {
    content: "物を寄付";
  }
  .cooperation2 #main section.aid-buttons-mini a.point {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons-mini a.point:before {
    content: "ポイント寄付";
  }
  .cooperation2 #main section.aid-buttons-mini a.others {
    color: rgb(44, 44, 175);
    border: 1px solid rgb(44, 44, 175);
  }
  .cooperation2 #main section.aid-buttons-mini a.others:before {
    content: "行動で支援";
  }
  .cooperation2 #main section .social-icons {
    display: flex;
    justify-content: space-between;
    margin-top: 3em;
    width: 70%;
  }
  .cooperation2 #main section .social-icons a {
    display: block;
    flex: 0 0 16%;
  }
  .cooperation2 #main p.report {
    text-align: center;
    margin: 2em 0;
  }
  .cooperation2 #main #tabui {
    margin: 2em 5% 5em 5%;
  }
  .cooperation2 #main #tabui .tab-control {
    margin: 0 0 2em 0;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
    border-bottom: 2px solid rgb(255, 172, 63);
    z-index: 0;
  }
  .cooperation2 #main #tabui .tab-control li {
    margin: 0 0 -2px 0;
    padding: 0.5em 0;
    flex: 0 0 24%;
    text-align: center;
    border: 1px solid #858585;
    border-bottom: 2px solid rgb(255, 172, 63);
    border-radius: 0.3rem 0.3rem 0 0;
    background-color: #DDD;
    z-index: 10;
  }
  .cooperation2 #main #tabui .tab-control li.selected {
    font-weight: bold;
    border: 2px solid rgb(255, 172, 63);
    border-bottom: #FFF;
    background-color: #FFF;
  }
  .cooperation2 #main #tabui .tab-sheet {
    display: none;
  }
  .cooperation2 #main #tabui .tab-sheet.selected {
    display: block;
  }
  .cooperation2 #main #tabui .tab-sheet > section {
    margin: 5% 0;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2 #main #tabui .tab-sheet > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  .cooperation2 #main #tabui .tab-sheet > section p {
    margin: 2em 1em;
  }
  .cooperation2 #main #tabui .tab-sheet > section p.link {
    text-align: center;
    margin: 3em 0 2em;
  }
  .cooperation2 #main #tabui .tab-sheet > section.creditcard-link #any-amount #am {
    width: 60%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#bank-list h2 {
    border-bottom: 0;
  }
  .cooperation2 #main #tabui .tab-sheet > section#bank-list table {
    margin: 1em 0;
  }
  .cooperation2 #main #tabui .tab-sheet > section#bank-list table thead {
    background-color: #DDD;
  }
  .cooperation2 #main #tabui .tab-sheet > section#bank-list table tbody th {
    width: 30%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#bank-list table tbody td.number {
    font-size: 20px;
    text-align: left;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list h2 {
    border-bottom: 0;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table {
    margin: 1em 0;
    width: 100%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table thead {
    background-color: #DDD;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody th {
    width: 30%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td {
    padding: 0.5em;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address {
    text-align: left;
    word-break: break-all;
    display: flex;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:first-child {
    flex: 1 0 80%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:last-child {
    flex: 0 1 20%;
  }
  .cooperation2 #main #tabui .tab-sheet > section#crypt-list table tbody td.address span:last-child img {
    opacity: 1;
  }
  .cooperation2 #main #tabui .tab-sheet > section#project h3 {
    margin: 2em 0 2em 1em;
    color: rgb(51, 51, 51);
  }
  .cooperation2 #main #tabui .tab-sheet > section#project ul {
    margin: 1em 1em 1em 2em;
  }
  .cooperation2 #main #tabui .tab-sheet#others img {
    width: 100%;
  }
  .cooperation2 #main .banking table {
    margin: 1em 0;
  }
  .cooperation2 #main .banking table thead {
    background-color: #DDD;
  }
  .cooperation2 #main .banking table tbody th {
    width: 30%;
  }
  .cooperation2 #main .banking table tbody td.number {
    font-size: 20px;
    text-align: left;
  }
  .cooperation2 #main .usage-list {
    margin: 2em 5%;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2 #main .usage-list p {
    margin: 0;
    display: flex;
    align-items: center;
  }
  .cooperation2 #main .usage-list p img {
    flex: 0 0 25%;
    width: auto;
    height: 5em;
    margin-right: 1em;
  }
  .cooperation2 #main .mini-menu {
    margin: 1.5em 5% 0.5em 5%;
    text-align: right;
  }
  .cooperation2 #main #bookmarks {
    display: block;
    margin: 1em 1.5em;
    list-style-type: none;
  }
  .cooperation2 #main #bookmarks li {
    margin: 0.5em 0;
    padding-left: 1.5em;
    background: 0 50% url(../images/cooperation-icon-bookmark.svg) no-repeat;
    background-size: 1.3em;
    line-height: 2em;
    color: #888;
  }
  .cooperation2 #main #onetime-creditcard form fieldset {
    border: none;
  }
  .cooperation2#top #main {
    width: 100%;
    padding: 0;
  }
  .cooperation2#top #main h1 {
    margin: 0.5em 0;
  }
  .cooperation2#top #main #donate-tab {
    margin: 2em 0;
  }
  .cooperation2#top #main > section {
    margin: 5%;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2#top #main > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  .cooperation2#top #main > section p {
    margin: 2em 1em;
  }
  .cooperation2#top #main > section p.link {
    text-align: center;
    margin: 3em 0 2em;
  }
  .cooperation2#top #main .sevensmile-campaign img {
    width: 90%;
    margin: 0 5%;
  }
  .cooperation2#top #main .sevensmile-campaign p {
    margin: 1em 5% 0 5%;
  }
  .cooperation2#donate #main .progress {
    text-align: center;
  }
  .cooperation2#donate #main .progress img {
    width: 100%;
  }
  .cooperation2#monthly-bank #main {
    width: 90%;
    padding: 0 5% 5em 5%;
  }
  .cooperation2#monthly-bank #main h1 {
    margin: 0.5em 0;
  }
  .cooperation2#monthly-bank #main #donate-tab {
    margin: 2em 0;
  }
  .cooperation2#monthly #main #tabui .tab-control {
    border-bottom: 2px solid rgb(255, 70, 63);
  }
  .cooperation2#monthly #main #tabui .tab-control li {
    border-bottom: 2px solid rgb(255, 70, 63);
  }
  .cooperation2#monthly #main #tabui .tab-control li.selected {
    border: 2px solid rgb(255, 70, 63);
    border-bottom: #FFF;
  }
  .cooperation2#monthly #main #tabui .donate-value-list a {
    display: block;
    width: 100%;
    margin: 0.8em auto;
    padding: 0.8em 0;
    text-align: center;
    text-decoration: none;
    color: rgb(51, 51, 51);
    border: 1px solid #555;
  }
  .cooperation2#monthly #main #tabui .donate-value-list a span {
    font-size: 120%;
    font-weight: bold;
  }
  .cooperation2#monthly #main #tabui .donate-value-list a:before {
    display: inline-block;
    vertical-align: text-bottom;
    content: "";
    width: 0;
    height: 0;
    margin-right: 0.5em;
    border-style: solid;
    border-top: 0.5em solid transparent;
    border-bottom: 0.5em solid transparent;
    border-left: 0.87em solid rgb(255, 70, 63);
    border-right: 0;
  }
  .cooperation2#monthly #main #tabui .donate-value-list p {
    margin: 2em 0;
    display: flex;
    align-items: center;
  }
  .cooperation2#monthly #main #tabui .donate-value-list p img {
    flex: 0 0 25%;
    width: auto;
    height: 5em;
    margin-right: 1em;
  }
  .cooperation2#point #main {
    margin-bottom: 5em;
  }
  .cooperation2#point #main h1 {
    margin: 1em 5%;
  }
  .cooperation2#point #main .sevensmile-campaign img {
    width: 100%;
    margin: 0;
  }
  .cooperation2#point #main .sevensmile-campaign p {
    margin: 1em 5% 0 5%;
  }
  .cooperation2#others #main > p {
    margin: 1em 10%;
  }
  .cooperation2#others #main > section p:last-child {
    text-align: center;
  }
  .cooperation2#mono #main {
    margin-bottom: 5em;
  }
  .cooperation2#mono #main > section {
    margin: 5% 5%;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2#mono #main > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  .cooperation2#mono #main > section em {
    color: rgb(51, 51, 51);
    text-decoration: underline;
  }
  .cooperation2#mono #main > section #items {
    display: block;
  }
  .cooperation2#mono #main > section #items .item {
    display: block;
    border: none;
    margin: 1em 0;
    width: 100%;
  }
  .cooperation2#mono #main > section #items .item h4 {
    color: #754C24;
    border: dotted #754C24;
    border-width: 0.2em 0 0.2em 0;
    font-size: 22px;
    font-weight: bold;
    width: 100%;
    text-align: center;
    margin: 1.5em 0 1em 0;
    padding: 0.5em 0;
  }
  .cooperation2#mono #main > section #items .item h5 {
    margin: 1em 0;
  }
  .cooperation2#mono #main > section #items .item em {
    color: blue;
  }
  .cooperation2#mono #main > section #items .item .stock {
    margin: 0.5em 0 1em 0;
    padding: 0.1em 0;
    display: block;
    width: 100%;
    text-align: center;
    border: 1px solid #DDD;
    background-size: 100% 100%;
  }
  .cooperation2#mono #main > section #items .item .stock.towel {
    margin-top: 0.5em;
  }
  .cooperation2#mono #main > section #items .item .stock.quantity0 {
    background-image: url(../images/cooperation-mono-quantity0.png);
  }
  .cooperation2#mono #main > section #items .item .stock.quantity1 {
    background-image: url(../images/cooperation-mono-quantity1.png);
  }
  .cooperation2#mono #main > section #items .item .stock.quantity2 {
    background-image: url(../images/cooperation-mono-quantity2.png);
  }
  .cooperation2#mono #main > section #items .item .stock.quantity3 {
    background-image: url(../images/cooperation-mono-quantity3.png);
  }
  .cooperation2#mono #main > section #items .item .stock.quantity4 {
    background-image: url(../images/cooperation-mono-quantity4.png);
  }
  .cooperation2#mono #main > section #items .item p {
    margin: 0;
    padding: 0 1%;
    display: inline-block;
    width: 100%;
  }
  .cooperation2#mono #main > section #items .item span {
    color: #ff863b;
    font-size: 24px;
    font-weight: bold;
  }
  .cooperation2#mono #main > section #items .item.newspaper p {
    display: block;
    width: 100%;
  }
  .cooperation2#mono #main > section #items .item.towel .status {
    display: flex;
    margin-top: 0;
    flex-wrap: wrap;
  }
  .cooperation2#mono #main > section #items .item.towel .status div {
    flex: 2 1 50%;
    margin: 5px 0;
    text-align: center;
  }
  .cooperation2#mono #main > section #items .item.towel .status .stock {
    flex: 1 2 46%;
  }
  .cooperation2#mono #main > section #items .item.towel .sizes {
    margin-top: 2em;
  }
  .cooperation2#mono #main > section #items .item.towel .status div {
    flex: 0 0 30%;
  }
  .cooperation2#mono #main > section #items .item.towel .status .stock {
    flex: 1 0 60%;
  }
  .cooperation2#mono #main > section#address p {
    font-size: 24px;
  }
  .cooperation2#mono #main > section#qa .qa-items {
    margin: 1em 0;
    list-style-type: none;
  }
  .cooperation2#mono #main > section#qa .qa-items li {
    border-bottom: 2px dotted #888;
  }
  .cooperation2#mono #main > section#qa .qa-items li:last-child {
    border-bottom: none;
  }
  .cooperation2#mono #main > section#qa .qa-items li p:first-child:before {
    content: "Q";
    margin-right: 0.5em;
    font-size: 20px;
    font-weight: bold;
    color: #BA5E5E;
  }
  .cooperation2#mono #main > section#qa .qa-items li p:last-child:before {
    content: "A";
    margin-right: 0.5em;
    font-size: 20px;
    font-weight: bold;
    color: #5E5EBA;
  }
  .cooperation2#mono #main > section#shopping h3 {
    margin-top: 2em;
  }
  .cooperation2#mono #main > section#shopping img {
    width: 100%;
  }
  .cooperation2#action #main {
    margin-bottom: 5em;
  }
  .cooperation2#action #main .action-items {
    display: block;
    margin: 0;
  }
  .cooperation2#action #main .action-items > section {
    margin: 5% 0;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2#action #main .action-items > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  .cooperation2#action #main .action-items > section p:last-child {
    text-align: center;
  }
  .cooperation2#action #main .action-items > section .social-icons {
    display: flex;
    justify-content: space-between;
  }
  .cooperation2#action #main .action-items > section .social-icons a {
    display: block;
    flex: 0 0 23%;
  }
  .cooperation2#cancel #main {
    margin-bottom: 5em;
  }
  .cooperation2#cancel #main > p {
    margin: 1em 10%;
  }
  .cooperation2#cancel #main > section {
    margin: 5% 5%;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2#cancel #main > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  .cooperation2#cancel #main > section p:last-child {
    text-align: center;
  }
  .cooperation2#cancel #main > section input[type=submit] {
    display: block;
    width: 70%;
    margin: 0.5em auto;
    padding: 0.8em 0;
  }
  .cooperation2#qa #main {
    margin-bottom: 5em;
  }
  .cooperation2#qa #main > p {
    margin: 1em 10%;
  }
  .cooperation2#qa #main > ul {
    margin: 5%;
    list-style-type: none;
  }
  .cooperation2#qa #main > ul > li {
    border-top: 5px dotted rgb(200, 200, 200);
    padding: 1em 0.5em;
  }
  .cooperation2#qa #main > ul > li:first-child {
    border: none;
  }
  .cooperation2#qa #main > ul > li div:first-child:before {
    content: "Q: ";
    font-size: 24px;
    font-weight: bold;
    color: rgb(255, 100, 100);
  }
  .cooperation2#qa #main > ul > li div:last-child:before {
    content: "";
  }
  .cooperation2#qa #main > section {
    margin: 5% 5%;
    padding: 5%;
    border: 1px solid #888;
    border-radius: 0.8rem;
  }
  .cooperation2#qa #main > section h2 {
    margin: 1em 0 2em 0;
    padding: 0;
    border: 0;
    text-align: center;
    color: rgb(44, 44, 175);
  }
  #charm .pc {
    display: none;
  }
  #charm .sp {
    display: block;
    width: 100%;
    margin: 2em auto;
    color: #333;
  }
  #charm .sp img {
    width: 100%;
  }
  #charm .sp p {
    margin-top: 0;
    font-size: 12px;
    text-align: center;
  }
  #mail-sent #main {
    padding: 0 2% 2em 2%;
  }
  .cf-slider {
    width: 100vw;
  }
  .cf-slider .swiper {
    width: 100%;
  }
  .cf-slider .swiper .swiper-wrapper {
    width: 100%;
  }
  .cf-slider .swiper .swiper-wrapper .swiper-slide {
    width: 100%;
  }
  .cf-slider .swiper .swiper-wrapper .swiper-slide img {
    width: 100%;
  }
  .cf-slider .swiper .swiper-button-next {
    color: #FFF;
    opacity: 0.8;
  }
  .cf-slider .swiper .swiper-button-prev {
    color: #FFF;
    opacity: 0.8;
  }
  .cf-slider .swiper .swiper-pagination-bullet {
    width: 0.8em;
    height: 0.8em;
    margin: 0.2em !important;
    background: #fff !important;
  }
  .cf-slider .swiper .swiper-pagination-bullet-active {
    opacity: 0.8;
  }
  .cf-banner {
    padding-top: 1em !important;
  }
}