﻿@charset "utf-8";

h1{
    font-size: 26px;
    background-color: #01A8A7;
    background-image: url(../images/tit_bg.jpg);
    background-size: cover;
    color: #fff;
    padding: 8px 10px;
    margin-bottom: 10px;
}
#cn-main #sns {
    display: inline;
    text-align: left;
}

/*-------mother-------*/
p.theme{
    font-size: 12px;
    background-color: #ededee;
    font-weight: bold;
    padding: 5px;
    letter-spacing: -0.5px;
}
p.theme span{
    color: #c31468;
}

/*-------main_tit-------*/
.main_tit span.main_scene{
    display: inline-block;
    background-color: #1ba5a6;
    border: 1px solid #1ba5a6;
    border-radius: 2px;
    color: #fff;
    width: 65px;
    height: 20px;
    font-size: 13px;
    text-align: center;
    margin-right: 5px;
}
.main_tit span.main_year{
    font-size: 14px;
    letter-spacing: -0.8px;
}
.main_tit p{
    margin-bottom: 7px;
}
.main_tit h2{
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: -1.7px;
    margin-bottom: 13px!important;
}


/*-------diary-------*/
.diary{
    margin-bottom: 10px;
}
.diary_img{
    text-align: center;
    margin-bottom: 20px;
}
p.days{
    margin-bottom: 15px;
    border-bottom: 2px solid #efeeef;
}

.diary_txt p{
    letter-spacing: -0.8px;
    margin-bottom: 20px;
    font-size: 15px;
}
.diary_txt p:last-child{
    margin-bottom: 10px;
}
.diary_txt span{
    color: #c1417e;
}


/*-------note-------*/
.note{
    margin-bottom: 25px;
}
.note p{
    text-align: center;
    font-weight: bold;
    margin-bottom: 0;
}
.note dl{
    padding: 10px 10px;
    margin-bottom: 10px;
}
.note dd{
    font-size: 13px;
    letter-spacing: -1.5px;
}
.note_con01,.note_con02,.note_con03{
    background-color: #EEEEEE;
}

/*-------point-------*/
.point{
    margin-bottom: 20px;
}
h4{
    background-color: #01A8A7;
    color: #fff;
    font-size: 13px;
    padding: 1.5px 0 1.5px 10px;
}
.point dl{
    padding: 13px 10px;
    border: 2px solid #01A8A7;
    border-top: none;
    
}
.point dl dt{
    margin-bottom: 5px;
    color: #01A8A7;
}
/*-------answer-------*/
h3{
    color: #01A8A7;
    font-weight: bold;
    margin-bottom: 13px;
    font-size: 20px;
    letter-spacing: -1px;
}
.answer p{
    letter-spacing: -0.8px;
    line-height: 1.9;
}

h5{
    font-size: 12px;
    letter-spacing: -0.8px;
}

/*-------ask-------*/
.ask{
    background-color: #F7F7F7;
    padding: 15px;
    margin-bottom: 20px;
}
.ask_prof{
    display: flex;
}
.ask h4{
    color: #01A8A7;
    margin-bottom: 10px;
    background-color: #F7F7F7;
    padding: 0;
}
.ask dt{
    font-weight: bold;
}

/*-------scene-------*/

.scene{
    background-color: #01A8A7;
    margin-bottom: 30px;
    background-image: url(../images/arrow_sp.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.scene a{
    display: block;
    color: #fff;
    text-decoration: none;
}
.scene_inner{
    padding: 8.5px 8px;
    line-height: 0.9;
}
.scene_inner p{
    margin-bottom: 5px;
    font-size: 12px;
}

span.scene_sub01{
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 2px;
    color: #01A8A7;
    font-weight: bold;
    letter-spacing: -0.6px;
    text-align: center;
    margin-right: 5px;
    width: 50px;
    height: 15px;
    display: inline-block;
    font-size: 10px;
}
.subtheme{
    display: inline-block;
    margin-bottom: 8px;
    font-size: 10px;
}

/*-------banner-------*/
.banner{
    margin-bottom: 30px;
    text-align: center;
}

/*-------credit-------*/
.credit{
    font-size: 10px!important;
    text-align: right;
    margin-top: 30px ;
    padding: 0 10px 40px 10px;
}
.credit span{
    border: 1px solid #E6E6E6;
    padding: 1px 5px;
    margin-left: 3px;
}


/* メニューボタン処理(通常) */ 
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: fixed;
  top: 8px;
  right: 10px;
  width: 36px;
  height: 30px;
  cursor: pointer;
  z-index: 100000;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  /*background-color: #005AAB;*/
  background-color: #333333;
  border-radius: 4px;
  /*box-shadow: 0 0 2px #000;*/
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 13px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
/* メニューボタン処理(メニューリストオープン時) */ 
.open .menu-trigger span {
  background-color: #000;
  z-index: 1000000;
}  
.open .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(13px) rotate(-45deg);
  transform: translateY(13px) rotate(-45deg);
  box-shadow: 0 0 0 #000;
}
.open .menu-trigger span:nth-of-type(2) {
  opacity: 0;
  box-shadow: 0 0 0 #000;
}
.open .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-13px) rotate(45deg);
  transform: translateY(-13px) rotate(45deg);
  box-shadow: 0 0 0 #000;
}  
/* メニューリストレイアウト */ 
.menu {
  position: fixed;
  display: table;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transition: all .5s;
  transition: all .5s;
  visibility: hidden;
  opacity: 0;
  z-index: 10000;
}
.menu ul {
  display: table-cell;
  vertical-align: middle;
  list-style: none;
  padding-left:0;
  padding-top: 0;
}
.menu li {
  line-height: 1.4;
  margin: 0 auto;
  text-align: center;
  width: 100%;
}
.menu li a {
  display: block;
/*  font-size: 1.6rem;*/
  color: #fff;
  text-decoration: none;
  z-index: 1;
/*  padding: 20px 0;*/
}
/*
.menu li a:hover {
  color: #fff;
}
*/
.menu__next {
  padding-left: 10px;
}
.menu__next a:after {
  content: "\f105";
  font-family: FontAwesome;
  opacity: 1.0;
  padding-left: 10px;
  transition: all .3s;
}
.menu__next a:hover:after {
  /*padding-left: 20px;*/
}
.menu__nextPage {
  padding-left: 10px;
}
.menu__nextPage a:after {
  content: "\f101";
  font-family: FontAwesome;
  opacity: 1.0;
  padding-left: 10px;
  transition: all .3s;
}
.menu__nextPage a:hover:after {
  /*padding-left: 20px;*/
}
.menu__previous {
  padding-right: 10px;
}
.menu__previous a:before {
  content: "\f104";
  font-family: FontAwesome;
  opacity: 1.0;
  padding-right: 10px;
  transition: all .3s;
}
.menu__previous a:hover:before {
  padding-right: 20px;
}
.menu__previousPage {
  padding-right: 10px;
}
.menu__previousPage a:before {
  content: "\f100";
  font-family: FontAwesome;
  opacity: 1.0;
  padding-right: 10px;
  transition: all .3s;
}
.menu__previousPage a:hover:before {
  /*padding-right: 20px;*/
}
.menu__profile a:after {
  content: "\f2c0";
  font-family: FontAwesome;
  opacity: 1.0;
  padding-left: 10px;
  transition: all .3s;
}
.menu__profile a:hover:after {
  /*padding-left: 15px;*/
}
.menu__previous {
  padding-right: 10px;
}
/* メニューリストレイアウト（メニューリストオープン時） */ 
.open .menu {
  -webkit-transition: all .5s;
  transition: all .5s;
  visibility: visible;
  opacity: 1;
}


/*------menu_txt-------*/
div.menu a:hover{
	-webkit-opacity: 1;
	-moz-opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	opacity: 1;
}
li.sp_category01{
    background-color: #01A8A7;
    border-bottom: 1px solid #fff;
    background-image: url(../images/arrow_03.png);
    background-repeat: no-repeat;
    background-position: right 20px center;
}
li.sp_category01 a{
    text-align: left;
    padding: 10px 0 10px 20px;
    line-height: 1.2;
}

li.sp_category02{
    background-image: url(../images/arrow_02.png);
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-color: #F4FFFF;
}
li.sp_category02 a{
    text-align: left;
    border-bottom: 1px solid #eef8f9;
    padding: 6px 0 6px 20px;
    color: #333;
}
li.sp_category02 span.sp_txt01{
    display: inline-block;
    background-color: #01A8A7;
    color: #fff;
    margin: 0 5px 5px 0;
    padding: 0.5px 8.5px;
    border: 1px solid #01A8A7;
    border-radius: 1px;
    box-sizing: border-box;
}

/*------under_menu-------*/
div.under_menu{
    margin-bottom: 30px;
}
div.under_menu a{
    text-decoration: none;
}
div.under_menu a:hover{
	-webkit-opacity: 1;
	-moz-opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	opacity: 1;
}
li.u_spcategory01{
    background-color: #01A8A7;
    border-bottom: 1px solid #fff;
    background-image: url(../images/arrow_03.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
}
li.u_spcategory01 a{
    text-align: left;
    padding: 10px;
    line-height: 1.2;
    color: #fff;
    display: block;
}

li.u_spcategory02{
    background-image: url(../images/arrow_02.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-color: #F4FFFF;
}
li.u_spcategory02 a{
    text-align: left;
    border-bottom: 1px solid #C6E7EA;
    padding: 8px 10px;
    color: #333;
    display: block;
}
li.u_spcategory02 span.u_sp_txt01{
    display: inline-block;
    background-color: #01A8A7;
    color: #fff;
    margin: 0 5px 5px 0;
    padding: 0.5px 8.5px;
    border: 1px solid #01A8A7;
    border-radius: 1px;
    box-sizing: border-box;
}
/*--------------------
2019/12/11 追加
--------------------*/
.dotted-list li{
	padding-left: 20px;
	position: relative;
}
.dotted-list li::before{
	content: '・';
    padding-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
}
.text-link{
	color: #CB1773;
}