@charset "utf-8";


/* #########################################################

			PC(1025px～)

######################################################### */

/* ========================================================
			BASE STYLE			
======================================================== */

* {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-style: normal;
  list-style: none;
  box-sizing:border-box;
 }
*:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6, h7, li, ul, p, dd, dt {
  text-align: justify;
  text-justify: inter-ideograph;
  font-size: 14px;
  line-height: 1.8em;
  color: #000;
  border: 0;
 }

img {
  width: 100%;
  vertical-align: bottom;
  border: 0;
 }

body {
  width: 100%;
  height: 100%;
  font-family: 'Noto Sans JP', sans-serif;
 }

body { -webkit-text-size-adjust: none; }

a {
  color: #991e2e;
  outline:none;
  text-decoration: none;
 }
a:visited {
  color: #991e2e;
 }
a:hover {
  color: #991e2e;
  text-decoration: underline;
 }


.forPC {
  display: block;
 }
.forTabPC {
  display: block;
 }
.forTab {
  display: none;
 }
.forTabSP {
  display: none;
 }
.forSP {
  display: none;
 }


.noWrap {white-space: nowrap;}
.kaigyo {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
 }
.kaigyo {
  margin-left: 1em;
  text-indent: -1em;
 }
.kaigyo2 {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
 }

.fontBold {font-weight:bold;}
.fontSmall {
  font-size: 0.8em;
 }
.fontBig {
  font-size: 1.2em;
 }

.chushaku {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
  font-size: 10px;
  line-height: 1.5em;
 }

.colorBlack {
  color: #000;
 }
.colorWhite {
  color: #fff;
 }
.colorRed {
  color: #991e2e;
 }

.bgRed {
  background-color: #991e2e;
 }
.bgBlack {
  background-color: #000;
 }
.bgLightGray {
  background-color: #f3f1ee;
 }

.bgBlackAlpha {
  background-color: rgba(0,0,0,0.8);
 }
.bgWhiteAlpha {
  background-color: rgba(255,255,255,0.8);
 }

.textCenter {
  text-align: center;
 }
.catchText {
  line-height: 1.8em;
  text-align: center;
 }
.single_img-w50 {
  margin: 0 auto;
  width: 50%;
 }
.single_img-w85 {
  margin: 0 auto;
  width: 85%;
 }

.rowReverse {
  flex-direction: row-reverse;
 }

.FullLink {
  position:relative;
 }

.FullLink:hover{
  opacity: 1.0;
 }

.FullLink .fl{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 50;
 }

.fadeEffect {
  transition: all 0.3s;
 }
.fadeEffect:hover {
  opacity: 0.6;
 }

.zoomEffect {
  max-width: 100%;
  overflow: hidden;
 }
.zoomEffect img{
  height: auto;
  transition: transform .6s ease;
 }
.zoomEffect:hover img{
  transform: scale(1.1);
 }


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

	アンダーライン

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


.underLine{
  position: relative;
 }

.underLine:before,
.underLine:after{
  position: absolute;
  top: 22px;
  content: "";
  display: inline-block;
  width: 0;
  height: 1px; 
  background: #45403f;
  transition: 0.3s;
 }

.underLine:before{
  left: 50%;
 }

.underLine:after{
  right: 50%;
 }

.underLine:hover:before,
.underLine:hover:after{
  width: 50%;
 }

/* google icon 天地調整 */
.material-symbols-outlined {
  display: inline-flex;
  vertical-align: middle;
 }


/* #########################################################

		TABLET(429～1024px)

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

/* ========================================================
			BASE STYLE			
======================================================== */

h1, h2, h3, h4, h5, h6, h7, li, ul, p, dd, dt {
  font-size: 14px;
 }

.forPC {
  display: none;
 }
.forTabPC {
  display: block;
 }
.forTab {
  display: block;
 }
.forTabSP {
  display: block;
 }
.forSP {
  display: none;
 }


.single_img-w50 {
  margin: 0 auto;
  width: 75%;
 }
.single_img-w85 {
  margin: 0 auto;
  width: 75%;
 }




} /* tablet responsive end */





/* #########################################################

		SP(0～428px)

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

/* ========================================================
			BASE STYLE			
======================================================== */

h1, h2, h3, h4, h5, h6, h7, li, ul, p, dd, dt {
  font-size: 12px;
 }

.forPC {
  display: none;
 }
.forTabPC {
  display: none;
 }
.forTab {
  display: none;
 }
.forTabSP {
  display: block;
 }
.forSP {
  display: block;
 }

.single_img-w50 {
  margin: 0 auto;
  width: 90%;
 }
.single_img-w85 {
  margin: 0 auto;
  width: 90%;
 }

} /* smart phone responsive end */

